Publier une application Ionic (Cordova) pour Apple Store

Voici un petit guideline (de la même manière que « Publier une application pour Windows Store » ou encore « Publier une application Ionic (Cordova) pour Google Play« )  pour celles et ceux qui veulent créer une application IonicJs et la publier sur Apple Store.

Pour publier une application IOS il vous faudra :

  • Un Mac avec Xcode d’installé
  • Un Ipad/Ipod ou Iphone pour déclencher la publication

Création du projet Ionic

Je vais commencer par le commencement : création d’une application IonicJs que dont le nom sera « Mon application » et son Id sera « fr.mondomaine.app ».

Configurer le config.xml :

  • Spécifiez un ID
  • Spécifiez la version
  • Spécifiez le nom 
  • Spécifiez la description

Petit aparté sur le choix de l’ID, si comme pour un de mes projets votre ID contient un tiret (fr.mon-domaine.app par exemple) sachez que :

  • ça ne posera pas de problème pour IOS
  • ça posera problème pour Google Play, l’ID risque d’être renommée « fr.mon_domaine.app »
  • ça posera problème pour Windows Store qui ne supporte ni tiret ni underscore

Création de la plateforme

Pour pouvoir compiler il vous faudra au préalable installer les package NodeJS « ios-sim » et « ios-deploy » de cette façon :

Avant de créer la plateforme, il faut s’assurer que le script soit accessible en exécution

Ensuite la création de la plateforme se fait de manière ordinaire :

Avant d’ouvrir le projet dans Xcode, pour ma part je dois modifier les permissions du projets de cette manière :

Lancement dans l’émulateur

Maintenant dans le Finder il suffit de double cliquer sur le fichier « xcodeproj »

 

 

Puis penser à choisir un émulateur (Iphone 7 Plus par exemple)

Puis cliquez sur « Run » et voyez votre application dans l’émulateur. Pensez à faire des Screenshot (CMD + 3) pendant que vous y êtes !

Création du Compte Apple Store

Ensuite vous allez devoir débourser créer un compte Apple Développeur. Il vous en coûtera environ 99€ par an. Si vous oublier de renouveler, Apple retirera votre application du store.

  1. Rendez vous sur : https://developer.apple.com/account/ios/identifier/bundle
  2. Créer un Identifiant d’application (celui du fichier config.xml) : fr.mondomaine.app
  3. Allez sur https://itunesconnect.apple.com/
  4. Dans « Mes Apps », ajouter une application en pointant sur l’ID défini juste avant

Publier l’application

La publication n’est accessible que si l’application a été lancée au moins une fois sur un appareil physique. Branchez donc votre Iphone allez das les propriétés de votre projet.

Vous devrez définir une « Team » et un « débloquer » votre Iphone pour recevoir le Build de votre application. Dans la partie du haut à gauche choisissez votre Iphone puis cliquez sur « Run ». L’application se lancera alors sur votre appareil.

 

Désormais dans « Product », « Archive » est accessible. Déclenchez l’archive, cela aura pour premier effet de créer un Build Realease

 

Il est possible que vous ayez une erreur eu moment du Build Release :

Pour ma part j’ai résolu ce problème en décochant « Automatically manage Signing » et en définissant une signature « XC IOS » :

Relancez ensuite « Product / Archive » et il vous sera alors proposé d’envoyer le Build sur votre ItunesConnect. Le certificat est généré pendant cette étape vous ne vous occuperez de rien

 

Si par malheur l’authentification avec Itunes se passe mal et que vous avez la fameuse erreur 22421 :

Exécutez alors les commandes suivantes :

Ceci aura pour effet de régénérer iTMSTransporter

 

Pour terminer, il vous faudra finaliser la publication de votre application sur  https://itunesconnect.apple.com/.

Renseigner les choses habituelles (description, screenshot, langue, pays, évaluation de l’age etc.) puis soumettre l’application pour contrôle par l’équipe Apple. Pour ma part en quelques heures et l’application était déjà disponible sur le store.

 

 

A propos de l'auteur :  Fabien Lierville

Chef de projet en Ingénierie Informatique Industrielle avec une expérience significative de 17 années. Gestion de projet à dominante pharmaceutique avec le respect de méthode qualité (GAMP V5).
Véritable passionné d’informatique depuis l’Amstrad cpc 6128 ;)

Laisser un commentaire