ios设置角标和显示问题

2023-08-22  本文已影响0人  xing_x

1.ios设置角标个数的方法

方法1:

  [[UIApplication sharedApplication] setApplicationIconBadgeNumber:99];

方法2:

  [UIApplication sharedApplication].applicationIconBadgeNumber = 99

当角标个数为0的时候,设置个数为0,系统会自动设置角标不显示

2.角标设置之后不显示的原因

如果项目中集成了友盟的推送,那就是友盟推送默认清空角标,需要将默认清空关闭。调用此方法:
[UMessage setBadgeClear:NO];

3.需要提前设置权限

UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
[application registerForRemoteNotifications];

if (@available(iOS 10.0, *)) {
    UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
    center.delegate = self;
    [center requestAuthorizationWithOptions:(UNAuthorizationOptionBadge|UNAuthorizationOptionSound) completionHandler:^(BOOL granted, NSError * _Nullable error) {
        if (!error) {
            NSLog(@"请求权限成功!");
        }
    }];
    [center getNotificationSettingsWithCompletionHandler:^(UNNotificationSettings * _Nonnull settings) {
        NSLog(@"%@",settings);
    }];
    [[UIApplication sharedApplication] registerForRemoteNotifications];
} else {
    // Fallback on earlier versions
}·
上一篇 下一篇

猜你喜欢

热点阅读