ios – 苹果推送通知不会自动更改图标标志

我的iPhone(4S,iOS 5.1)中的邮件应用程序自动更新徽章计数,即使新的邮件到达,即使应用程序未运行.所以可以在我的应用程序中实现这个行为吧?

我的应用程序成功注册了所有3种类型的推送通知 – 徽章,警报和声音.
对于此应用程序的所有3种类型的远程通知,电话设置设置为ON.

我的应用程序接收远程通知并显示警报,播放声音,但不会更新徽章编号.
如果我通过警报上的“查看”按钮启动应用程序,那么我的应用程序可以完美地读取徽章值,我可以从代码中更改/删除/设置图标徽章.

任何具体原因,当通知到达时,iOS无法自动更改我的应用程序的图标徽章?我已经看到所有类似的帖子,他们都在讨论手机设置,或者关于它注册的通知类型,或者关于检查有效载荷JSON是否包含徽章.

有什么其他原因可能会导致这个问题吗?

这是我的代码块:

注册APNs每次应用程序启动 –

[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge |UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound)];

设备令牌几乎立即收到.
令牌已发送给提供商,我正在收到通知.警报和声音工作.但是,在启动应用程序并手动更改之前,徽章不会自动生效.请帮忙.

解决方法

BTW,我有这个完全相同的问题 – 徽章图标没有引用.经过多少小时的尝试调整JSON(验证手机上的应用程序显示徽章,声音,警报) – 问题是我添加了UIRemoteNotificationTypeNewsstandContentAvailability作为我的应用程序注册的警报类型之一. (我疯了,只是挑选一切)

因此,当UIRemoteNotificationTypeNewsstandContentAvailability也在混合中时,似乎覆盖允许aps /徽章数字更新应用程序图标的功能. (必须要更新报摊信息)

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...