首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >APNS无法获取DeviceToken

APNS无法获取DeviceToken
EN

Stack Overflow用户
提问于 2020-05-21 20:21:40
回答 1查看 53关注 0票数 0

我的代码。

代码语言:javascript
复制
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
        center.delegate                  = self;
        [center requestAuthorizationWithOptions:(UNAuthorizationOptionBadge | UNAuthorizationOptionSound | UNAuthorizationOptionAlert) completionHandler:^(BOOL granted, NSError * _Nullable error) {
            if (!error) {
                NSLog(@"~ios10-----");
                dispatch_async(dispatch_get_main_queue(), ^{
                    [[UIApplication sharedApplication] registerForRemoteNotifications];
                });

            }else{
                NSLog(@"~ios10---error--");
            }
        }];

iPhone 5s ios 11.4.1中的这段代码是work,调用方法。但在iPhone 6s中,iOS13.5.0无法正常工作。经过几天的谷歌搜索,in APNS connection failure 找到了一个解决方案,解决方案是在wifi设置中更改手机,使用谷歌(8.8.8.8)或Cloudflare (1.1.1.1)等替代域名。但我不能修改用户电话的DNS。

如果你有任何想法,请让我知道。谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-05-21 21:20:03

你可以试试这个,希望这能对你有所帮助。

代码语言:javascript
复制
if (floor(NSFoundationVersionNumber) <= NSFoundationVersionNumber_iOS_9_x_Max) {
          UIUserNotificationType allNotificationTypes =
          (UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge);
          UIUserNotificationSettings *settings =
          [UIUserNotificationSettings settingsForTypes:allNotificationTypes categories:nil];
          [application registerUserNotificationSettings:settings];
      } else {
          // iOS 10 or later
  #if defined(__IPHONE_10_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_10_0
          // For iOS 10 display notification (sent via APNS)
          [UNUserNotificationCenter currentNotificationCenter].delegate = self;
          UNAuthorizationOptions authOptions =
          UNAuthorizationOptionAlert
          | UNAuthorizationOptionSound
          | UNAuthorizationOptionBadge;
          [[UNUserNotificationCenter currentNotificationCenter] requestAuthorizationWithOptions:authOptions completionHandler:^(BOOL granted, NSError * _Nullable error) {
          }];
  #endif
      }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61934423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档