이 질문에 대한 과거의 질문을 보았지만이 답변은 이미 내 프로젝트에 적용되었지만 pushRegistry() 대리자 메서드가 호출되지 않습니다. pushRegistry : didUpdate : pushCredentials가 호출되지 않음
import UIKit
import PushKit
import UserNotifications
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterDelegate{
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
let notificationSettings = UIUserNotificationSettings(types: [.badge, .sound, .alert], categories: nil)
application.registerUserNotificationSettings(notificationSettings)
UNUserNotificationCenter.current().delegate = self
UIApplication.shared.registerForRemoteNotifications()
let voipRegistry = PKPushRegistry(queue: DispatchQueue.main)
voipRegistry.desiredPushTypes = Set([PKPushType.voIP])
voipRegistry.delegate = self;
return true
}
...
}
extension AppDelegate: PKPushRegistryDelegate {
func pushRegistry(_ registry: PKPushRegistry, didUpdate pushCredentials: PKPushCredentials, for type: PKPushType) {
NSLog("voip token: \(pushCredentials.token)")
}
다음 응용 프로그램 기능
이 활성화되었습니다 : 여기우선 코드의 - 푸시 알림 - 원격 알림
내가 엑스 코드 9.1을 사용하고 있습니다 - 배경 을 가져 오기 - 이 배경 모드 Beta는 더 이상 Voip을 명시 적 기능으로 사용하지 않으므로 더 이상 필요하지 않으며 PushKit을 가져 오기 만하면 충분합니다.
프로비저닝 포털에서는 앱 ID에 대해 푸시 알림을 사용할 수 있습니다.