(Attention, le trafic sous la coupe)Préparer et distribuer une application iOS au sein d'une entreprise n'est pas une tâche facile, surtout lorsque l'application est écrite sur Windows à l'aide de Visual studio, et la plupart des didacticiels sur Internet décrivent MacOS exclusivement à l'aide de Xcode. Cependant, après des heures de bataille avec l'idée d'Apple, nous avons réussi à accomplir ce qui semblait impossible, à savoir:
croiser une girafe avec un rhinocéros pour assembler l'application Xamarin IOS dans l'archive Xcode, immédiatement sur MacOS, après avoir reçu les fichiers nécessaires à la distribution, et enfin créer un lien vers l'application sera distribuée.
Oui, ce n'est pas très difficile à entendre. Cependant, quand il s'agit de développer des applications pour les appareils Apple, tout devient plusieurs fois incompréhensible et compliqué. Et après une victoire triomphale mais difficile, nous avons voulu laisser notre trace dans l'histoire en écrivant ce tutoriel.
Prérequis:1. Il doit y avoir un compte Apple Enterprise - 299 $ par an.
1 étape. Créez un certificat.
1. Tout d'abord, sur un Mac, vous devez créer une demande pour créer un certificat. Pour ce faire, ouvrez l'accès au trousseau, par exemple, via une recherche:


2. Sélectionnez l'accès au trousseau dans le coin supérieur gauche de l'écran, sélectionnez «assistant de certificat» -> «demander un certificat à une autorité de certification» dans le menu contextuel, la fenêtre correspondante s'ouvrira:


3. Dans la fenêtre qui apparaît, remplissez les champs «Adresse e-mail de l'utilisateur» - votre e-mail, et «Nom commun» - le nom de la clé. Et sélectionnez également l'option «Enregistré sur le disque» pour enregistrer le fichier de demande sur l'ordinateur. Et appuyez sur le bouton "Continuer":

4. Ensuite, une fenêtre apparaîtra dans laquelle vous devrez spécifier le nom du fichier de demande et sélectionner le chemin pour enregistrer le fichier. Nous apportons les modifications nécessaires et économisons:

5. Une fois l'enregistrement réussi, la fenêtre suivante apparaît. Cliquez sur "Terminé":

6. Une fois que nous pouvons voir que le fichier de demande a été créé dans l'emplacement d'enregistrement (dans cet exemple, sur le bureau). Ou nous pouvons voir la clé créée dans la liste des clés dans «accès au trousseau»:


7. Ensuite, nous devons créer un certificat, nous pouvons le faire sur le site Web d'
Apple pour les développeurs en nous connectant à notre compte:



8. Après une connexion réussie, nous allons dans «Certificats, ID et profils», également sur la page des certificats, vous devez vous assurer que «IOS, tvOS, watchOS» est sélectionné:


9. Ensuite, sur la page, dans la section «Certificats», sélectionnez «Production»:

10. Sur la page, cliquez sur le bouton avec l'image «+» pour créer un certificat. Une page apparaît sur laquelle vous devez sélectionner le type de certificat à créer:


11. Dans cet exemple, nous nous intéressons à la méthode de distribution interne, donc sélectionnez "In-House and Ad Hoc" comme type de certificat. Après avoir cliqué sur le bouton "Continuer":

12. Après être passé à la page suivante pour créer un certificat, il décrira comment créer une demande MacOS pour un certificat. Nous avons déjà créé cette demande dans les paragraphes précédents. Appuyez sur le bouton «Continuer»:

13. À l'étape suivante, vous devrez télécharger le fichier de demande que nous avons créé précédemment sur le bureau. Après un téléchargement réussi, cliquez sur «Continuer»:


14. Après cela, le certificat sera généré et sur la page suivante, il pourra être téléchargé sur l'ordinateur:

15. Téléchargez le certificat, dans cet exemple, sur le bureau. On peut également voir le certificat créé sur le site:


Comme nous pouvons le voir, nous avons finalement reçu un certificat. L'étape suivante consiste à créer un ID d'application.
Étape 2. Créez l'ID des applications.
À l'étape précédente, nous avons créé le certificat avec succès, nous devons maintenant créer l'ID des applications. Pour ce faire, vous avez besoin de:
1. Sur le site Web
Apple pour les développeurs , dans votre compte, accédez d'abord à «Certificats, ID et profils», également sur la page des certificats, vous devez vous assurer que «IOS, tvOS, watchOS» est sélectionné:


