Pour publier une application iOS, vous avez besoin d’un ordinateur Mac car vous devez utiliser le logiciel Xcode. En fait, vous pouvez le faire sans ordinateur Mac, mais vous devez émuler votre ordinateur pour installer Mac OS, puis installer Xcode sur Mac OS. Voici un article à ce sujet:
https://www.udemy.com/blog/xcode-on-windows/

Une publication iOS sous un compte de développeur nécessite 4 fichiers, un fichier qui signera les certificats et 3 certificats. Le fichier qui signera les certificats et l’un des 3 certificats sont utilisés pour toutes les applications publiées sous un compte de développeur, et les deux autres certificats doivent être créés chaque fois que vous publierez une nouvelle application.

Celles qui sont utilisées pour toutes les applications publiées sous un seul compte développeur:
ces 2 fichiers seront créés une fois (la première fois que vous allez publier sous ce compte développeur). Il s’agit du CertSigningRequest (CSR) et du certificat de distribution iOS (iOS_Distribution). La CSR est créée à partir de votre ordinateur (doit être un Mac) à partir de l’accès au trousseau, et la distribution iOS_Distribution est créée à partir du centre des membres sur developer.apple.com.

Ces deux éléments doivent être stockés dans le dossier principal des certificats de ce compte développeur sur votre ordinateur (ce sera mieux en terme d’organisation si vous êtes prêt à publier d’autres applications sous ce compte). Ainsi, si nous considérons cet exemple, pour le client nommé «John Doe» qui a son propre compte de développeur, sur votre ordinateur, il y aura ces dossiers avec cette organisation:

  • Applications IOS
    • John Doe
      • Les certificats -> CSR et iOS_Distribution pour le compte John Doe doivent être stockés ici après les avoir créés
      • John Doe 1st app
        • Certificats
        • Captures d’écran

Vous utiliserez ce certificat CSR et iOS_Distribution pour toutes les applications que vous publierez pour John Doe, s’il y a plusieurs applications à publier sous ce compte. Vous créez une fois et vous les utilisez chaque fois que vous publiez une application pour John Doe sous son compte. Pour votre information, le trousseau d’accès pour créer le CSR se trouve dans votre Mac dans Applications> Utilitaires.

Les deux autres certificats sont le certificat Apple Push Services et le Mobile Provisionning Profile. Vous devrez les créer pour chaque application, comme vous pouvez le voir dans la vidéo. Vous les stockerez dans le dossier des certificats qui se trouve dans le dossier de l’application. Ainsi, si l’on considère l’exemple précédent, pour le client nommé «John Doe» qui possède son propre compte développeur:

  • Applications IOS
    • John Doe
      • Certificats
      • John Doe 1st app
        • Certificats -> Le certificat Apple Push Services et le profil de provisionnement mobile pour la première application John Doe doivent être stockés ici après les avoir créés
        • Captures d’écran

Vous aurez besoin de quelques captures d’écran pour remplir la feuille d’application sur iTunes. Vous pourrez les réaliser avec Xcode et surtout avec le simulateur iOS livré avec Xcode. Ouvrez le projet Xcode qui se trouve dans le dossier ios_source (voir dans la vidéo lors de l’ouverture du projet avec Xcode), puis choisissez la cible, iPhone 8 Plus par exemple, et cliquez sur le bouton Lecture (Pour votre info, les ios_sources d’une application peut être téléchargé depuis sa page depuis votre backoffice> Gérer> Applications):

Prenez des captures d’écran de l’application pour cette cible en utilisant CMD + S à partir de votre clavier, et faites-le pour chaque cible que vous souhaitez faire des captures d’écran. Avant de passer d’une cible à une autre, n’oubliez pas de cliquer sur le bouton «stop» dans Xcode.

Étape pour compiler une application iOS

Créez les éléments liés au compte développeur avec lequel vous allez publier

Vous devez créer un fichier CSR et un certificat de distribution iOS. Et vous pourrez utiliser ces éléments pour toutes les prochaines applications que vous devrez publier sous ce compte développeur -> conservez-les précieusement une fois créés.

Il doit être créé à partir de l’outil d’accès au trousseau de votre Mac. Ouvrez-le depuis Applications> Utilitaires> Accès au trousseau:

Dans le menu, sélectionnez «Accès au trousseau»> «Assistant de certificat»> «Demander un certificat à une autorité de certification»:

Dans la fenêtre qui s’ouvre, entrez l’adresse e-mail du compte développeur (ou toute autre adresse e-mail, cela n’a aucun impact), et entrez le nom de votre compte développeur, puis sélectionnez «Enregistré sur le disque»:

Enregistrez cette CSR sur votre disque, dans un dossier lié aux certificats de votre compte développeur.

Fermer la fenêtre.

– Connectez-vous à  https://developer.apple.com/membercenter/index.action  avec le compte développeur

– Cliquez sur « Certificats, identifiants et profils »

– Cliquez sur « Certificats » dans le menu de gauche, puis cliquez sur  :

– Choisissez « Distribution iOS (App Store et Ad Hoc) » et cliquez sur «Continuer»:

