6

System.Exit(0) を試しましたが、必要ではありません。

Androidアプリケーションを安全に破棄してメモリからクリアしようとして
います.Androidアプリケーションを終了してすべてのアプリケーションをメモリからクリアするボタンを作成できますか?

4

5 に答える 5

2

System.exit() を呼び出すのは悪い考えです。強制終了する必要があるすべてのアクティビティで、finish() を呼び出すだけです。これを行うための良い解決策は次のとおりです: https://stackoverflow.com/a/5453228/1369222

基本的な考え方は、アプリのすべてのアクティビティにブロードキャスト レシーバーを追加することです。このアクティビティは、特定の「アクティビティを殺す」インテントが発生したときに自動的に終了します。

于 2013-06-26T06:37:08.700 に答える
2

finish() を呼び出すと、アプリケーション全体ではなく、現在のアクティビティのみが終了します。ただし、これには回避策があります。

アクティビティを開始するたびに、startActivityForResult(...) を使用して開始します。アプリ全体を閉じたい場合は、次のようにします。

setResult(RESULT_CLOSE_ALL);
finish();

次に、すべてのアクティビティの onActivityResult(...) コールバックを定義して、アクティビティが RESULT_CLOSE_ALL 値で返されたときに、finish() も呼び出すようにします。

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    switch(resultCode)
    {
    case RESULT_CLOSE_ALL:
        setResult(RESULT_CLOSE_ALL);
        finish();
    }
    super.onActivityResult(requestCode, resultCode, data);
}

これにより、カスケード効果が発生し、すべてのアクティビティが閉じられます。

于 2013-06-26T06:47:41.283 に答える
1

Android には、アプリ内に 1 つのエントリ ポイントがありません。ガイドラインに従って設計する必要があります。リンク: http://developer.android.com/design/patterns/navigation.html

Androidアプリケーションを終了し、すべてのアプリケーションをメモリからクリアするボタンを作成できますか?

いいえ。スタックからすべてのアクティビティを削除する必要があります (たとえば、finish() を使用します)。

于 2013-06-26T06:40:08.950 に答える
0

電話しないでくださいSystem.exit(0)

コモンズウェアによる回答を確認する

アプリケーションを終了することは眉をひそめていますか? .

アクションバーを使用できます。アプリのアイコンをクリックすると、アプリのホーム画面に移動し、ホーム画面の戻るボタンをクリックしてアプリを終了します。

http://developer.android.com/guide/topics/ui/actionbar.html

以下のリンクを確認すると、スクリーン ショットでナビゲーションが明確に表示されます。

http://developer.android.com/design/patterns/navigation.html

于 2013-06-26T06:37:24.513 に答える
-1

System.exit(0)より良いアプローチではありません。代わりに、finish()すべてのアクティビティを呼び出すと、activityスタックから削除されます。

于 2013-06-26T06:34:08.487 に答える