我需要在聊天应用上执行此操作,以通知客户端有从服务器获取的新数据。
我知道技术上可以使用空的有效负载(至少在ios 5设备上工作),但Apple可以将其视为滥用服务还是可以这样做?
在ios 4设备上技术上是否可行?
答案 0 :(得分:6)
是的,只增加徽章编号,不发送声音和警报,因此,应用程序图标上会有一个徽章。
因此,在不知不觉中,当用户观看应用程序图标时,徽章编号将会增加以显示已收到的内容。
但是你的设备不会响应警报或空载有效,也不会收到声音,因为你在iPhone上要求“静音”推送通知
在AppDelegate中配置时,仅配置徽章
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:UIRemoteNotificationTypeBadge];
希望这会对你有所帮助
答案 1 :(得分:5)
您需要像这样构建有效负载:
String payload =
'{
"aps":{
"content-available": 1
},
"data_id": 5,
"additional_data": ["some", "data"]
}'
在aps中放置所需的苹果变量以使推送通知显示文本,声音,徽章......或只是内容可用以使其保持沉默。然后,在'aps {...}'中用','分隔,将您的自定义字段发送到下载所需的信息。
答案 2 :(得分:3)
如果您不想增加徽章编号,您还可以尝试发送播放静音文件的声音通知。 (不幸的是,我不知道这对Apple来说是否合适)。