2. Ensuite, sur la page, dans la section «Identifiants», vous devez sélectionner «App IDs»:


3. Sur la page, cliquez sur le bouton avec l'image «+» pour créer l'ID d'application. Une page apparaît sur laquelle vous devez sélectionner les paramètres de l'ID créé. Les paramètres d'ID sont individuels pour votre application, la seule clarification importante est que dans la colonne ID d'application du suffixe, vous devez sélectionner l'ID d'application explicite:


4. Après avoir créé l'ID d'application, il peut être vu sur le site:

À la suite de deux étapes, nous avons reçu avec succès un certificat et créé un ID d'application. Ensuite, nous devons créer des profils d'approvisionnement à l'aide du certificat créé. Et cela nous amène à l'étape suivante, «Étape 3. Création de profils d'approvisionnement. "
Étape 3. Création de profils d'approvisionnement.
À l'étape précédente, nous avons créé le certificat avec succès, nous devons maintenant créer des profils d'approvisionnement avec lui. Pour ce faire, vous avez besoin de:
1. Sur le site Web
Apple pour les développeurs , dans votre compte, accédez d'abord à «Certificats, ID et profils», également sur la page des certificats, vous devez vous assurer que «IOS, tvOS, watchOS» est sélectionné:


2. Ensuite sur la page, dans la section «Profils de provisionnement», sélectionnez «Distribution»:


3. Sur la page, cliquez sur le bouton avec l'image «+» pour créer les profils d'approvisionnement. Une page apparaît sur laquelle vous devez sélectionner le type de profil à créer:

4. Dans cet exemple, nous sommes intéressés par la méthode de distribution interne, respectivement, sélectionnez le type de profil "In House" et cliquez sur le bouton "Continue":

5. Sur la page suivante, sélectionnez l'ID d'application créé précédemment à l'étape 2:

6. Après avoir cliqué sur le bouton «Continuer», nous procéderons à la sélection du certificat, nous l'avons créé à l'étape 1. Ensuite, cliquez sur le bouton "Continuer":

7. Sur la page suivante, nous devons remplir le champ avec le nom du profil et vérifier les données avant de générer le profil:

8. Une fois le profil généré et téléchargeable:

9. Téléchargez le profil d'approvisionnement, dans cet exemple, sur le bureau. Nous pouvons également voir le profil d'approvisionnement créé sur le site et voir qu'il est actif:


Suite aux résultats de 3 étapes, nous avons réussi à créer le profil d'approvisionnement.
Étape 4. Création d'archives Xcode (.xcarchive) basées sur votre application dans Visual Studio sur Windows, puis création de fichiers .ipa et .plist
Les étapes précédentes ont été effectuées sur un ordinateur d'Apple (Mac), puis je vais vous expliquer comment créer .xcarchive dans Visual Studio 2017 pour Windows, immédiatement sur Mac.
1. Pour ce faire, nous avons besoin de l'application Xamarin dans Visual Studio, qui sera connectée au Mac:

2. Dans la solution, vous devez sélectionner le projet IOS en cliquant dessus avec le bouton droit. Dans le menu qui apparaît, sélectionnez «Propriétés». Dans la fenêtre qui s'ouvre, sélectionnez «Paramètres de l'ensemble ios». Ensuite, sélectionnez dans le «paramètre de bundle» - «approvisionnement manuel», et ci-dessous dans la colonne «approvisionnement manuel», sélectionnez votre certificat et profil que nous avons créé dans les étapes précédentes:


3. Dans le projet IOS, sélectionnez le fichier Info.plist et assurez-vous que «l'identifiant du bundle» correspond à l'ID d'application souhaité:


