我试图弄清楚如何向用户隐藏特定通知。例如:用户想要接收类型 A 的通知,但不希望显示类型 B 的通知。
我可以看到两种可能的解决方案:
a) 发送一个空通知(仅包含字典数据)并在客户端决定是否使用本地通知显示它
b) 将用户的偏好发送到服务器并在服务器端处理通知
例如,您可以选择是接收所有电子邮件的通知,还是仅接收来自 iOS Gmail 应用程序中联系人的通知。
最诚挚的问候,
本
我试图弄清楚如何向用户隐藏特定通知。例如:用户想要接收类型 A 的通知,但不希望显示类型 B 的通知。
我可以看到两种可能的解决方案:
a) 发送一个空通知(仅包含字典数据)并在客户端决定是否使用本地通知显示它
b) 将用户的偏好发送到服务器并在服务器端处理通知
例如,您可以选择是接收所有电子邮件的通知,还是仅接收来自 iOS Gmail 应用程序中联系人的通知。
最诚挚的问候,
本
在服务器上保留首选项总是更好。这将具有以下优点 1. 发送到 APNS 服务器的通知数量更少,从而导致更好的网络利用率。2. 用户可以随时更改偏好以拥有 B 类通知或删除 A 类通知。
此外,开发人员无法控制要显示哪些通知,由用户决定使用“通知中心”中的控件。
**在 iOS7 中添加了新类型的推送通知,用户看不到任何警报,但可以在后台唤醒应用程序以从服务器获取数据。然而,在行动中看到这一点
第二个选项是最好的,因为它可以减轻服务器端的 N/W 和额外处理的负担。如果用户对特定通知不感兴趣,则将该首选项发送到服务器,然后服务器不应将该类型的通知发送到该客户端。