2

Nexus 7 と Galaxy S2 で問題なく動作するアプリを作成しています。今、Galaxy S3 でテストしましたが、どういうわけか、メモリ管理ははるかに積極的です。ホームボタンを押して数分待つと、OnCreate が再度呼び出されるので、プロセスが強制終了されたと思います。しかし、プロセスが強制終了された場合、この特定のアプリケーションでは、別のアクティビティを開始したいと考えています。

onStop と onPause をオーバーライドすることもできますが、アクティビティのライフサイクルを見ると、望ましくない動作が発生する可能性があります。プロセスが強制終了されていない場合は、アクティビティに戻っても問題ありません。

これに対する解決策はありますか?

4

2 に答える 2

2

システムが一部のリソースを解放する必要があると判断した場合、ホーム ボタンを押すと、アクティビティを破棄できます。

これは、アクティビティが終了している (finish() が呼び出された) ため、またはシステムがスペースを節約するためにアクティビティのこのインスタンスを一時的に破棄しているために発生する可能性があります。これら 2 つのシナリオは、isFinishing() メソッドで区別できます。

于 2013-04-19T11:35:47.947 に答える