阿里云iOS推送后台可以设置applicationIconBadgeNumber 这个值吗,就是桌面应用右上角的小红点未读数。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
是的,阿里云iOS推送后台可以通过配置参数来设置 applicationIconBadgeNumber
的值,即桌面应用右上角的小红点未读数。以下是详细的设置方法和相关说明:
在阿里云推送后台,可以通过 OpenAPI 高级接口设置 iOS 应用图标的角标数。具体参数如下: - iOSBadge
:用于直接设置终端收到通知时显示的角标数。 - 示例:如果希望角标显示为 5
,则将 iOSBadge
设置为 5
。 - iOSBadgeAutoIncrement
:用于开启角标自增功能,默认为 false
。 - 如果启用此功能,服务端会维护每个设备的角标计数,并自动递增角标值。 - 注意:当 iOSBadgeAutoIncrement
设置为 true
时,iOSBadge
参数必须为空。
客户端可以通过以下方式处理角标: - 获取角标数: - 在接收到远程通知时,可以通过 userInfo
中的 aps
字段提取 badge
值。 - 示例代码(适用于 iOS 10+ 和 < iOS 10): objective-c NSDictionary *aps = [userInfo valueForKey:@"aps"]; NSInteger badge = [[aps valueForKey:@"badge"] integerValue]; NSLog(@"当前角标数: %ld", (long)badge);
- 清除角标: - 将 applicationIconBadgeNumber
设置为 0
即可清零角标。 - 示例代码: objective-c [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
如果需要实现角标自增功能,可以按照以下步骤操作: - 服务端配置: - 启用 iOSBadgeAutoIncrement
参数,并确保 iOSBadge
参数为空。 - 服务端会自动维护角标计数并递增。 - 客户端同步: - 客户端需要主动将当前角标值同步到服务端,以确保角标计数的准确性。 - 参考文档中的 syncBadgeNum
方法进行同步。
iOSSilentNotification
设置为 true
),默认不会更新角标数,除非明确配置了 iOSBadge
或 iOSBadgeAutoIncrement
参数。iOSRemind
参数,推送会通过 APNs 通道送达,并根据配置更新角标数。通过阿里云推送后台的 OpenAPI 配置 iOSBadge
或启用 iOSBadgeAutoIncrement
参数,可以灵活设置 iOS 应用图标的角标数。客户端也可以通过代码获取、清除或同步角标值,满足不同场景的需求。