首页 > 解决方案 > 如果安装 ID 未知,如何更新安装?

问题描述

由于某种原因,无法下载所有安装。那么,如果一个人不知道所有的安装 ID,如何更新所有安装的模板呢?

肯定有人想到了这个……?

标签: azureazure-notificationhub

解决方案


使用 NotificationHubs 时有两种选择:直接向 NotificationHub 注册设备,或通过 Web 后端注册设备。

如果您是从设备直接向 NotificationHub 注册,那么当您需要更新所有安装的模板时,您会遇到麻烦。据我所知,在这种情况下你是 SOL。

如果您从后端注册 NotificationHub,您可以选择。您需要将每个安装的列表保存在单独的数据存储中。例如,在我的上一个项目中,我保留了一个 PushNotificationRegistrations 数据库表,其中包含 PNS 类型(gcm、apns)、registrationId(来自相应 PNS 的唯一设备注册)、userId(这样我以后可以根据需要换出标签),以及生成的安装 ID。

如果您获得了每次注册的此信息,您可以从数据存储中检索相关记录,然后在一个巨大的颓废 for 循环中使用 NotificationHub 重新注册每个记录。安装是幂等的,所以这将覆盖旧模板。我觉得你重新注册的时候需要保证你的InstallationId和registrationId是一样的。

我记得在 REST 文档中看到一些关于使用 HTTP PATCH 端点仅针对安装的部分的内容,但我还没有尝试过它们。


推荐阅读