web-dev-qa-db-fra.com

Droits d'accès à la notification push manquants

J'ai reçu un message d'avertissement d'Apple après la soumission de la construction binaire.

    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.

Je n'utilise pas les notifications Push ni les frameworks tiers tels que Coredova, mais je ne suis pas sûr de savoir pourquoi je reçois cet avertissement encore et encore. J'ai parcouru les liens suivants mais, partout, il s'agit d'un problème de tiers. 

Je ne souhaite pas activer le service de notification Push car je ne vais pas l'utiliser dans mon application. Toute aide serait appréciée pour résoudre cet avertissement. Merci d'avance.

Remarque: j'ai déjà essayé plusieurs fois de supprimer et de recréer mes profils et certificats.

Avertissement relatif au droit de notification Push manquant

Droits de notification push manquants

IOS Autorisation de notification Push manquante

43
Sasi M

Je suis à peu près certain qu'il s'agit d'un bogue dans le système de vérification des pommes. J'ai téléchargé une application hier et j'ai reçu ce message. Cette application a été mise à jour au moins 30 fois sans aucun problème. Je n'ai ajouté aucun code de notification Push dans la dernière version et je n'utilise aucun framework comme PhoneGap ou Cordova qui pourrait causer ce message. Il n'apparaît pas sous les notifications sur l'appareil.

J'ai cherché dans l'application le code de notification Push sans rien trouver:

grep -r "registerUserNotificationSettings".
grep -r "registerForRemoteNotificationTypes". 

J'ai finalement essayé de télécharger la version précédente qui avait été approuvée en juillet (sans générer de courrier électronique). Cette fois, j'ai reçu le mail d'avertissement également pour cette version. Je pense donc qu'Apple a tort et que je vais prendre mes risques et espérer qu'il sera approuvé malgré l'avertissement.


EDIT: réponse trouvée par une équipe Apple sur le forum des développeurs Apple:

"Cette notification est un avertissement seulement, pas un rejet.

Le validateur de l'application recherche une implémentation de l'application de la méthode UIApplicationDelegate: didRegisterForRemoteNotificationsWithDeviceToken: dans l'application. Vous recevrez l'avertissement que vous avez décrit si votre délégué d'application implémente cette méthode et qu'il n'y a pas de droit aps-environment.

Il est possible qu'une bibliothèque tierce que vous utilisez ait implémenté cette méthode même si votre application ne fait rien avec les notifications Push. Dans ce cas, vous pouvez simplement ignorer l'avertissement. Il est là pour informer les développeurs qui utilisent les notifications Push s’ils ont peut-être mal signé leur application. "


EDIT 2: J'ai maintenant deux applications différentes qui ont été approuvées sans problème malgré la génération de l'email d'avertissement

46
Sten

Je reçois le même courrier électronique, mais cela ne semble être qu'un avertissement et mes applications ont réussi à être approuvées par le magasin. 

J'ai une application que j'ai mise à jour au cours des 2 dernières années, elle n'a pas de notifications Push et elle a tout bien fonctionné jusqu'à ma récente publication lorsque j'ai reçu cet avertissement. Après avoir contacté Apple, il semble que ce n’est qu’un avertissement et qu’il ne faut pas en tenir compte. Je pense que c'est une erreur de leur côté, alors j'espère qu'ils le corrigeront dans la prochaine mise à jour de Xcode.

1
mgm

Aller à la cible> Capacités,

La notification push doit être activée sans problème et le mode Arrière-plan doit également être activé.

1
Amit Ajmera

Pour moi aussi, ça ressemble à un bug d'Apple. La dernière version de mon application a également reçu l'avertissement, mais a été approuvée dans la semaine. Dans cette nouvelle version, j'utilise un widget Today extrêmement simple. Ainsi, je dois lier le cadre NotificationCenter. Le widget rapporte des données de l'application contenante. Pour ce faire, il utilise simplement les NSUserDefaults qui sont partagés via le droit App Groups. Rien de plus sophistiqué que la notification Push à distance. 

Apple écrit que la notification Push peut être utilisée pour gérer les widgets Aujourd'hui:

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

C'est peut-être pour cette raison que le cadre NotificationCenter a déclenché l'avertissement, mais à tort.

1
SuanMei

Je commencerais par rechercher le code pour registerForRemoteNotificationTypes ou registerUserNotificationSettings, qui servent tous deux à enregistrer des notifications Push (selon la version du système d'exploitation).

Si vous en trouvez un, c'est le problème. Vous devez les supprimer si vous n'utilisez pas de notifications.

Le problème est peut-être que vous utilisez les notifications locales et vous vous inscrivez accidentellement pour les notifications à distance également?

0
Rony Rozen

Après 1 mois de recherches intensives et de pistes, cela a fonctionné pour moi: Avertissement relatif au droit à une notification push manquante

0
Anish Kumar