3

重複の可能性:
Android: すべてのアクティビティでアプリケーションを強制終了する方法は?

アプリがクラッシュした場合に備えて、アプリケーション全体を強制終了する (プロセスをシャットダウンするなど) 方法を探しています。これを行う理由は、ランタイム データの多くが静的クラスに格納されているため、アプリがクラッシュすると、このクラスが強制終了されるためです。

Android の哲学に関する関連する質問 (たとえば、アプリを強制終了しないことなど) を見てきましたが、今のところ、アプリケーションを強制終了する必要があります。これどうやってするの?

私のアプリには複数のアクティビティがあり、次のことを試しました。以前のアクティビティを復元するだけです。

System.exit(0)


 ActivityManager servMng
 servMng = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
 servMng.killBackgroundProcesses(<my package name>);


android.os.Process.sendSignal(android.os.Process.myPid(),
android.os.Process.SIGNAL_KILL);

android.os.Process.killProcess(android.os.Process.myPid());

4

2 に答える 2

7
android.os.Process.killProcess(android.os.Process.myPid());

@Thirumal の功績も重複する可能性があります。すべてのアクティビティでアプリケーションを強制終了する方法は?

于 2012-09-08T05:26:49.470 に答える
0

AFAIK androidの哲学では、アプリ全体をメモリから強制終了することはできません.Androidは、その後のアクセスを高速化するためにアプリをメモリに保持するか、フラッシュするかを決定できます。アクティビティ、サービスなどの個々のコンポーネントに対処する必要があります。適切なタイミングでそれぞれを閉じれば、問題はないはずです。静的変数が必要ない場合は、null にします。

于 2012-09-08T05:31:54.397 に答える