IOS应用桌面icon上不显示角标问题修复

今天在做消息通知,要在桌面图标的icon上显示消息数,例如

技术分享,在程序里也加上了代码:[UIApplication sharedApplication].applicationIconBadgeNumber = 25;

但是怎么搞就是不显示,最后查资料发现在ios8系统里必须先得让用户授权才能显示,可以在代码里加上如下代码


if (IS_IOS8) {
        UIUserNotificationType myType = UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound;
        UIUserNotificationSettings *mySetting = [UIUserNotificationSettings settingsForTypes:myType categories:nil];
        [[UIApplication sharedApplication] registerUserNotificationSettings:mySetting];
    }else{
        UIRemoteNotificationType myType = UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound;
        [[UIApplication sharedApplication] registerForRemoteNotificationTypes:myType];
    }


其中IS_IOS8是我加的宏定义,用来判断是不是ios8,代码如下:


#define IS_IOS8 ([[UIDevice currentDevice].systemVersion doubleValue] >= 8.0)

这样,重新启动app后,会弹出一个提示用户授权的提示框,选择OK就可以了,这样就可以在桌面上显示角标数了,然后去手机-设置里面查看,会有惊喜,设置里面多了个我们的app,如下图:

技术分享


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。