Одно уведомление Несколько назначений Когда приложение убито - PullRequest
0 голосов
/ 19 октября 2018

Я хочу начать 2 действия с 1 уведомления . На самом деле я хочу открыть действие, когда клиент нажимает на уведомление. Затем, если клиент нажимает кнопку назад, я хочу открыть второе действие (основное действие).флаг нескольких задач не работает.Я использую OneSignal для уведомлений. Пожалуйста, помогите.

  Intent intent = new Intent(context2, ApplicationMakeActivity.class);
    intent.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_MULTIPLE_TASK);                                                      
    context2.startActivity(intent);

Этот блок кода работает для моих ожиданий, если приложение находится в фоновом режиме в API 21. Если приложение находится в состоянии уничтожения, оно просто открывается, мой ApplicationMakeActivity.class (для API 26 он работает так же, как и мои ожидания)

PS: Запуск нескольких действий из Уведомления через PendingIntent это не работает для меня

PS2: добавление android:launchMode="singleTop" к моему манифесту тоже не работает (я добавил его в мои ApplicationMakeActivity.class и MainActivity.class теги)

PS3: <meta-data android:name="com.onesignal.NotificationOpened.DEFAULT" android:value="DISABLE" />' is added already in manifest

1 Ответ

0 голосов
/ 19 октября 2018

Добавьте android:parentActivityName=".MainActivity" к ApplicationMakeActivity в AndroidManifest

И добавьте нижние строки при создании уведомления

intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
stackBuilder.addNextIntentWithParentStack(intent);

PendingIntent pendingIntent = stackBuilder.getPendingIntent(new Random().nextInt(), PendingIntent.FLAG_UPDATE_CURRENT);

Используйте setContentIntent(pendingIntent) в Notification.Builder.Это работает.

...