У мене виникла проблема, пов’язана з маркером пристроїв 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.