Android 重复调用gcm.register(发送方ID)
我知道谷歌新文档,它建议在启动时只调用一次GCM register并存储ID。在play store上发布应用程序后,一些ID出现错误:未注册,应用程序版本未升级,用户停止接收通知 在阅读在线解决方案时,一些人建议再次/反复调用register函数 所以我实现了这个代码Android 重复调用gcm.register(发送方ID),android,google-cloud-messaging,Android,Google Cloud Messaging,我知道谷歌新文档,它建议在启动时只调用一次GCM register并存储ID。在play store上发布应用程序后,一些ID出现错误:未注册,应用程序版本未升级,用户停止接收通知 在阅读在线解决方案时,一些人建议再次/反复调用register函数 所以我实现了这个代码 regid=""; while (regid.isEmpty()) { regid = gcm.register(SENDER_ID); } String storeid = getRegistrationId(context
regid="";
while (regid.isEmpty())
{
regid = gcm.register(SENDER_ID);
}
String storeid = getRegistrationId(context);
if (!regid.equals(storeid))
{
//storing to server
sendRegistrationIdToBackend();
// storing in shared preference
storeRegistrationId(context, regid);
}
PS:这不是实际的完整代码,但这是给出基本的想法。如果应用程序版本更改,getRegistrationId将提供Null
每次调用寄存器函数时,它可能会给出相同的重复值,然后进行比较,必要时开始存储过程
现在问题来了
每次调用register函数可以吗?知道重复的结果
通过反复调用register函数,它是否会刷新GCM服务器端的设备活动/状态
为什么有些设备出现错误:NotRegistered errors没有卸载应用程序,此实现是否有任何好处?
所有设备都是安卓4及以上版本
有GCM经验的开发人员,请建议未注册的设备是否会收到通知?当然,在他们开始获取NotRegistered错误之前。你应该调查为什么你会收到这些未注册的错误,而不是编码解决方案。是的,他们过去常常收到通知,最近一个接一个地收到错误,未注册的数量增长缓慢