我花了将近3天的时间让PushPlugin与我的应用一起工作。我有以下问题
为此,我必须按照“ https://github.com/kentmw/PushPlugin”的建议修改PushPlugin


当应用暂停或关闭时,pushBundle没有传递给应用。
(这个问题有很多困扰。这个问题也在gitbucket上进行了讨论。
关于如何解决此问题的讨论还不是很清楚。所以我正在写这个问题并回答。)
如果用户清除(未单击)通知,则pushBundle不会传递到应用程序。
我正在做一些其他适合我的应用程序的更改。

最佳答案

因此,根据作者的说法,您每次打开应用程序时都必须在Google GCM服务器上注册应用程序,以便在收到通知时可以使用回调函数进行调用。

因此,我进行了以下更改。

在插件中,更改差异为here

在此更改中,对pushCachedExtras()的查找非常深刻。在什么场合被称为。

对2个文件所做的更改
1. src/android/com/plugin/gcm/PushPlugin.java
2. www/PushNotification.js


在您的代码中,您必须执行类似的操作

if(ALREADY_REGISTERED) {
    pushNotification.setECB(success, error, { "senderID" :"SENDER_ID_HERE","ecb": "window.onNotificationGCM" });
 } else {
    pushNotification.register(success, error, { "senderID" :"SENDER_ID_HERE","ecb": "window.onNotificationGCM" });
 }


每次您必须在应用程序启动时使事件回调可用时,直到那时pushBundle都是"cached"

调试插件

adb logcat -s GCMIntentService:* PushPlugin:*


  注意:我正在研究2点和3点,并且还将对iOS的插件进行更改。

10-07 12:58