Androidアクティビティのライフサイクルとは何ですか?



ユーザーがアプリ内を移動すると、アプリ内のアクティビティインスタンスはライフサイクルのさまざまな段階を経て移行します。この記事では、Androidアクティビティのライフサイクルステージについて説明します。

Androidは、多くのタスクに役立つオープンソースのオペレーティングシステムです。開始または開くとき 、さまざまな状態が発生し、Androidアクティビティライフサイクルと呼ばれます。

Javaのオブジェクトの配列

この記事では、以下のトピックについて説明します。





始めましょう!

Androidの紹介

アンドロイド Linuxをベースにしたオープンソースのオペレーティングシステムです。 スマートフォン(Android OSをサポートするタッチスクリーンデバイス)などのモバイルデバイス用のインターフェイス。



Android-Androidアクティビティのライフサイクル-Edureka 複数のAPIで構成されていますGPSなどのロケーションベースのサービスをサポートします。またカメラとマイクを使用して再生または記録を実行するためのマルチメディアハードウェア制御を広範囲にサポートしています。マルチタスクをサポートし、あるタスクウィンドウから別のタスクウィンドウに移動でき、複数のアプリケーションを同時に実行できます。アプリケーションコンポーネントを再利用し、ネイティブアプリケーションを置き換える機会が得られます。

これで、さらに進んで、Androidアクティビティのライフサイクルを理解しましょう。

Androidアクティビティのライフサイクルとは何ですか?

ユーザーがアプリ内を移動すると、 アクティビティ アプリ内のインスタンスは、ライフサイクルのさまざまな段階を経て移行します。 Activityクラスは、システムがアクティビティを作成、停止、再開する、またはアクティビティが存在するプロセスを破棄するなど、状態が変更されたことをアクティビティが認識できるようにする多数のコールバックを提供します。



次に、ライフサイクルメソッドとコールバックを使用して、Androidアクティビティのライフサイクルをより詳細に説明します。

ライフサイクルメソッドとコールバック

一般に、アクティビティライフサイクルには7つのコールバックメソッドがあります。

  1. onCreate()
  2. onStart()
  3. onResume()
  4. onPause()
  5. onStop()
  6. onRestart()
  7. onDestroy()

それでは、Androidアクティビティのライフサイクルメソッドとコールバックの詳細を見ていきましょう。下の図を見て、ライフサイクルを理解してください。

プログラムは、さまざまなプログラミング言語のmain()関数から開始されることに注意する必要があります。同様に、Androidは、アクティビティ内でプログラムを開始します。 onCreate() コールバックメソッド。上記のアクティビティライフサイクル図に示されているさまざまなメソッドで、アクティビティを開始してから破棄する一連のコールバックメソッドがあります。

1. onCreate()この状態で、アクティビティが作成されます。

2. onStart(): このコールバックメソッドは、アクティビティがユーザーに表示されるようになると呼び出されます。

3. onResume()アクティビティはフォアグラウンドにあり、ユーザーはそれを操作できます。

4. onPause()アクティビティは、別のアクティビティによって部分的に隠されています。フォアグラウンドにあるもう1つのアクティビティは、半透明です。

5. onStop()アクティビティは完全に非表示であり、ユーザーには表示されません。

6. onRestart(): 停止状態から、アクティビティが戻ってユーザーと対話するか、アクティビティの実行が終了して終了します。アクティビティが戻ってくると、システムはを呼び出しますonRestart()

7. onDestroy(): アクティビティは破棄され、メモリから削除されます。

したがって、これらはアクティビティライフサイクルのさまざまな方法です。それでは、ライフサイクルの方法と状態が発生する状況を見てみましょう。

  • アプリを開くと、以下の状態になります。

