ios:此有效负载格式中的推送通知徽章计数未增加
Posted
技术标签:
【中文标题】ios:此有效负载格式中的推送通知徽章计数未增加【英文标题】:ios : push notification badge count not increase in this payload formate 【发布时间】:2016-03-04 07:52:57 【问题描述】:当后台应用程序在过去 5 天前未设置的时间徽章计数正常工作。徽章计数每次增加 php 后端 ex。当前徽章 = 10 然后在第二次推送后获得徽章 = 11
我正在使用波纹管有效载荷甲酸盐。如果波纹管甲酸盐有任何变化,请帮助我阅读也参考Apple Push Notification Service.
推送通知负载是 JSON 负载:
"aps":
"badge": 10,
"alert": "Hello world!",
"sound": "cat.caf"
注册用户通知设置
if (ios8)
if ([application respondsToSelector:@selector(registerUserNotificationSettings:)])
UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
[[UIApplication sharedApplication] registerForRemoteNotifications];
else
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
else
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
【问题讨论】:
您是否通过 Pusher 进行了检查? 您能否更具体地说明您的问题:您希望将徽章设置为 10 还是要将其增加 10?您的问题的标题令人困惑。 您确定用适当的UIUserNotificationType.Badge
致电registerUserNotificationSettings
吗?
@dbn 参考我更新的问题。
@MichaëlAzevedo 徽章计数每次增加 php 后端 ex。当前徽章 = 10 然后在第二次推送后获得徽章 = 11
【参考方案1】:
根据Apple documentation 中对payload key 的描述,与key badge关联的值必须是一个数字,所以你不能从payload中增加badge值(否则你无法区分递增或徽章设置为 1)。
您可以在服务器端保存徽章值并在服务器上递增,因此对于用户来说它看起来像是递增。
【讨论】:
是的,你是对的,徽章必须是数字:) 我的后端开发人员只是将字符串更改为数字。以上是关于ios:此有效负载格式中的推送通知徽章计数未增加的主要内容,如果未能解决你的问题,请参考以下文章
IOS 应用程序中未收到 Firebase 推送通知徽章计数
未使用 Apple 推送通知设置通知徽章计数 - swift - 以编程方式