OS がアクティビティに関する状態とアクティビティに関連するすべての情報 (アクティビティに関するすべての記録) を完全に忘れるのはいつですか?
つまり、バンドルが新しいインスタンスになるのはいつですか?
以下の説明を見つけましたが、この「Killing bundle」ポイントが説明されていませんか?
状態を onCreate(android.os.Bundle) または onRestoreInstanceState(android.os.Bundle) で復元できるように、アクティビティからインスタンスごとの状態を取得するために呼び出されます (このメソッドによって取り込まれた android.os.Bundle は、両方に渡されます)。このメソッドは、アクティビティが強制終了される前に呼び出されるため、後で戻ってきたときにその状態を復元できます。たとえば、アクティビティ B がアクティビティ A の前に起動され、ある時点でアクティビティ A がリソースを再利用するために強制終了された場合、アクティビティ A はこのメソッドを介してユーザー インターフェイスの現在の状態を保存する機会があり、ユーザーが戻ったときにアクティビティ A に対して、ユーザー インターフェースの状態は onCreate(android.os.Bundle) または onRestoreInstanceState(android.os.Bundle) を介して復元できます。このメソッドを、アクティビティがバックグラウンドに置かれているときや破棄の途中で常に呼び出される onPause() や、破棄前に呼び出される onStop() などのアクティビティ ライフサイクル コールバックと混同しないでください。このメソッドではなく onPause() と onStop() が呼び出される例の 1 つは、ユーザーがアクティビティ B からアクティビティ A に戻る場合です。B で onSaveInstanceState(android.os.Bundle) を呼び出す必要はありません。復元されることはないため、システムはそれを呼び出さないようにします。onPause() が呼び出され、onSaveInstanceState(android.os.Bundle) が呼び出されない場合の例は、アクティビティ B がアクティビティ A の前に起動された場合です。システムは、アクティビティ A で onSaveInstanceState(android.os.Bundle) を呼び出さないようにする場合があります。 A のユーザー インターフェイスの状態がそのまま維持されるため、B の有効期間中に t が強制終了されます。デフォルトの実装では、ID を持つ階層内の各ビューで android.view.View.onSaveInstanceState() を呼び出し、現在フォーカスされているビューの ID を保存することにより (すべてのonRestoreInstanceState(android.os.Bundle)) のデフォルト実装によって復元されます。このメソッドをオーバーライドして、個々のビューによってキャプチャされていない追加情報を保存する場合は、デフォルトの実装を呼び出す必要があります。それ以外の場合は、各ビューのすべての状態を自分で保存する準備をしてください。呼び出された場合、このメソッドは onStop() の前に発生します。onPause() の前または後に発生するかどうかについての保証はありません。ID を持つ階層内の各ビューで onSaveInstanceState() を実行し、現在フォーカスされているビューの ID を保存します (これらはすべて onRestoreInstanceState(android.os.Bundle) のデフォルト実装によって復元されます)。このメソッドをオーバーライドして、個々のビューによってキャプチャされていない追加情報を保存する場合は、デフォルトの実装を呼び出す必要があります。それ以外の場合は、各ビューのすべての状態を自分で保存する準備をしてください。呼び出された場合、このメソッドは onStop() の前に発生します。onPause() の前または後に発生するかどうかについての保証はありません。ID を持つ階層内の各ビューで onSaveInstanceState() を実行し、現在フォーカスされているビューの ID を保存します (これらはすべて onRestoreInstanceState(android.os.Bundle) のデフォルト実装によって復元されます)。このメソッドをオーバーライドして、個々のビューによってキャプチャされていない追加情報を保存する場合は、デフォルトの実装を呼び出す必要があります。それ以外の場合は、各ビューのすべての状態を自分で保存する準備をしてください。呼び出された場合、このメソッドは onStop() の前に発生します。onPause() の前または後に発生するかどうかについての保証はありません。デフォルトの実装を呼び出したいと思うでしょう。それ以外の場合は、各ビューのすべての状態を自分で保存する準備をしてください。呼び出された場合、このメソッドは onStop() の前に発生します。onPause() の前または後に発生するかどうかについての保証はありません。デフォルトの実装を呼び出したいと思うでしょう。それ以外の場合は、各ビューのすべての状態を自分で保存する準備をしてください。呼び出された場合、このメソッドは onStop() の前に発生します。onPause() の前または後に発生するかどうかについての保証はありません。