Fehlende Push-Benachrichtigungsberechtigung

Ich habe eine Warnung von Apple erhalten, nachdem ich den binären Build eingereicht habe.

Missing Push Notification Entitlement - Your app appears to include API used to register with the Apple Push Notification service, but the app signature's entitlements do not include the "aps-environment" entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the "aps-environment" entitlement. See "Provisioning and Development" in the Local and Push Notification Programming Guide for more information. If your app does not use the Apple Push Notification service, no action is required. You may remove the API from future submissions to stop this warning. If you use a third-party framework, you may need to contact the developer for information on removing the API. After you've corrected the issues, you can use Xcode or Application Loader to upload a new binary to iTunes Connect. 

Ich verwende keine Push-Benachrichtigungen oder Frameworks von Drittanbietern wie Coredova, aber ich bin mir nicht sicher, warum ich diese Warnung immer wieder bekomme. Ich habe die folgenden Links durchgespielt, aber überall ist es das Framework-Problem eines Drittanbieters.

Ich möchte den Push-Benachrichtigungsdienst nicht aktivieren, da ich ihn nicht in meiner App verwenden werde. Jede Hilfe wäre willkommen, um diese Warnung zu beheben. Danke im Voraus.

Hinweis: Schon mehrmals habe ich versucht, meine Profile und Zertifikate zu löschen und neu zu erstellen.

Fehlende Warnung für Push-Benachrichtigungsberechtigung

Fehlende Push-Benachrichtigungsberechtigung

IOS fehlt Push-Benachrichtigungsberechtigung

Ich bin ziemlich sicher, dass es ein Fehler in Apples System ist. Ich habe gestern eine App hochgeladen und diese Nachricht erhalten. Diese App wurde mindestens 30 Mal ohne Probleme aktualisiert. Ich habe in der letzten Version keinen Push-Benachrichtigungscode hinzugefügt, und ich verwende keine Frameworks wie PhoneGap oder Cordova, die diese Nachricht verursachen könnten. Es erscheint nicht unter Benachrichtigungen auf dem Gerät.

Ich habe die App nach Push-Benachrichtigungscode durchsucht, ohne etwas zu finden:

grep -r “registerUserNotificationSettings”.
grep -r “registerForRemoteNotificationTypes”.

Ich habe schließlich versucht, die vorherige Version hochzuladen, die im Juli genehmigt wurde (und keine E-Mail generierte). Diesmal habe ich die Warnemail auch für diese Version bekommen. Also denke ich, dass Apple falsch liegt und ich werde meine Chancen nutzen und hoffe, dass es trotz der Warnung genehmigt wird.


EDIT: Diese Antwort von einem Apple-Mitarbeiter im Apple Developer Forum gefunden:

“Diese Benachrichtigung ist nur eine Warnung, keine Ablehnung.

Der App-Validierer sucht nach einer Implementierung der UIApplicationDelegate-Methodenanwendung: didRegisterForRemoteNotificationsWithDeviceToken: in der App. Sie erhalten die Warnung, die Sie beschrieben haben, wenn Ihr App-Delegat diese Methode implementiert und keine aps-environment-Berechtigung besteht.

Es ist möglich, dass eine von Ihnen verwendete Bibliothek eines Drittanbieters diese Methode implementiert hat, obwohl Ihre App nichts mit Push-Benachrichtigungen zu tun hat. In diesem Fall können Sie die Warnung ignorieren. Hier können Entwickler, die Push-Benachrichtigungen verwenden, wissen, ob sie ihre App möglicherweise falsch signiert haben. ”


BEARBEITEN 2: Ich habe jetzt zwei verschiedene Apps, die trotz der Erstellung der Warn-E-Mail ohne Probleme genehmigt wurden

Hier sind ein paar Dinge, die Sie vielleicht überprüfen möchten:

Apple-Entwicklerzentrum

Im Abschnitt IDs > App-IDs sollten Push-Benachrichtigungen nicht aktiviert sein, wenn Sie sie nicht implementieren.

