Нужно ли использовать FLAG _ACTIVITY _NEW _TASK в PendingIntent уведомления?

Я использую Notificationнекоторое время, и вчера я заметил, что документация PendingIntentговорит, что намерение, которое передается вPendingIntent.getActivity()метод должен иметь набор FLAG_ACTIVITY_NEW_TASK:

Note that the activity will be started outside of the context of an existing activity, so you must use the Intent.FLAG_ACTIVITY_NEW_TASK launch flag in the Intent.

Однако я никогда не устанавливал этот флаг при использовании Notifications, и до сих пор не испытывал никаких проблем. Я видел несколько примеров Notification, где FLAG_ACTIVITY_NEW_TASKне установлен для Intent, на который ссылается PendingIntent. В частности, в официальном руководстве показан фрагмент ниже:

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 без установки этого флага?

6
задан odracirnumira 17 August 2012 в 06:55
поделиться