Certificat de push pour déploiement Ad Hoc
Bonjour à tous,
J'ai une question pour laquelle je n'arrive pas à trouver de réponse.
J'ai une application qui gère la réception de notifications (je possède 2 certificats de push (sandbox et prod)), jusque là , pas de problèmes.
Lorsque je compile mon application via xCode, avec un certificat Developer (et non Distribution) et le provisionning profile correspondant, et en utilisant le certificat de push sandbox, je reçois bien les notifications.
Par contre, lorsque j'archive mon application (save for Ad Hoc deployment) après export, et que je mets mon application à disposition sur un store interne (via .plist et .ipa), je la télécharge, et lorsque je fait des tests de réception de notifications, je ne reçois rien du tout...
Est-ce que cela vient du fait que j'utilise un certificat de push sandbox au lieu de celui de production ? Car il ne me semble pas avoir utilisé ce certificat de push de prod pour ce déploiement par le passé, mais celui de sandbox, mais peut-être que je me trompe...
Merci de vos réponse !
Réponses
As tu bien changé le certificat sur ta partie serveur ?
Oui oui, le certificat côté serveur est bien installé, puisque je reçois bien des notifications en compilant directement avec xCode...
Voir ici:
http://forum.cocoacafe.fr/topic/5913-push-notification
En dehors du certificat différent en développement et production (le AdHoc utilise le certif de prod), il faut aussi se connecter sur gateway.push.apple.com et plus gateway.sandbox.push.apple.com.
il faut se connecter sur le serveur Apple (gateway.push.apple), mais ça se fait côté serveur pas applicatif ? Car je passe par un prestataire pour l'installation des serveurs de push. Ce n'est donc pas moi qui gère cela (mon prestataire est sensé connaà®tre l'installation des certificats de push). Je vais me renseigner au cas où il ai fait une erreur...
Bon, finalement j'ai trouvé réponse à ma question, et c'est vraiment très bête...
Depuis xCode 6, les distribution Ad Hoc se font obligatoirement avec le certificats de Distribution iphone (chose qui m'avais totalement échappé). Ce qui signifie Provisioning Profiles de Distribution et certificats de push de production.
Il était possible d'exporter l'application avec les certificats de Développer (et provisioning proflie de dev et cetificats push sandbox) dans xCode 5, mais plus depuis xCode 6...
Du coup c'était tout à fait normal que ça ne marche pas... <_<
J'ai réussi à résoudre mon problème grâce au lien suivant, on ne sait jamais, cela aidera peut-être quelqu'un un jour ! ^^
La commande que j'ai utilisée pour exporter mon archive en .ipa :
xcodebuild -exportArchive -exportFormat ipa -archivePath nom_archive.xcarchive/ -exportPath ~/Desktop/nom_export.ipa -exportProvisioningProfile votre_provisioning_profile
Depuis, je reçois bien les notifications demandées.
Merci pour le retour d'expérience.