该应用程序位于PhoneGap 中。我正在使用带有https://github.com/marknutter/GCM-Cordova的推送通知功能
我实现了整个功能,直到昨天它都运行良好。当我昨天检查应用程序时,当应用程序未运行时,推送通知不起作用。所有通知都在我的设备上接收,单击消息打开应用程序。
但是控件没有在消息通知处理的 javascript 部分接收。
文件 GCMIntentService.java 中的代码:
JSONObject json;
json = new JSONObject().put("event", "message");
json.put("message", extras.getString("message"));
json.put("link", extras.getString("link"));
Log.v(ME + ":onMessage ", json.toString());
GCMPlugin.sendJavascript( json );
// Send the MESSAGE to the Javascript application
收到消息后,此代码将起作用。但当时,App 没有运行。
当我点击通知消息时,应用程序照常打开,不注册消息事件;从而无法在 JavaScript 中获得控制来处理推送通知。
CORDOVA_GCM_script.js 的代码可在以下位置获得:
https://github.com/marknutter/GCM-Cordova/blob/master/assets/www/CORDOVA_GCM_script.js
注意:应用程序运行时它工作正常。
编辑: 通知有时会运行。JavaScript 随机获取消息事件。
编辑2:
我绝对知道问题所在。
从 java 文件中,它在通过单击推送通知消息打开应用程序时触发 javascript 代码。但是当时没有加载WebView,所以无法执行脚本(这是一个事件触发器)。是不是这种情况,每个使用插件的人都会有同样的体验。是否有任何解决方法或解决方法?
我做错什么了吗?