Android接入Firebase推送不执行onMessageReceived方法

参考:https://firebase.google.com/docs/cloud-messaging/android/receive
参考:https://firebase.google.com/docs/cloud-messaging/http-server-ref

Android接入Firebase推送,当应用处于后台状态时不执行FirebaseMessagingService的onMessageReceived方法

FCM处理后台应用中消息的机制:

当您的应用位于后台时,Android 会将通知消息转发至系统托盘。默认情况下,用户点击通知时将打开应用启动组件。

这会包括同时包含通知和数据负载的消息。在这些情况下,通知将传递至设备的系统托盘,数据负载将在应用启动组件 Activity 的 Intent 的 extra 中传递。

如果希望打开您的应用和执行特定操作,请在通知负载中设置 click_action,然后将其映射至您想启动的 Activity 中的 Intent 过滤器。例如,将 click_action 设为 FCM_OPEN_ORDER_LIST_ACTIVITY 会触发类似于如下的 Intent 过滤器:

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

服务端推送notification参数配置click_action字段

var payload = {
  //to: token,
  to: '/topics/activity',
  notification: {
    body: "通知内容",
    title: "Firebase Cloud Message",
    data: {'type': 'test', 'path': '/order_list'},
    click_action: 'FCM_OPEN_ORDER_LIST_ACTIVITY'
  },
  data: {'type': 'test', 'path': '/order_list', 'content': 'AppBlog.CN'}
}

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/18/android-access-firebase-push-does-not-execute-onmessage-received-method/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
Android接入Firebase推送不执行onMessageReceived方法
参考:https://firebase.google.com/docs/cloud-messaging/android/receive 参考:https://firebase.google.com/docs/cloud-messaging/http-server-ref Androi……
<<上一篇
下一篇>>
文章目录
关闭
目 录