簡単な質問:finish()
がonDestroy()
を呼び出すことを確認できますか?これに関する確認は見つかりませんでした。
簡単な質問:finish()がonDestroy()を呼び出すことを確認できますか?
まず、この答えは、AndroidのActivity
クラスとそのfinish()
メソッドおよびonDestroy()
ライフサイクルメソッドを参照していることを前提としています。
第二に、それはあなたの「sure」の定義に依存します:
finish()
への呼び出しをトリガーするものとは無関係の理由で、プロセスはonDestroy()
とfinish()
の間で終了する可能性があります
デバイスの製造元またはROM modderは、finish()
とonDestroy()
の間の接続を切断するような厄介な変更を導入する可能性があります
finish()
とonDestroy()
の間でバッテリーが切れる可能性があります
等。
第三に、finish()
はcallonDestroy()
をしません。 ソースコード を読むことでそれを知ることができます。 finish()
通常、onDestroy()
への呼び出しをトリガーします。
一般的に、finish()
は最終的にonDestroy()
が呼び出されます。
いいえわかりません!
Finish()を呼び出すと、通常、アクティビティライフサイクルに従ってonDestroy()がトリガーされますが、これに依存することはできません。特にデータを保存するためではありません。 ドキュメント 明確に言う
do not count on this method being called as a place for saving data!