Android GCM服务可在一台平板电脑上运行,但不适用于其

时间:2013-05-02 14:42:42

标签: android cordova google-cloud-messaging

我在Android应用程序中遇到了一个奇怪的问题。 我正在使用JQuery Mobile和Cordova 2.4以及这里找到的GCM插件:https://github.com/marknutter/GCM-Cordova

奇怪的是,这段代码完全适用于运行4.2.2的Nexus 7,但另一方面,虽然情况更糟,Trio Stealth Pro平板电脑运行4.0.4,但代码根本不起作用。我提出请求时,我没有从GCM服务器收到任何注册ID。

以下是拨打电话的javascript代码:

//cordova's deviceready callback
function onDeviceReady() {
document.addEventListener("backbutton", onBackKeyDown, false);

  //setup for GCM Messaging
  userContext.deviceReady = true;
  window.plugins.GCM.register(MY_PROJECT_NUMBER, "GCM_Event", GCM_Success, GCM_Fail);
}

//called from specified attribute in login.html <body onload="onLoad()">
function onLoad() {
  document.addEventListener("deviceready", onDeviceReady, false);
  document.addEventListener("pause", function () {
    unregisterGCM();
  },
  false);
}

我确实收到了一些错误,因为我的应用程序启动但是在我进行注册调用之后却看起来完全不相关。

"call to OpenGL ES API with no current context (logged once per thread)"

为什么两种平板电脑之间会出现这种不同的行为?

1 个答案:

答案 0 :(得分:0)

Trio Stealth Pro未附带Google Play商店,因此不支持GCM。