Notification私はしばらく s を使用してきましたが、昨日PendingIntent、メソッドに渡されるインテントには次のセットPendingIntent.getActivity()が必要であるとのドキュメントに記載されていることに気付きました。FLAG_ACTIVITY_NEW_TASK
アクティビティは既存のアクティビティのコンテキスト外で開始されるため、インテントで Intent.FLAG_ACTIVITY_NEW_TASK 起動フラグを使用する必要があることに注意してください。
ただし、s を使用するときにこのフラグを設定したことはNotificationありませんが、これまでのところ問題は発生していません。が参照しているに対して が設定されていないNotificationの例をいくつか見てきました。特に、公式ガイドには以下のスニペットが示されています。FLAG_ACTIVITY_NEW_TASKIntentPendingIntent
Context context = getApplicationContext();
CharSequence contentTitle = "My notification";
CharSequence contentText = "Hello World!";
Intent notificationIntent = new Intent(this, MyClass.class);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
ご覧のとおり、彼らはFLAG_ACTIVITY_NEW_TASKフラグを立てていません。だから私の質問は、をFLAG_ACTIVITY_NEW_TASK使用するときに常にフラグを設定するPendingIntent.getActivity()必要がありますか、または省略できるシナリオがいくつかありますか? 特に、Notifications を使用する場合、このフラグを設定せずに Intent を使用できますか?