在Cordova升级到3.1.0之后,无法调用onNotificationGCM函数event = register。这样我就可以收到有关已注册电话的推送通知,但是无法注册新电话。
检查ATD的控制台,我得到了:
W/PluginManager(31200): THREAD WARNING: exec() call to PushPlugin.
register blocked the main thread for 30ms. Plugin should use
CordovaInterface.getThreadPool().
任何人都有同样的问题,可以对此提出一些建议吗?
最佳答案
找到了某种方式的gWebView.sendJavascript(_d);在PushPlugin.java的sendJavascript函数中未运行。它可能是PushPlugin错误或Cordova错误。
/*
* Sends a json object to the client as parameter to a method which is defined in gECB.
*/
public static void sendJavascript(JSONObject _json) {
String _d = "javascript:" + gECB + "(" + _json.toString() + ")";
Log.v(TAG, "sendJavascript: " + _d);
if (gECB != null && gWebView != null) {
gWebView.sendJavascript(_d);
}
}
将
gWebView.sendJavascript(_d);
(第105行)更改为gWebView.loadUrl(_d)将解决问题。