3

在我的项目中,如果Play商店有更新,我必须向用户发送推送通知。通过使用Google Play服务,我们只能在用户运行应用程序时才能获取更新。但每次用户解锁手机时,我都必须通知您。有没有办法通过使用Google云消息传递(GCM)来做到这一点。请帮助我。应用程序更新推送通知

在此先感谢..

+0

你试着用AlaramManager,service和USER_PRESENT Broadcastreceiver来实现吗? – 2013-03-28 07:59:28

回答

5

是的,你可以。

将GCM集成到您的应用中。将更新后的apk上传到Google Play并将其激活。等待几个小时后它才会生效,然后向您的应用发送推送通知,说明有更新。

此通知应该包含一些预定义的文本,您的应用程序知道该文本意味着有更新可用。一旦你得到这个,你可以在SharedPreferences中设置一个标志,说有一个更新。

现在收听设备解锁时发送的USER_PRESENT广播。在此广播的接收器中,检查SharedPreferences标志是否设置为true。如果是,则显示通知。

+0

谷歌每次应用更新时都会分配一个不同的ID吗? – 2014-04-09 20:56:19

2

有很多应用程序可以做到这一点。使用服务器端配置文件来反映应用商店中可用的版本,并设置AlarmManager以每X天运行一次并轮询该文件。这个文件应该包含google play上的最新版本代码。

您可以使用此代码段检查应用程序的当前版本。

PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), 0); 
code = info.versionCode 

如果远程文件的版本代码比当前安装的版本代码更大,这意味着有可供下载一个新的版本。发生这种情况时向用户触发本地通知。