– Signez votre certificat de distribution iOS avec le fichier CSR que vous avez créé auparavant.

– Téléchargez le certificat de distribution iOS qui a été créé.

– Double-cliquez sur le certificat de distribution iOS (ios_distribution.cer) pour l’ajouter à l’accès au trousseau.

Créez les éléments liés à l’application que vous allez publier

Grâce à ce certificat, vous pourrez ajouter des notifications push, des achats intégrés et d’autres services à votre application. Dans notre cas, seul le service de notification push est intéressant.

– Cliquez sur « Identifiants » dans le menu de gauche, puis cliquez sur  :

– Choisissez « App IDs » et cliquez sur «Continue»:

– Entrez le nom de votre application, l’ID de bundle de l’application:

– Allez ci-dessous et sélectionnez « Notifications push » dans la liste des « Capacités »:

– Cliquez sur « Continuer ».

– Cliquez ensuite sur « S’inscrire ».

– Dans la liste, recherchez l’ ID d’application que vous venez de créer et cliquez dessus.

– Allez en bas et pour les notifications push , cliquez sur «Configurer»:

– Je n « La production du certificat SSL section » cliquez sur « Créer un certificat »:

– Cliquez sur «Choisir un fichier» et téléchargez le fichier CSR que vous avez créé auparavant pour ce compte de développeur (le même CSR que vous avez utilisé pour créer le certificat de distribution iOS pour ce compte de développeur):

– Téléchargez le certificat Apple Push Services (aps.cer) qui vient d’être créé. Stockez ce certificat dans un dossier lié à cette application sur votre Mac.

– Cliquez sur « <Tous les certificats ».

-Double-cliquez sur le certificat Apple Push Services (aps.cer) pour l’ajouter à l’accès au trousseau.

– Cliquez sur « Profils » dans le menu de gauche, puis cliquez sur  :

– Choisissez « App Store » sous « Distribution »:

– Sélectionnez l’ ID d’application de votre application et cliquez sur «Continuer»:

– Sélectionnez le certificat de distribution iOS associé à la CSR que vous avez utilisée pour signer le certificat Apple Push Services que vous avez créé juste avant (il est très important d’utiliser la distribution iOS qui a été créée avec la CSR utilisée pour signer l’aps.cer de cette application. N’oubliez pas, et n’oubliez pas que si vous créez un nouvel aps.cer pour cette application avec une autre CSR, vous devrez également créer un nouveau profil d’approvisionnement avec le certificat de distribution iOS créé avec cette CSR, puis de publier une mise à jour de votre application sur l’App Store)

 

– Cliquez sur « Continuer ».

– Nommez le profil d’approvisionnement et cliquez sur «Continuer»

– Téléchargez le profil de provisionnement  qui vient d’être créé. Stockez ce certificat dans le dossier lié à cette application sur votre Mac et qui contient le certificat Apple Push Services créé juste avant.

Compiler l’application

– Téléchargez votre code source iOS.

– Décompressez le dossier et ouvrez le fichier .xcworkspace en double-cliquant dessus.

– Allez dans Fichier > Paramètres de l’espace de travail   >>   Paramètres de l’espace de travail partagé > Build System puis sélectionnez « Legacy Build System »:

Remarque: vous devez d'abord créer votre application sur App Store Connect avant d'envoyer la build avec Xcode (étape 1> 3 de cette documentation ).

– Accédez au Keychain Access sur votre Mac

– Dans le menu de gauche, sélectionnez «Certificats»

– Dans la barre de recherche en haut à droite, saisissez l’ID du bundle de votre application

– Cliquez sur la flèche à gauche de votre certificat «Apple Push Services», une clé privée doit y être attachée

– Sélectionnez la clé privée et le certificat

– Faites un clic droit dessus

– Sélectionnez «Exporter 2 éléments…»

– Choisissez votre bureau comme destination (cela peut être un autre emplacement mais vous devrez ajuster le code que nous vous donnerons après)

– Choisissez votre propre mot de passe

– Ouvrez la console Terminal de votre Mac (depuis Applications> Utilitaires> Terminal)

– Dans le terminal, assurez-vous d’être situé sur votre bureau (vous devez avoir «Bureau» affiché puis votre nom d’utilisateur)

– Entrez cette commande:

«Openssl pkcs12 -in Certificates.p12 -out certificat.pem -nodes -clcerts»

(Si le terminal répond qu’il n’y a pas de fichier nommé “Certificates.p12”, allez sur votre bureau et vérifiez quel est le nom de ce certificat .p12, et entrez ce nom plutôt que Certificates.p12 dans la ligne de commande)

– Entrez le mot de passe que vous avez utilisé juste avant pour exporter votre certificat sur votre bureau

– Sur votre bureau, vous avez maintenant deux certificats: un Certificates.p12 et un certificat.pem.

– Déplacez ces fichiers dans le dossier de votre application sur votre Mac (avec le profil d’approvisionnement et aps.cer)

– Téléchargez ce certificat.pem sur la feuille d’application de votre backoffice

– Vous avez terminé !