私はAndroidアプリを設計しています。
私の目的は、アプリがバックグラウンドで強制終了された場合、およびユーザーがアプリを再起動した場合に、アプリを再開するオプションが必要になることです。
現在、私のonStart
関数は2つのシナリオで呼び出されます。
- 初めて活動を開始したとき
- 殺害後に活動が始まったとしても。
onStart()
アプリが最初から起動したのか、以前の状態から再開しているのかを確認したいのですが。
私はAndroidアプリを設計しています。
私の目的は、アプリがバックグラウンドで強制終了された場合、およびユーザーがアプリを再起動した場合に、アプリを再開するオプションが必要になることです。
現在、私のonStart
関数は2つのシナリオで呼び出されます。
onStart()
アプリが最初から起動したのか、以前の状態から再開しているのかを確認したいのですが。
このようなタスクには共有設定を使用できます。
onStop()関数で、次のような共有設定にフラグを設定します。
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
editor.putString("killed", "yes");
onStart()で、設定を取得し、次のように確認します。
SharedPreferences prefs = getPreferences(MODE_PRIVATE);
String flag = prefs.getString("killed", null);
if(flag!=null && flag.equals("yes")
{
//activity is resumed
}
else
{
//activity is started from scratch
}
共有設定の詳細については、こちらの公式ドキュメントをご覧ください:http: //developer.android.com/guide/topics/data/data-storage.html#pref
何ができるかonDestroyメソッド内に共有設定変数を作成する
そして、変数が存在するかどうかを確認します。前の状態に戻ると、変数は存在しません。アクティビティが破棄されている場合にのみ存在します。