10
votes

Comment vérifier si un profil de provisioning de distribution iOS contient des notifications push activées?

J'ai une application qui était supposée avoir des notifications push activées, mais pour une raison quelconque ne les a pas. J'ai vu d'autres personnes télécharger et installer l'application, et cela ne les invite même pas à la permission d'envoyer des notifications push. Comme prévu, cette application n'apparaît pas dans leurs paramètres> notifications.

Cependant, sur mon iPad, je suis capable de recevoir des notifications push de cette application et apparaît sur mes paramètres> notifications. J'ai supprimé et réinstallé l'application pour vous assurer que j'avais la même chose que tout le monde a (et non une version de développement), et je suis toujours en mesure d'obtenir des notifications.

Maintenant, cette application a été écrite pour un client qui m'a envoyé tous les profils de provisioning (Dev, Adhoc, distribution) ainsi que les fichiers nécessaires pour pouvoir envoyer des notifications push, de sorte que je ne peux pas savoir avec certitude que tout a été correctement créé.

Ma théorie en ce moment est que:

  • Le profil Adhoc J'ai reçu était "correctement créé" (c'est-à-dire généré après avoir configuré APNS sur l'ID d'application de l'application dans le portail de provisioning)
  • Le profil de distribution que j'ai reçu a été généré avant de configurer les APNS pour cette application (et donc, ce n'est pas "Push activé")
  • La raison pour laquelle je suis capable de recevoir des notifications push sur mon appareil est parce que pendant le développement, j'ai installé une version adhoc , qui m'a incité aux autorisations de recevoir des notifications push et même si j'ai supprimé Cette version adhoc et téléchargé la version de la boutique, Le périphérique a "mis en cache" le fait que je suis prêt à recevoir des notifications et que je ne m'envoie plus pour cela . J'ai vérifié avec d'autres applications et, en effet, après avoir supprimé et les réinstaller, ils ne m'empêcheront plus que des autorisations de recevoir des notifications push.

    Alors mes questions sont:

    • Cette théorie a-t-elle un sens?
    • Si c'est le cas, cela signifie que je devrai demander au client de générer un nouveau profil de provisioning de distribution. Comment puis-je vérifier que ce profil est "Push activé"? (c'est-à-dire que je ne sais pas que je ne peux pas simplement installer une application compilée avec elle)

0 commentaires

4 Réponses :


23
votes

OK, j'ai peut-être trouvé un moyen de vérifier si les profils ont été activé ou non.

Si j'ouvre le fichier .MobileProvision sous forme de fichier texte, il y a un peu de xml (un plis apparemment) qui Je suppose que pour un profil de distribution devrait avoir ceci: xxx

et, en effet, le profil Adhoc avait ceci et le profil de distribution n'a pas, alors ... je suis Devinant c'était le problème.

Néanmène, tous les commentaires seraient utiles :)


1 commentaires

Et moyen facile d'afficher la partie XML dans le profil de provisionnement consisterait à exécuter la commande suivante dans Terminal.app Security CMS -D -I / /path/to/appstoreprofile.mobileProvision Recherchez les mêmes APS -Environnement clé.



7
votes

Légèrement différent, mais toujours utile: lorsque vous téléchargez une application sur iTunes Connect, vous pouvez vérifier s'il dispose de notifications push (ou d'autres droits) activés.

Pour ce faire, allez gérer vos applications, sélectionnez l'application, puis allez sur "Afficher les détails" pour la version que vous souhaitez vérifier.

à partir de là, allez sur la page "Détails binaires" - il y a un champ de droits qui montre ce que les droits dont le binaire a. Si des notifications push sont activées, vous verrez un " APS-Environment: Production " LIGNE IN.


0 commentaires

0
votes

Assurez-vous que le profil de provisioning de distribution est généré après la création d'APS_CERTIFICATE. Changements élevés Le profil peut manquer APS-Environment


0 commentaires

0
votes

J'ai ajouté ce qui suit à appdelegate.m afin que je puisse donc voir exactement quels paramètres ont été activés dans le débogage xxx

J'ai eu ceci à partir d'un lien très inclusif et utile : Tutoriel de service de notification Apple push - Partie 1 C'était extrêmement utile pour moi.


0 commentaires