我和我的团队目前正在开发一个带有推送通知的iOS应用程序。
我们有一个Rails后端,它向iOS应用程序发送推送通知。一切都如期而至。
我们在通知负载中发送了不同类型的通知(促销、general_info、新闻),如下所示:
aps: {
alert: body,
badge: 1,
sound: 'bingbong.aiff'
},
type: type但是,我们希望用户指定他希望接收的通知类型和不想接收的通知类型(使用应用程序中的设置-菜单)。
例如,如果用户已取消选择类型“促销”,则将过滤包含“促销”类型的通知,这样用户就不会收到促销通知。
这种行为类似于Whatsapp!-App用于静音组的行为。
我们找到了另一个解决方案:
Can you mute incoming Push Notifications from the App side [iOS]
但是,只有当用户在应用程序中时,这才有效。
它甚至可以检查有效负载,然后决定推送通知是否会显示给用户时,应用程序在后台/关闭?
提前感谢!
发布于 2014-01-31 04:25:56
您的应用程序无法在后台查看推送有效负载,它只在前台接收数据。
要进行您想要的过滤,您几乎必须在服务器端限制发送的内容。如果您使用的是推送提供程序,您通常可以简单地取消订阅您的某个类别,而对该类别的推送将不会发送给该用户。
发布于 2014-01-31 04:42:16
通知出现时无法读取有效负载,可以使用didRecieve方法读取它,
因此,为了创建一些webService,当用户在应用程序设置菜单中更改时,根据某个表中的存储来调用它,所以当您下次根据该表发送推送通知筛选器时。
https://stackoverflow.com/questions/21470921
复制相似问题