我必须向使用Unity开发的应用添加推送通知。
我遵循了本教程:https://firebase.google.com/docs/cloud-messaging/unity/client
然后我使用Firebase仪表板发送通知。
在某些设备上,它运行良好:安装应用程序后,设备会收到通知。
在其他一些设备上,它在一开始并不起作用,但终于在几个小时后却什么也没起作用,我也不明白为什么。
在其他两个设备上,它根本不起作用。我在这些设备上安装了该应用程序,然后通过Firebase仪表板发送了通知,但是这两个设备均未收到通知(尽管所有其他设备都可以)。我在两个安装了完全相同的应用程序。两者都已为已安装的应用程序启用Internet连接并启用了通知。
它从一开始就在Moto E4 Plus(Android 7.1.1)上运行。
安装几个小时后,它可以在以下设备上运行:Galaxy S6(Android 7.0),Galaxy S7(Android 8.0.0),Galaxy S7 Edge(Android 8.0.0),Galaxy S8 +(Android 8.0.0)等这些iPhone:iPhone 5S(iOS 12.1.2),iPhone 6S(12.1.2和12.1.1)。
但是它不适用于:Sony XPeria Z1(Android 5.1.1)和Nexus 5X(Android 8.0.0)。
我在Android Oreo上找到了一些有关通知问题的答案,但就我而言,这似乎不是问题,因为它可以在装有Android 8的多种设备上运行,而在Android 5.1.1上不工作。
FCM notification message are not received in android Oreo version? FCM notification not receiving
minTarget版本为Android 5(在我的Unity项目中指定)。
我检查了logcat(使用“ adb logcat -s Unity”),可以确认所有设备都从firebase获得了令牌(因此一切似乎都还可以)。
问题的根源是什么?为什么有时在应用程序安装后仅几个小时就收到推送通知,而在其他设备上,应用程序在设备上安装后立即生效?