ale*_*xey 7 azure push-notification azure-notificationhub
现在我正在使用PushSharp库发送Apple推送通知(通过APNS),但我想迁移到Notification Hubs以获得稳健性和可扩展性.
我打算使用本文所述的后端注册通过Azure通知中心实现发送通知.所以:
它似乎是一个有效的解决方案,但在Notification Hubs文档中说:
重要的是要注意注册是暂时的.与它们包含的PNS句柄类似,注册过期.您可以在通知中心设置注册的生存时间,最长可达90天.此限制意味着必须定期刷新它们,并且它们不应该是重要信息的唯一存储.此自动过期还可以在卸载移动应用程序时简化清理.
这就是问题所在.有时我需要向尚未更新令牌90天的设备发送通知,等等.因此APNS令牌仍然有效,但Notification Hub的注册将失效.所以我只是失去了用户的沟通渠道.
你怎么处理这个?
当然,我仍然可以在DB中存储令牌,并且可以定期更新注册.但这不是您对通知中心等推送通知解决方案的期望.
您可以从应用程序或服务器刷新注册.如果您从应用程序执行此操作,则必须由用户启动该应用程序才能刷新注册.
因此,如果您要求设备注册即使对于未启动超过90天的应用程序仍保持活动状态,您必须通过服务器刷新注册,并在服务器中运行可刷新令牌的作业似乎是您唯一的选择.
我同意Notification Hubs决定使令牌失效似乎很奇怪.也许他们考虑过MPNS(微软推送通知服务)通知渠道的行为,这些渠道比APNS设备令牌或GCM注册ID更频繁地过期.
简单说明一下,因为答案已经有 2 岁了。在这篇博文中, Azure 指出:
值得注意的是,默认情况下注册和安装不再过期。
我认为这会使过期字段变得混乱,但不再是问题了。
更新
较旧的通知中心仍然存在此问题。您需要更新它们以将到期时间设置为无穷大,可以在此论坛帖子中找到说明。新的集线器会自动设置为无穷大。
| 归档时间: |
|
| 查看次数: |
2940 次 |
| 最近记录: |