ドキュメントによると、Android OS はバックスタックの後部でアクティビティを強制終了できます。
たとえば、アプリがあり、メイン アクティビティ (アクティビティ A と呼びましょう) を開いたとします。この public アクティビティ クラスでは、public static 変数 ("foo" と呼びましょう) を宣言して初期化します。アクティビティ A の onCreate() メソッドで、「foo」の値を変更します。アクティビティ A から、ユーザーはアプリ内でアクティビティ B という別のアクティビティを開始します。変数「foo」はアクティビティ B で使用されます。ユーザーが他のアプリの他のアクティビティに移動した後、アクティビティ B は一時停止します。最終的に、メモリ不足が発生した後、アクティビティ A、次にアクティビティ B が強制終了される可能性があります。ユーザーがアプリに戻った後、アクティビティ B を再起動 (実際には「再作成」) します。
何が起こるのですか:
この時点での変数「foo」には、アクティビティ A の onCreate() メソッドが実行されたときに設定された値が含まれますか?
変数「foo」が存在しませんか?
変数「foo」は存在しますが、現在は初期化された値であり、アクティビティ A の onCreate() メソッドで設定された値ではありませんか?