Можно установить более одного намерения для запуска, когда, например, пользователь нажимает уведомление.Как установить два намерения в ожидающем намерения
Позвольте мне объяснить мою конкретную проблему:
У меня есть приложение с уведомлениями. Каждое уведомление открывает другое действие (с разными дополнительными функциями).
Теперь я хочу извлечь информацию об использовании уведомлений. Итак, каждый раз, когда уведомление открывается, я хотел бы запустить Сервис с некоторыми дополнительными функциями.
Я хотел бы реализовать это, не изменяя существующие действия, поскольку они не «виновны» в изменении.
В идеале псевдокод может быть что-то вроде этого:
Intent originalActivityIntent=...;
Intent notificationsAnalyticsIntent=getRegisterNotificationClick(notificationId,username);
PendingIntent pi= PendingIntent.multiple(
context,
originalActivityIntent,
notificationsAnalyticsIntent)
Имея оба намерения запущен, когда уведомление будет нажата.
Написание какого-либо сервиса/широковещательного приемника может быть довольно сложным, так как мне нужно будет обрабатывать различные параметры для каждого действия.
Любые идеи о том, как сохранить это в чистоте?
Спасибо за ваш ответ, я не совершенным, но действительно для меня решение, проверьте ответ в теме. – Addev
Это довольно приятное решение, но может иметь некоторые проблемы с производительностью (откройте еще одно избыточное намерение) и, возможно, некоторые проблемы с пользовательским интерфейсом (можно увидеть «экран активности аналитики») – shem