应用程序更新后推送通知

时间:2014-10-20 22:06:36

标签: android push-notification android-notifications google-cloud-messaging

嗯,我知道在应用程序版本更新时更改了android设备registration_id -s。因此,一旦我在Play商店更新应用并且用户的设备将应用更新(自动)到新版本,如何将通知推送到他们的设备? - 因为在该时间间隔之间(应用已更新,但是在更新后从未打开过)设备需要重新注册。

1 个答案:

答案 0 :(得分:3)

当您的应用程序更新时,系统会发送两个广播:ACTION_MY_PACKAGE_REPLACED(仅发送到您的应用程序,可在API 12(3.1)或更高版本中使用)和ACTION_PACKAGE_REPLACED(发送到每个应用程序,检查Intent上的getData()以获取所有API级别的包名称。

您可以在BroadcastReceiver中创建一个AndroidManifest.xml来监听广播并启动一项服务,然后按照PushBullet's blog of reliable GCM的建议重新注册GCM。

我强烈建议禁用任何在Android 3.1+设备上监听ACTION_PACKAGE_REPLACED广播的接收器,否则您的接收器/进程也会在其他应用上被触发(在这种情况下,您需要两个接收器:一个用于< 3.1,一个用于> = 3.1并使用android:enabled和布尔资源根据API级别适当地禁用它们。)

相关问题