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에서도 잘 작동합니다.