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

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

IOS应用桌面icon上不显示角标问题修复_第1张图片,在程序里也加上了代码:[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,如下图:

IOS应用桌面icon上不显示角标问题修复_第2张图片


你可能感兴趣的:(ios,解决方案,icon,角标数不显示,桌面图标角标数)