0

ホームアクティビティのアプリケーションで終了機能を適用しようとしています。System.Exit(0);またはfinish();またはなどのターゲットを実行する方法をいくつか試しましandroid.os.Process.killProcess(android.os.Process.myPid());super.onDestroy();たが、問題は、ホームアクティビティに戻ってアプリケーションを終了するよりも、ホームから別のアクティビティに移動した場合です。以前ナビゲートしたアクティビティ

4

3 に答える 3

0

これを行うには、broadcastreceiver を使用する必要があります。たとえば、ユーザーが終了ボタンをタップすると、次のようなインテントを送信する必要があります

Intent intent = new Intent();
intent.setAction(ACTION_LOGOUT);
context.sendBroadcast(intent); 

そして、使用するbaseActivity(またはプロジェクトのすべてのアクティビティ)で、次のようなものを使用します

BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
    try {
    String action = intent.getAction();
    if (ACTION_LOGOUT.equals(action)) {
        finish();
    }
}
};

そしてonCreateで:

registerReceiver(mBroadcastReceiver, new IntentFilter(ACTION_LOGOUT));
于 2013-03-28T10:19:07.253 に答える
0

以下のように finish() を呼び出してみてください。したがって、アクティビティのインスタンスがクリアされます。

ActivityB から HomeActivity に戻ったら、finish() を呼び出してみてください

Intent i = new Intent(ActivityB.this, Home.class);
startActivity(i);
finish();

[戻る] ボタン*ストロング テキスト* を押しても、「アプリを強制終了」しません。ユーザーが [戻る] ボタンを押したときに画面に表示されていたアクティビティを終了します。

于 2013-03-28T10:14:56.557 に答える
-1

これを試してアプリを終了してください:)

 finish();
    moveTaskToBack(true);
 System.exit(0);
于 2013-03-28T11:01:29.400 に答える