FCM:我们可以发送这两种类型的通知并在Android应用程序中打开不同的活动吗

FCM:我们可以发送这两种类型的通知并在Android应用程序中打开不同的活动吗,android,firebase,firebase-cloud-messaging,google-cloud-functions,Android,Firebase,Firebase Cloud Messaging,Google Cloud Functions,我正在使用云函数实现FCM通知。在一个应用程序中,我想发送2个通知,无论何时收到通知,应用程序都应该以不同的活动打开 假设A是向bw发送通知的发送者,而B是接收者。 在这里,它成功地发送了通知,并且每当用户单击通知时,它就会转到所需的意图 现在,每当B需要向A发送通知时 *我在应用程序中收到通知,但当我单击通知时,它将转到上面的通知意图页面。但我需要用数据重定向到其他意图* 如果您对此有任何建议,我们将不胜感激。是的,您应该使用 "android":{ "notification"{

我正在使用云函数实现FCM通知。在一个应用程序中,我想发送2个通知,无论何时收到通知,应用程序都应该以不同的活动打开

假设A是向bw发送通知的发送者,而B是接收者。 在这里,它成功地发送了通知,并且每当用户单击通知时,它就会转到所需的意图 现在,每当B需要向A发送通知时 *我在应用程序中收到通知,但当我单击通知时,它将转到上面的通知意图页面。但我需要用数据重定向到其他意图*

如果您对此有任何建议,我们将不胜感激。

是的,您应该使用

"android":{
   "notification"{
     "click_action":"OPEN_ACTIVITY_1"
   }
 }
然后在android应用程序中

<intent-filter>
  <action android:name="OPEN_ACTIVITY_1" />
  <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

如果您在应用程序中接收通知时遇到问题,则应记录每次推送输出:

public class FcmListenerService extends FirebaseMessagingService {

    @Override
    public void onMessageReceived(RemoteMessage remoteMessage) {
        Log.i(TAG, "Message received");
        // Not getting messages here? See why this may be: https://firebase.google.com/support/faq/#fcm-android-background
        Log.i(TAG, "From: " + remoteMessage.getFrom());

        // Check if message contains a data payload.
        if (remoteMessage.getData().size() > 0) {
            Log.i(TAG, "Message data payload: " + remoteMessage.getData());
        }

        // Check if message contains a notification payload.
        if (remoteMessage.getNotification() != null) {
            Log.i(TAG, "Message notification: " + remoteMessage.getNotification());
        }
    }
}

它将只在应用程序位于前台时工作。当你的应用程序在后台时,通知消息会显示在系统托盘中,并且不会调用onMessageReceived-

当我使用这些方法时,它不会打开任何类。这仅在应用程序在后台时有效。如果它在前台,您将需要实现FirebaseMessagingService的扩展并手动处理它。在FirebaseMessagingService中,我已经有一个意图,我将数据传递到该类中。它正在成功地发生。现在的问题是,我需要发送不同的消息,当用户单击通知时,它应该移动到不同的类别。我不确定您想要实现什么。若您向应用程序发送通知,那个么它应该在设备上可见。单击后,用户将移动到某个活动。如果您使用另一个单击操作发送另一个通知,则应将用户移动到另一个活动。我的问题是我没有收到应用程序的通知。但在firebase控制台中,它显示已成功发送通知。我认为在将通知发送到应用程序后将调用该类。为什么我不总是为第二次通知接收通知。我有时会收到通知。我不明白为什么