2012-05-23 64 views
2

我有以下问题:应用重新安装后的Android c2dm推送通知

我已经在我的应用程序中成功实施了C2DM。我正在注册Google c2dm云和一个“创建”通知内容的自定义服务器。一切工作正常。 我的问题是:当我卸载我的应用程序,然后重新安装在同一设备上会发生什么?我注意到C2DM正在给我发回相同的app_key,所以显然无法确定我的应用程序安装状态更改。我一直在收到旧的推送通知(它们是根据用户在应用程序中的偏好进行自定义的)。 我将无法使用谷歌播放发布的应用程序进行测试,直到最终发布,所以我想知道是否有可能谷歌本身可以通知c2dm该应用程序已卸载在我的设备上并强制它更改我的app_id在下次重启。

在此先感谢 斯特凡诺

回答

1

从我的理解C2DM,你不应该单独依赖于谷歌的注册ID。他们“没有承诺” - 甚至可能没有明确的理由获得新的注册ID(可能是他们自己的vrsion升级等)。
如果您想遵循安装 - 您应该使用自己的服务器进行安装 - 每当应用程序要求注册时创建一个唯一标识符,并使用它而不是Google的注册ID。
关于Google Play - 找不到已发布应用和未发布应用之间的区别 - 行为似乎是一样的。
希望这有助于某种程度。
Shushu

+0

你说得对,其实我并不依赖于谷歌的注册ID:在每次应用程序启动时,我都会要求一个新的ID,它可以是一个新的ID,也可以是一个新的ID;我在任何情况下都存储收到的值,并将其与自定义应用参数一起传递给外部服务器。问题是,在全新安装的情况下,我可能没有在我的应用程序中设置自定义首选项(我发送了一个最喜欢的项目列表,但我希望收到关于他们的新闻的通知,但是在重新安装时,我的列表是空的)和外部服务器忽略了一个空的列表。服务器人将必须实现它:) –

+1

指责服务器人总是一个很好的解决方案:-) – Shushu

相关问题