Cordova FCM 工作然后突然停止工作

rol*_*ger 5 cordova firebase firebase-cloud-messaging cordova-plugin-fcm

这真让我抓狂。几周前,我添加了对 FCM 推送通知的支持并使其全部正常工作。上周我注意到(通过我的测试应用程序)它已经停止工作。通过一个漫长而复杂的过程,我设法让它重新开始工作。今天早上...安装了我的测试应用程序,设备检索了一个 pushID,将该 pushID 保存到我的服务器,然后成功地将推送通知发送到我的设备。我直接从我的服务器和 FCM 控制台通知部分做了一些 - 两者都在工作。

太好了...不要碰任何东西...继续下一个项目进行编码。

我正在使用应用程序注册功能...所以我卸载我的应用程序并重新安装,此时应用程序收到一个新的 pushID...与上述过程相同,它将 pushID 保存到我的服务器。但这一次消息已发送但从未到达。我再试一次 - 同样的事情。消息已成功发送...但它永远不会到达。

object(stdClass)#4 (5) { ["multicast_id"]=> int(7727871665417217028) ["success"]=> int(1) ["failure"]=> int(0) ["canonical_ids"]=> int(0) ["results"]=> array(1) { [0]=> object(stdClass)#5 (1) { ["message_id"]=> string(35) "0:1498579447399689%94806eb594806eb5" } } }

沮丧我离开我的房子,去跑一些差事,大约 2.5 小时后回来再次测试......这次消息甚至无法发送。

object(stdClass)#4 (5) { ["multicast_id"]=> int(4811433973238781554) ["success"]=> int(0) ["failure"]=> int(1) ["canonical_ids"]=> int(0) ["results"]=> array(1) { [0]=> object(stdClass)#5 (1) { ["error"]=> string(13) "NotRegistered" } } }

我在这里缺少什么?它从完全正常工作......到成功发送但没有接收......到根本不发送。每个 pushID 是否有某种时间/日期戳到期?pushID 在 FCM Cloud 中注册后才能使用是否需要一些时间?它们只能使用一次吗?

每次我启动我的应用程序时,它都会检查设备的 pushID 是否已更改,每次(简单的停止/启动...不是完全卸载/重新安装)我都可以看到 pushID 是相同的 - 它没有改变了。

在这个上拉我的头发。

PS:我实际上使用的是phonegap-plugin-push插件,而不是cordova-plugin-fcm. 我还没有足够高的声誉来创建新的标签词。