小编Man*_*lan的帖子

在 iOS 12 中使用临时授权设置应用程序徽章

所以 iOS 12 引入了安静通知的临时授权,可以在通知中心看到,但在锁定屏幕上看不到。它有一个很酷的优势——你不需要用户的批准就可以发送一个。

几篇文章(smashingmagazine.comgadgethacks.com等)要求,如果收到的临时授权iOS应用可以设置它的徽章。

当应用程序被临时授权时,真的可以设置应用程序徽章吗?

我使用以下代码请求授权:

[[UNUserNotificationCenter currentNotificationCenter]
     requestAuthorizationWithOptions:UNAuthorizationOptionAlert | UNAuthorizationOptionBadge | UNAuthorizationOptionProvisional
     completionHandler:^(BOOL granted, NSError *_Nullable error) {
       if (granted) {
         [[UIApplication sharedApplication] registerForRemoteNotifications];
       }
     }];
Run Code Online (Sandbox Code Playgroud)

我收到didRegisterForRemoteNotificationsWithDeviceToken:可用于发送推送通知的令牌。当我发送带有有效负载的推送通知时,{"aps":{"alert":"Testing..","badge":1}}我会在通知中心看到它,但应用程序没有被标记。

我尝试使用设置徽章,UIApplication.sharedApplication.applicationIconBadgeNumber = 1;但效果不佳。如果我在不提供 UNAuthorizationOptionProvisional 选项的情况下请求常规授权,它会起作用。

push-notification ios12

5
推荐指数
1
解决办法
408
查看次数

标签 统计

ios12 ×1

push-notification ×1