我已在我的应用中实施了APNS。但我有两个问题。
如何让徽章自我增加?在我的应用中,它现在始终设置为1.
如果推送通知在应用程序处于前台时到达,据我所知,我需要实现更改视图并自己播放声音。在这种情况下,有没有办法播放系统默认通知声音,即当用户在设置中更改它时,它会自动更改。
感谢。
答案 0 :(得分:2)
您可以将徽章计数增加为wasim描述,但只有当您的应用位于前台时它才会起作用,因此,为了显示正确的徽章计数,您的服务器必须推送正确的徽章编号。
当应用程序在前台时播放默认系统通知声音我不认为有任何API,因为你已经将声音文件放在你的包中并在收到通知时播放该声音。
答案 1 :(得分:1)
通常在所有应用中,未读通知计数都在服务器中维护。当服务器向特定设备发送推送通知时, 服务器会发送徽章计数和有效负载。
您的服务器逻辑需要跟踪正确的徽章计数并正确发送。
{
"aps" :
{
"alert" : "Your notification message",
"badge" : badgecount ,
"sound" : "bingbong.aiff"
}
}
答案 2 :(得分:0)
在AppDelegate.m
中使用以下功能:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
badge_value+=[[[userInfo objectForKey:@"aps"] objectForKey:@"badge"]intValue];
[UIApplication sharedApplication].applicationIconBadgeNumber = badge_value;
}
其中,badge_value是一个存储徽章值的整数。