1

次のタスク(アクティビティ)を送信しました。

    @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    moveTaskToBack(true);
}

しかし、ウィジェットのsetOnClickPendingIntentで前面に表示する必要があります。

4

2 に答える 2

2

次のように、アプリケーションのメイン(ルート)アクティビティを開始するだけです。

Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);

アクティビティがすでにタスクで実行されている場合、これにより、そのタスクがフォアグラウンドになります(アクティビティの新しいインスタンスは作成されません)。アクティビティがまだ実行されていない場合、これにより、ルートでそのアクティビティを使用して新しいタスクが開始されます。

于 2012-07-07T09:27:45.993 に答える
1

私の状況では、FLAG_ACTIVITY_NEW_TASKは役に立ちません。アクティビティはタスクに存在しますが、アクティビティを再作成します。

ただし、シングルタスク起動モードは適切に機能します。

于 2013-02-13T12:11:49.130 に答える