gpt4 book ai didi

从后台删除应用程序时,Android FCM 未收到通知

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:51:09 26 4
gpt4 key购买 nike

手机是OnePlus3T。 Oxygen OS 版本为 4.1.6。当应用程序在前台在后台但在内存中时,应用程序会收到通知。但是当应用程序不在内存中时不会收到通知,即从内存中刷出。即使应用程序不在内存中,也会在具有 Android 操作系统版本 4.2、5.1.1、6.0.1、7.1.1 Lineage OS 的其他设备上收到通知。

请提出一些建议。提前致谢。

最佳答案

我也遇到了同样的问题。

解决这个问题的两种方法

1- Using notification payload

可以使用data 标签或notification 标签发送通知负载。

使用data标签

 "data" {
"title": "welcome",
"description" :"to your app" ,
"image" :"image_url",
"deeplink" :"deeplink",
- -
}

它将触发 FirebaseMessagingService onMessageReceived 方法。当应用程序处于后台时,它无法在某些设备上运行。

使用通知

 "notification" {
"title":"title",
"description" : "description",
"click_action" :"activity to be open"
..
}

这是处理 android 系统尝试显示通知,这种情况下,您的 FirebaseMessagingService 的 onMessageReceived 方法将不会调用。即使应用程序在后台,也会显示通知。这样做的一个缺点是 - 您无法自定义通知,因为它由 Android 系统处理。 more info

2- Enable Auto start in device setting

当您使用 data 发送通知并且应用被终止时,将不会显示通知。如果你观察日志猫,你会看到

W/GCM-DMM: broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE pkg=com.cabipool (has extras) }

可以解决在oneplus 3设置-->应用程序-->点击齿轮-->最后一个选项应用程序选择应用程序自动启动-->找到你的应用程序启用开关

Vivo、Oppo、小米、Asus、一加 3 等大多数设备都存在这个问题。

根据设备制造商启用应用自动启动的步骤。

更新:

OnePlus 3 和 Android 8.0 自动启动选项被删除,所以现在您可以转到设置>电池>电池优化>(左上角的三点菜单)高级优化>关闭高级优化。

关于从后台删除应用程序时,Android FCM 未收到通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44847835/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com