onCreate()–> onStart()–> onResume()

  • 戻るボタンを押してアプリを終了すると

    onPaused()-> onStop()-> onDestory()

  • ホームボタンを押すと

    onPaused()–> onStop()

  • ホームボタンを押した後、最近のタスクリストからアプリを開いたとき

    onRestart()–> onStart()–> onResume()

  • ダイアログまたはダイアログから戻るボタンを閉じた後

    onResume()

  • 電話が鳴っていて、ユーザーがアプリを使用している場合

    onPause()–> onResume()

  • 通話終了後

    onResume()

  • 電話スクリーンがオフのとき

    onPaused()–> onStop()

  • 電話スクリーンが再びオンになったとき

    onRestart()–> onStart()–> onResume()

したがって、これらは、アプリがさまざまな状態を通過する状況の一部です。次に、以下の例を使用してこれを実装する方法を見てみましょう。

デモ:アクティビティライフサイクルの実装

ステップ1: まず、どちらかを使用して簡単なAndroidアプリを作成する必要があります または Kotlinプログラミング言語 。このデモでは、Javaと比較してKotlinのコード行数が少ないため、Kotlinプログラミング言語を使用しています。 Javaを使用してAndroidアプリを作成する方法を知りたい場合は、以下を参照してください。 。また、Kotlinを使用してAndroidアプリケーションを作成する場合は、次の記事を確認してください。 。

ステップ2: アプリをビルドしたら、を構成する必要があります MainActivity.ktクラス ファイルを作成し、コールバックメソッドをオーバーライドします。以下のコードを見て、これをより広い範囲で理解しましょう。

パッケージcom.example.activitycycleimport androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.Toast class MainActivity:AppCompatActivity(){override fun onCreate(savedInstanceState:Bundle?){super .onCreate(savedInstanceState)setContentView(R.layout.activity_main)print( '***アプリの状態:OnCreate *** n')Toast.makeText(getApplicationContext()、 'アプリの状態:OnCreate'、Toast.LENGTH_LONG).show ()} override fun onStart(){super.onStart()print( '***アプリの状態:OnStart *** n')Toast.makeText(getApplicationContext()、 'アプリの状態:OnStart'、Toast.LENGTH_LONG)。 show()} override fun onResume(){super.onResume()print( '***アプリの状態:OnResume *** n')Toast.makeText(getApplicationContext()、 'アプリの状態:OnResume'、Toast.LENGTH_LONG) .show()} override fun onStop(){super.onStop()print( '*** App state:OnStop *** n')Toast.makeText(getApplicationContext()、 'App state:OnStop'、Toast.LENGTH_LONG ).show()}オーバーライドfun onPause(){super.onPause()print( '*** App state:OnPause *** n ')Toast.makeText(getApplicationContext()、' App state:OnPause '、Toast.LENGTH_LONG).show()} override fun onRestart(){super.onRestart()print(' ***アプリの状態:OnReStart *** n ')Toast.makeText(getApplicationContext()、'アプリの状態:OnRestart '、Toast.LENGTH_LONG).show()}オーバーライドfun onDestroy(){super.onDestroy()print(' ** *アプリの状態:OnDestroy *** n ')Toast.makeText(getApplicationContext()、'アプリの状態:OnDestroy '、Toast.LENGTH_LONG).show()}}

基本的に、上記の例では、すべてのメソッドをオーバーライドして状態を出力しています。また、私は使用しましたToast.makeText()、アプリ自体にライフサイクルメソッドを表示します。アプリケーションがさまざまな状態を経るたびに、アプリ自体のメソッドを呼び出して表示します。これがAndroidアクティビティのライフサイクルの仕組みです。 Androidの基礎を知りたい場合は、この記事をチェックしてください。

これで、Androidアクティビティのライフサイクルに関するこの記事は終わりです。この記事であなたと共有されているすべてのことを明確にしてください。

Kotlin Androidチュートリアルを完了したので、Edurekaの 質問がありますか? 「Androidアクティビティライフサイクル」ブログセクションのコメントにその旨を記載してください。折り返しご連絡いたします。