Push notification marche en développement et non en production

mbouissierembouissiere Membre
05:25 modifié dans Apple Developer Programs #1
Bonjour tout le monde,

Depuis un mois environ, j'essaye de résoudre un bug que j'ai sur mon application.

J'ai publié cette application sur un compte apple depuis un mois aussi, tout est ok du côté compte developer:
-Distrib Developer certificate: Valide.
-Production Push SSL Certificate: Valide et Actif.
-Distribution Provisioning Profiles: Valide et Actif.

Du côté de mon code il n'y a aucun problème car la même version fonctionne avec les certificats et provisionning de dev.

J'ai essayé plusieurs fois de re-générer ces certificats/provisionning j'ai même mis à  jour l'application... rien n'y fait.

J'ai juste une piste à  mon problème: la toute première fois que j'ai publiée cette application je n'avais pas de certificat de push notification (prod) de généré à  l'instant t de la publication, il a été généré juste après... est-ce pour cela que ce certificat de push ne fonctionne pas ?

Si quelqu'un à  déjà  rencontré ce problème ou aurait une idée de solution

Merci d'avance.

Réponses

  • StephSteph Membre
    05:25 modifié #2
    Tu utilises quoi pour envoyer tes notifs ?

    EasyAPNS ? Si oui tu as changé le certificat de dev pour celui de prod dans la base ?

    Si tu as tes propres script, vérifie que tu envoies bien vers l'url de prod apple et non celle pour le dev (je ne l'ai plus en tête mais celle de dev il y a sandbox dedans).

  • mbouissierembouissiere Membre
    05:25 modifié #3
    Hello,

    Tout d'abord merci pour ta réponse.

    Alors pour envoyer mes notifs j'ai une servlet Java qui utilise bien l'adresse de prod Apple: gateway.push.apple.com
    J'ai bien mis le certificats de prod sur mon serveur également.

    Ce que j'ai oublié de dire et qui est un détail de grande importance sur mon souci:
    En production mon appli n'est pas présente dans les options de notif des réglages de l'iPhone user. Ce qui me laisse à  penser que le problème n'est pas localiser sur le code ni mon serveur mais bien dans les certificats de production généré. D'ailleurs en mode dèv mon app apparait dans les settings du tel.
  • AliGatorAliGator Membre, Modérateur
    05:25 modifié #4
    T'as bien retéléchargé ton certificat et ton Provisionning Profile depuis developer.apple.com après avoir rajouté le PUSH dedans et les avoir re-généré ?
  • mbouissierembouissiere Membre
    mars 2011 modifié #5
    dans 1301414597:

    T'as bien retéléchargé ton certificat et ton Provisionning Profile depuis developer.apple.com après avoir rajouté le PUSH dedans et les avoir re-généré ?


    Yep, j'ai refait le processuss à  0 plusieurs fois.
    La mon dernier essais consistait à :
    • supprimer tout, certificats + provisionning (dev et prod)
    • regénéré certificats + provisionning + binaire
    • mise à  jour de l'appli en prod côté Apple (j'attend la validation d'Apple pour voir si il y a du changement) + mise à  jour de ma servlet de push sur mon serveur (avec certificat de push)


    Logiquement j'ai repris le processus dans l'ordre. J'avais fait de même, en développement, pour tester, et là  aucun souci tout marche sur des roulettes.
    Plus je planche plus je me dis que c'est mon ordre de départ qui a foiré, le fait d'avoir, à  la première publication de l'application, généré dans un second temps le certificat de push (prod).

    Merci de votre aide en tout cas :)
  • mbouissierembouissiere Membre
    05:25 modifié #6
    Hello tout le monde et désolé pour le retard de ma réponse.

    J'ai finalement trouvé la solution. Ma seule piste était finalement la bonne. Aprés re-publication de mon app tout fonctionne (en fait mise à  jour de l'app sur l'iTunes connect).

    Donc mon problème était de bien respecter l'ordre:

    - Générer tout les certificats (production + notification prod).
    - Déployer le tout sur les serveurs qui vont gérer les notifs.
    - Et finalement publier l'application.

    Attention: Si jamais le certificat de notification est généré aprés publication, une re-publication ne suffit pas, il faut supprimer l'actuel certif notif, le re-générer puis re-publier l'app.

    En espérant que ca aide certains.

    A+
Connectez-vous ou Inscrivez-vous pour répondre.