Java 在没有GCM的情况下处理设备

Java 在没有GCM的情况下处理设备,java,android,google-cloud-messaging,Java,Android,Google Cloud Messaging,我是android编程新手。我的应用程序运行来自GCM的推送通知。我正在多个设备上测试它。在我拥有的一台平板电脑上,它抛出了一个异常设备没有com.google.android.gsf包。现在我知道如何在android emulator上修复这个问题,正如上面所说的 我的问题是,作为一名应用程序开发人员,如果使用该应用程序的人没有com.google.android.gsf,我该如何处理?这到底意味着什么?他们是否必须在手机中设置谷歌账户?那么所有使用yahoo或hotmail的人呢?在4.0.

我是android编程新手。我的应用程序运行来自GCM的推送通知。我正在多个设备上测试它。在我拥有的一台平板电脑上,它抛出了一个异常设备没有com.google.android.gsf包。现在我知道如何在android emulator上修复这个问题,正如上面所说的


我的问题是,作为一名应用程序开发人员,如果使用该应用程序的人没有com.google.android.gsf,我该如何处理?这到底意味着什么?他们是否必须在手机中设置谷歌账户?那么所有使用yahoo或hotmail的人呢?

在4.0.4之前的Android版本上,谷歌帐户曾经是GCM注册的强制要求。现在已经不是这样了

如果您的应用程序使用Google Play服务注册到GCM,则无论Android版本如何,您都不再需要Google帐户。如果您使用的是旧客户端库(包含gcmregistar类),那么您仍然需要一个Google帐户

以下是一位谷歌开发者对此的评论(摘自):

一些背景:Froyo和Gingerbread注册是在 Google服务框架,使用Google帐户进行注册。 这导致帐户所在的用户出现许多身份验证错误 他的状态不好

从ICS开始,GCM不依赖或使用Google帐户-你 可以在添加帐户之前使用它,也可以不添加任何帐户

“播放服务”更新正在所有服务器上实施新方案 设备-但似乎有少数设备存在问题 对此,我们正在调查——但数字远远低于这些数字 用老办法

如果您想使用GSF中的代码,对于Froyo和Gingerbread-您 需要使用上一个库,它显式地设置包名。 GCM中的新库正在使用新的注册码

与谷歌的实际连接遵循相同的路径-我们 逐渐(缓慢)将设备移动到正在使用的新代码 服务


所以基本上,如果你有一部安卓手机,你将拥有一个谷歌账户?…真的吗。。。是的,如果你有一部安卓手机,你也会有一个苹果账户……因为两者都来自美国。。。。