问题的原因是应用缺少必要的推送通知权限。需要在Xcode中进行设置,以使应用程序正常运行。以下是解决此问题的代码示例。
1.在Xcode中找到您的应用程序的“Capabilities”选项。
2.确保“Push Notifications”开关已启用。
3.接下来,您需要为您的应用程序生成应用程序ID,并为其启用推送通知。
4.在您的AppDelegate类中添加以下代码:
import UserNotifications
@UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
UNUserNotificationCenter.current().delegate = self
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .badge, .sound]) { (granted, error) in
if granted {
DispatchQueue.main.async {
application.registerForRemoteNotifications()
}
}
}
return true
}
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
let token = deviceToken.map { String(format: "%02.2hhx", $0) }.joined()
print("Device token: \(token)")
}
func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) {
print("Failed to register for remote notifications: \(error.localizedDescription)")
}
}
5.在Info.plist文件中添加以下代码:
或
6.清理并重新构建您的应用程序。 您现在应该不再收到关于“Missing Push Notification Entitlement ITMS-90078”的警告。