4. Après, ouvrez la ligne de commande de développeur dans Visual Studio (en tant qu'administrateur) «Prompt Command Command for VS 2017» et accédez au répertoire avec le projet ios ou spécifiez l'adresse complète lors de la création de la commande. Cette commande créera une archive .xcarchive sur Mac à partir de Visual Studio. L'archive elle-même ne contient pas les fichiers .ipa et .plist que nous devons distribuer, donc après avoir généré l'archive, nous devons les créer. En savoir plus sur la création d'une archive
ici .
Commande: msbuild /p:Configuration=Release /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhone /p:ArchiveOnBuild=true /t:"Build" MyProject.csproj


5. Après l'exécution réussie de la commande sur le Mac, une archive aurait dû être créée. Nous devons exécuter Xcode, sélectionnez "Windows" et sélectionnez "Organazer" dans ce menu. Là, dans la section «Archive», nous verrons l'archive .xcarchive créée:



6. Nous devons maintenant créer des fichiers .ipa et .plist basés sur l'archive créée.
Avec leur aide, nous pouvons distribuer notre application en contournant l'AppStore, par exemple, au sein de l'entreprise. Ensuite, nous devons cliquer sur le bouton «Distribuer l'application». Dans le menu qui apparaît, sélectionnez «Entreprise» et cliquez sur le bouton «Suivant»:

7. Ensuite, vous devez sélectionner les appareils sur lesquels vous pouvez distribuer et assurez-vous de sélectionner «inclure le manifeste pour l'installation en direct» afin de pouvoir télécharger l'application à partir du navigateur:

8. Dans la fenêtre suivante, spécifiez «Nom» - le nom de l'application; "URL de l'application" - chemin d'accès au fichier .ipa; "URL de l'image d'affichage" - Chemin d'accès à l'icône 57x57; "URL d'image en taille réelle" - Chemin d'accès à l'icône 512x512.
Il est important que le serveur sur lequel se trouvent les fichiers .ipa et .plist soit crypté, c'est-à-dire que https soit obligatoire. L'exemple utilise le service
dropbox . Lors de l'utilisation du service Dropbox, il
est important de savoir : le chemin d'accès correct au fichier via le lien public ne doit pas commencer par «https://www.dropbox.com/», comme indiqué dans le lien généré, mais par «https://dl.dropboxusercontent.com/ "

9. Dans l'étape suivante, nous devons sélectionner le certificat créé et le profil d'approvisionnement:

10. Une fois que nous verrons l'application correctement assemblée, nous devons choisir où enregistrer le dossier avec l'application, que nous distribuerons après:


11. Après l'enregistrement, un dossier a été créé sur le bureau. Vous pouvez voir le contenu du dossier dans les captures d'écran ci-dessous, lors de la génération de 4 fichiers .plist sont créés et généralement 1 .ipa, mais dans l'application de test, c'est un peu différent, mais dans ce cas, nous serons intéressés par un fichier dont le nom ne contient que le nom de notre application. Quant aux 4 fichiers .plist, nous avons alors besoin du fichier «manifest.plist». Pour installer l'application, vous avez besoin d'un plist, qui décrit les propriétés de pré-installation. En savoir plus sur Enterprise Distribution et voir à quoi ressemble manifest.plist
ici :



Ainsi, à cette étape, nous avons réussi à créer les fichiers .ipa et .plist de l'application créée dans Visual Studio 2017, et que nous utiliserons pour la distribution interne.
Étape 5. Distribution des applications
Dans les étapes précédentes, nous avons préparé notre demande de distribution. À cette étape, nous allons créer un simple fichier html avec le lien et le mettre sur l'IIS local, cela est fait pour simplifier l'exemple, mais l'emplacement du lien n'a pas d'importance. Lien non exemple
peut être placé sur votre propre site afin qu'il soit disponible pour les employés, comme les fichiers d'application, il doit être placé sur votre propre serveur. Cependant, dans cet exemple, comme mentionné précédemment, nous avons utilisé le service dropbox.
1. Nous devons d'abord placer les fichiers (icônes, fichier .ipa et manifest.plist) sur dropbox et les rendre disponibles sur le lien:

2. Après avoir créé le fichier html, le contenu suivant:
<html> <body> <a href="itms-services://?action=download-manifest&url=https://www.yoursite.ru/dirname/manifest.plist"> Install iOS in-house App</a> </body> </html>
3. Ensuite, téléchargez ce fichier html sur l'IIS local (ou votre site), et en suivant ce lien depuis un appareil mobile, il nous sera demandé d'installer l'application. Après avoir installé l'application, l'utilisateur doit confirmer la confiance dans le certificat sur les
paramètres de l'appareil
→ Général → Gestion des appareils → «Nom de l'entreprise», alors seuls les utilisateurs peuvent ouvrir l'application:



Résumé
Après les résultats de 5 étapes, nous avons créé un certificat et un profil d'approvisionnement, collecté une archive Xcode de Visual Studio 2017, reçu des fichiers .ipa et .plist pour la distribution, et avons également pu installer l'application avec succès sur l'appareil en cliquant sur le lien, contournant ainsi l'AppStore.