Apple Developer Center: Anwendungsdienste

Sie müssen jedes Mal, wenn Sie einen Dienst aktivieren oder deaktivieren, ein neues mobiles Provisioning generieren. Stellen Sie sicher, dass Push-Benachrichtigungen nicht in Ihren App-aktivierten Diensten aufgeführt sind:

Bildbeschreibung hier eingeben

Xcode-Projektzieleinstellungen

Auf der Registerkarte “functionen” Ihres Anwendungsziels sollten Push-Benachrichtigungen deaktiviert sein.

In den Hintergrundmodi sollte auch kein Remote-Benachrichtigungsmodus vorhanden sein .

Bildbeschreibung hier eingeben

Anwendungsbeauftragter

Stellen Sie abschließend sicher, dass Ihr Anwendungsdelegat sich nicht für Remotebenachrichtigungen registriert und dass keine Remotebenachrichtigungsdelegaten implementiert werden. Sie sollten sicherstellen, dass die folgenden Methoden nicht aufgerufen oder implementiert werden:

  • registerForRemoteNotifications() ( registerForRemoteNotificationTypes() vor iOS 8.0 )
  • unregisterForRemoteNotifications()
  • isRegisteredForRemoteNotifications()
  • application(_:didRegisterForRemoteNotificationsWithDeviceToken:)
  • application(_:didFailToRegisterForRemoteNotificationsWithError:)
  • application(_:didReceiveRemoteNotification:fetchCompletionHandler:)
  • application(_:handleActionWithIdentifier:forRemoteNotification:completionHandler:)
  • application(_:didReceiveRemoteNotification:)

Ich hoffe, das hilft!

Ich erhalte die gleiche E-Mail, aber es scheint nur eine Warnung zu sein und meine Apps wurden für den Store freigegeben.

Ich habe eine App, die ich in den letzten 2 Jahren aktualisiert habe, sie hat keine Push-Benachrichtigungen und es war alles gut bis zu meiner letzten Veröffentlichung, als ich diese Warnung bekam. Nach der Kontaktaufnahme mit Apple scheint dies nur eine Warnung zu sein und sollte nicht berücksichtigt werden. Ich denke, es ist ein Fehler auf ihrer Seite, also hoffentlich werden sie es in der nächsten Xcode-Update behoben werden.

Gehe zu Ziel> Fähigkeiten,

Die Push-Benachrichtigung sollte ohne Probleme aktiviert werden und der Hintergrundmodus sollte ebenfalls aktiviert sein.

Ich würde mit dem Code für registerForRemoteNotificationTypes oder registerUserNotificationSettings suchen, die beide für die Registrierung von Push-Benachrichtigungen verwendet werden (abhängig von der Version des Betriebssystems).

Wenn Sie einen von ihnen finden, ist das das Problem. Sie müssen sie entfernen, wenn Sie keine Benachrichtigungen verwenden.

Vielleicht liegt das Problem daran, dass Sie lokale Benachrichtigungen verwenden und sich versehentlich auch für Remote-Benachrichtigungen registrieren?

Nach 1 Monat intensiver Recherche und Trails funktionierte das für mich: Fehlende Push Notification Entitlement Warning

Auch für mich sieht das aus wie ein Käfer von Apple. Die neueste Version meiner App bekam ebenfalls die Warnung, wurde aber innerhalb einer Woche genehmigt. In dieser neuen Version verwende ich ein extrem einfaches Today-Widget. Daher muss ich das NotificationCenter-Framework verlinken. Das Widget meldet einige Daten aus der enthaltenen App. Dazu werden einfach die NSUserDefaults verwendet, die über die Berechtigung für App-Gruppen freigegeben sind. Nichts entfernt so gut wie Push-Benachrichtigungen.

Apple schreibt, dass Push-Benachrichtigungen verwendet werden können, um Today-Widgets zu verwalten:

https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/NotificationCenter.html

Vielleicht hat deshalb auch das NotificationCenter-Framework die Warnung ausgetriggers, wenn auch irrtümlich.