多久调用一次GCM RegistrationIntentService

时间:2016-03-25 23:50:01

标签: android google-cloud-messaging

我应该在每次用户进入主活动时拨打电话,还是只在用户首次安装应用时才拨打电话?

startService(new Intent(this, RegistrationIntentService.class))

2 个答案:

答案 0 :(得分:0)

基本上RegistartionIntentService将执行相同的操作(使用您的应用获取的令牌将您的应用注册到谷歌的SNS服务器)所以每次都这样做是无用的,我会说你应该只做在应用程序第一次打开之后一次。

答案 1 :(得分:0)

要向设备发送推送通知,您需要在运行注册服务时由应用生成的注册令牌。注册设备后您使用该令牌做什么取决于您。

我所做的是,当我的用户登录我的应用程序时,我运行我的GCM注册服务,为我生成一个令牌,然后将该令牌(以及登录的用户信息)发送到我的后端数据库。从那时起,我的后端代码知道用户已经注册了他们的设备,每当我需要发送推送时,我知道用该令牌发送它。

当用户退出时,我再次对我的后端数据库进行API调用,该数据库删除了GCM注册令牌(您不必这样做,但我不知道如何操作。)

关键是,一旦您通过注册服务获得该令牌,您所做的就是您的责任。保存,存储等等。您只需要获取一次 - 然后您就可以发送所需的所有推送。