12

我试图设置这个例子: https://code.google.com/p/gcm/source/browse/#git%2Fgcm-client 启动并运行。

GoogleAPI 项目已成功创建,根据指南:http: //developer.android.com/google/gcm/gs.html

但是,我有以下问题:在某些设备上,无论如何我都会得到 SERVICE_NOT_AVAILABLE。

W/System.err: java.io.IOException: SERVICE_NOT_AVAILABLE W/System.err: at com.google.android.gms.gcm.GoogleCloudMessaging.register(未知来源)

一些统计数据:

  • Nexus 7,android 4.2.2:GCM 示例完美运行
  • Nexus 4、android 4.2:GCM 示例完美运行
  • Nexus S,android 4.2.2:GCM 示例完美运行
  • 三星 Galaxy 3:SERVICE_NOT_AVAILABLE 在 100% 的情况下
  • 三星 Galaxy,android 2.3.6:SERVICE_NOT_AVAILABLE 在 100% 的情况下
  • 摩托罗拉 Xoom,android 4.1.2:SERVICE_NOT_AVAILABLE 在 100% 的情况下
  • HTC Desire HD,android 2.3:SERVICE_NOT_AVAILABLE 在 100% 的情况下

它是相同的代码,相同的 apk 文件,各种谷歌帐户。我试图切换回 GCMRegistrar 方法,它们确实有效。所以问题是:新的 GCM 方法是否处于测试阶段?如何让它们在其他设备上工作,而不仅仅是“纯”谷歌 Android 设备?

更新:事实上,我在这里找到了解决方案

4

3 回答 3

3

有时它是由于与 GCM 的时间同步而发生的。请看一下时间,如果它是正确的。如果可能,然后重置。

还有两件事要检查,如果您使用的是模拟器,那么请确保您在模拟器上运行了 google api。第二个 gcm.jar 包含在您的项目中。

于 2013-07-25T06:32:19.110 回答
2

这是超级愚蠢,但我有同样的错误,因为我在我的 xperia 上为谷歌服务启用了“限制应用程序后台数据”选项)

于 2016-03-25T06:16:45.793 回答
1

检查您的手机是否有活动的网络连接。我遇到了这个问题,然后我意识到我的测试设备与 wifi 断开连接 :)

于 2015-05-14T08:36:38.637 回答