我有一个与APNS设备令牌相关的问题。之前我使用的是Xcode 10.2和iOS 12.1。在那时,我会在委托方法中获取设备令牌。
-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
我是这样注册APNS的,之前它一直工作得很好。
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
center.delegate = self;
[center requestAuthorizationWithOptions:(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge) completionHandler:^(BOOL granted, NSError * _Nullable error){
if(!error){
[[UIApplication sharedApplication] registerForRemoteNotifications];
}
}];
现在,当我将iOS 13安装到我的iPhone设备上并使用Xcode 11时,委托方法didRegisterForRemoteNotificationsWithDeviceToken没有被调用。无法理解这个问题。
我已经对此进行了研究,我知道从委托方法获取令牌有一些变化,但在我的情况下,委托方法甚至没有被调用。同样,在iOS 12上正常工作。