Firebase Cloud Messaging

108
09 июля 2021, 22:50

С помощью Firebase отправляю сообщение на телефон через Cloud Messaging. Все работает. Сообщение отправил, тыкнул на телефоне по нему, открылась программа. Но проблема в том, что надо запустить не стартовую активити, а другую. Везде один и тот же код:

val intent = Intent(this,Testing::class.java)
    val pendingIntent = PendingIntent.getActivity(this,1,intent,PendingIntent.FLAG_UPDATE_CURRENT)
    val builder = NotificationCompat.Builder(this, "MyNotifications")
        .setContentTitle(title)
        .setAutoCancel(true)
        .setContentText(body)
        .setContentIntent(pendingIntent)
    val manager = NotificationManagerCompat.from(this)
    manager.notify(999, builder.build())

К примеру, в этой ситуации есть Testing активити, но открывается первая - MainActivity. Будет ли часть кода, где я создаю pendingIntent или не будет, разницы - нет. Открывается одна и та же активити - MainActivity. Что сделать, чтобы можно было открыть какую-то конкретную активити ?

Answer 1

То что вы описываете, это дефолтное поведение при минимальной интеграции библиотек FCM.
Теперь надо идти дальше и расширить FirebaseMessagingService, добавив свое поведение, как обьясняется здесь:
https://firebase.google.com/docs/cloud-messaging/android/receive

Код библиотеки FCM сам по себе не запускает ничего в вашем приложении.

READ ALSO
Как отправить FormData как параметры GET-запроса?

Как отправить FormData как параметры GET-запроса?

Как сделать так, чтобы поля формы someForm превратились в get-параметры? Есть ли какой-то нормальный способ для этого?

81
Не могу загрузить «props» данные

Не могу загрузить «props» данные

В моем проекте я загружаю данные с этой страницы: http://seo-gmbheu/json/api_sunds

109
Как добавить в уже заполненный двухмерный массив, ещё один объект

Как добавить в уже заполненный двухмерный массив, ещё один объект

Как мне добавить в уже заполненный двухмерный массив ещё один объект?

89