重新安装应用时,Azure通知中心丢失了订阅

时间:2017-11-11 16:05:51

标签: xamarin xamarin.android firebase-cloud-messaging azure-notificationhub

我的Azure通知中心存在问题。

当我的应用程序第一次启动时,通知正常工作,但是当Visual Studio重建应用程序时,通知停止工作,并且不会调用带有IntentFilters的Android服务。

对于通知再次起作用,我需要在Android中卸载App并再次由Visual Studio运行。

有人对这个问题有所了解吗?

我担心的是:如果我将应用程序发送到GooglePlay,更新后通知会继续有效吗?

如果有人知道如何调用服务来获取新的InstallationId,那么总是要启动应用程序,我将知道如何解决问题。

有人可以帮助我吗?

我确实遵循了该教程: https://www.youtube.com/watch?v=le2lDY22xwM&t=3312s

1 个答案:

答案 0 :(得分:1)

  

如果我将应用程序发送到GooglePlay,更新后通知会继续有效吗?

无需担心,引用此document,当您使用Azure Notification Hub时,它正在使用Android GCM发送推送通知。你可以看到关于Android using Firebase Cloud Messaging not receiving message的答案。

正如Official document所说:

  

在您的应用首次启动时,FCM SDK会为客户端应用实例生成注册令牌。如果要定位单个设备或创建设备组,则需要访问此令牌。

关于Token的说明:

  

GCM连接服务器向客户端应用程序发出的ID,允许它接收消息。

当您通过Visual Studio重建应用时,您的令牌已更改,但它未触发OnTokenRefresh方法,因此此时您的Token申请无效。这就是您的应用程序无法接收消息的原因。

有关详情,请参阅Sending Push Notifications from Azure Mobile AppsImplement the Firebase Instance ID Service

当您的应用获得更新时,它会自动触发OnTokenRefresh方法,因此您的应用仍然可以收到该消息。