уведомление? в Listener какой - то
Интентом
ты про .setContentIntent?
Да
мм https://developer.android.com/training/notify-user/navigation
не подходит. Он вызывает putExtra до того, как пользователь нажал на уведомление. Из - за этого логика и поломалась
Что?
private fun getIntent(item: DNewsItem): PendingIntent { val intent = Intent(context, BottomTabsActivity::class.java) intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK) intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) intent.putExtra(EXTRA_NEWS_ITEM, item) Timber.e("putExtra ${item.id}") return PendingIntent.getActivity(context, 0 /* Request code */, intent, PendingIntent.FLAG_ONE_SHOT) } вызываеться до того, как пользоваетль нажал на уведомление. Проблема в том, что при этом добавляеться putExtra который я хочу добавлять только когда пользователь именно нажал на уведомление
тебе нужно обработать нажатие на само уведомление, или на баттоны в уведомлении?
баттанов там нет, в этом и проблема
так а зачем тебе создавать интент после нажатия? все данные уже есть в уведомлении. ничего же не поменяется, создастся он до или после
ну а вообще можно в интент впихнуть action и добавить броадкаст ресивер в любом месте по желанию
я сохраняю данные через intent.putExtra(EXTRA_NEWS_ITEM, item). Использую при отркытии приложения. Достаю занчения по EXTRA_NEWS_ITEM. Проблема в том, что если приходит другая новость, я сохраняю и достаю по этому же значению
так для других новостей уже другой интент будет
да, но каким то образом это так не работает (сам не понимаю почему). Если нажмешь на уведомление -> открывает последнее полученное. И на остальные бесмысленно нажимать
скорее всего что-то с флагами. типа CLEAR_TOP или что-то подобное, не помню. Плюс у каждого уведомления свой айди нужно генерить
id у всех разное. Ты советуешь именно в флагах посмотреть?
а что за уведомления вообще? в fcm сервисе вызываются? или как?
fcm silent уведомления, которые я получаю в job затем получаю нужную мне инфу и кидаю пользователю уведомление
а уведомления как и где создаешь? просто то, что ты описываешь, должно работать. разные разные данные в интентах
тут наверное проще код показать?
да. и, думаю, лучше в личку
Обсуждают сегодня