2010-04-10 3 views
12

Mon application vient d'être approuvée pour Apple Store. Je l'ai téléchargé et installé sur mon iPhone - mais il semble que les notifications push soient cassées!Les notifications push fonctionnent pour Ad Hoc, mais pas lorsqu'elles sont téléchargées à partir de l'Apple Store

Je testais avec succès les notifications push en production en utilisant un profil de provisionnement ad hoc. Je n'ai eu aucun problème. La seule chose que j'ai faite différemment quand j'ai soumis à apple était en utilisant un profil de distribution de magasin d'applications.

L'application ne me demande jamais (ou quelqu'un d'autre qui l'a téléchargé) si je veux recevoir des notifications push. Par conséquent, le téléphone ne parle jamais à mon serveur pour envoyer le jeton de poussée (parce que l'application: didRegisterForRemoteNotificationsWithDeviceToken: n'est probablement jamais appelée). De plus, l'application n'apparaît pas dans l'application Paramètres sous les paramètres de notification.

Que pourrais-je faire de mal ??

EDIT: Alors que l'application était en attente d'approbation, j'avais des problèmes pour générer mon certificat push de production. Cela pourrait-il être pertinent?

Problem generating APN SSL certificate after submitting to apple store

Répondre

21

Assurez-vous d'avoir créé votre ID d'application de production et activé les notifications push. Ensuite, créez le profil d'approvisionnement pour cette application. Téléchargez et ouvrez le fichier avec un éditeur de texte pour devez vous assurer que le profil contient cette clé et la valeur:

aps environnement production

Sinon, assurez-vous que vous avez vraiment permis à l'ID d'application pour la production appuyez avant de générer votre profil d'approvisionnement.

Après avoir effectué votre construction, vous pouvez vérifier la version finale de vérifier qu'il a le droit aps-environnement (vous cherchez le code aps environnement signature droit sous la rubrique « Exigences internes):

codesign - dvvvv --entitlements - MyCoolApp.app

+1

Oh ouah merci! Ouais, c'était ça. J'ai vérifié le profil de distribution d'origine, et cette clé n'était pas là. Je suppose que l'ordre dans lequel vous prenez ces mesures est vraiment important. – MikeQ

+0

Grande résolution. C'est très rassurant de pouvoir vérifier dans l'application compilée finale si l'aps est réglé ou non. – scottbates22

3

Avez-vous utilisé le même ID d'application pour les deux ad hoc et la distribution de fichiers mobileprovision? Il doit être un identifiant complet, plutôt que partiel.

+0

En fait, voulez-vous dire un identifiant non générique? Si oui, c'était un identifiant d'application complètement différent J'ai réellement testé l'application ad hoc en utilisant l'ID qui s'est terminé avec ".adHoc" et qui a bien fonctionné - alors j'ai soumis l'application en utilisant un identifiant qui se terminait par ".release" .C'était le seul changement Une fois que j'ai découvert ce problème, j'ai créé un profil de provisionnement ad hoc pour l'ID de l'application ".release" et l'ai installé sur mon téléphone - et les notifications push ont fonctionné! – MikeQ

Questions connexes