
contactez nous


25 février 2024
•
Je suis développeur iOS depuis un certain temps et une chose ne cesse de me surprendre de manière désagréable : le processus de création, de publication et de signature d'une application iOS avec un profil d'approvisionnement. Je comprends la motivation qui sous-tend tout cela, mais je n'arrête pas de maudire le processus. Développement d'applications iOS.
Xcode est un outil puissant, mais en ce qui concerne le processus de publication, il est généralement impuissant, ce qui entraîne un nombre incalculable d'heures passées à rechercher quelle partie du processus de signature a échoué et comment y remédier.
À mesure que le nombre de programmes de développement auxquels je participe augmente et que le nombre de profils d'approvisionnement dépasse la taille de l'écran, le nombre de problèmes que je rencontre augmente également. Chaque fois que je résous un problème et que j'apprends une partie de cette logique enchevêtrée, je marche sur un autre et il semble souvent que le processus d'apprentissage soit interminable.
Il y a quelque temps, Imaginary Cloud a décidé que nous devions maîtriser ce processus. On m'a demandé de trouver une autre façon de faire les choses, et je l'ai fait !
Permettez-moi de partager avec vous quelques bonnes solutions à cette situation agaçante.
Comme vous le savez probablement, Xcode est livré avec des outils de ligne de commande supplémentaires qui peuvent être installés soit dans la partie des téléchargements des propriétés Xcode, soit, si vous êtes sur le point de quitter sa belle interface utilisateur au profit de la fenêtre du terminal de toute façon, vous pouvez commencer à exécuter la commande immédiatement :
Vous disposez maintenant d'une version sans interface utilisateur de votre application préférée. Ça vaut vraiment le coup. Si vous voulez en savoir plus sur ses fonctionnalités intéressantes, tapez :
Je vais vous expliquer mes deux lignes préférées qui sont juste suffisantes pour nettoyer, compiler, archiver, signer avec un profil d'approvisionnement et exporter votre application dans un fichier .ipa portable. L'outil est très simple, les lignes sont donc assez explicites :
Cela permettra de nettoyer, de compiler le code et d'archiver les résultats dans votre répertoire d'archives actuel. (il apparaîtra dans l'organisateur Xcode). Si vous le souhaitez ailleurs, il vous suffit de spécifier le chemin personnalisé :
Ensuite, la commande suivante exportera l'archive générée dans un fichier ipa exécutable, signé avec le profil d'approvisionnement de votre choix :
Ces deux commandes peuvent à elles seules vous faire économiser des heures de travail, mais les choses peuvent encore s'améliorer.
L'irremplaçable Matt Thompson a écrit son propre utilitaire de ligne de commande au-dessus de xcodebuild pour simplifier encore plus l'ensemble du processus.
Shenzhen est un ensemble d'outils permettant de créer et de distribuer des applications iOS. Vous l'installez avec :
Pour créer un nouvel ipa avec les paramètres par défaut, signé avec le profil d'approvisionnement de votre choix, procédez comme suit :
Il générera des fichiers de magasin de symboles de débogage ipa et dSYM que vous pourrez télécharger sur n'importe quel canal de distribution. Si vous ne voulez pas le faire manuellement, voici la meilleure partie :
Je vais empaqueter et envoyer une nouvelle version directement à HockeyApp, ou à un service similaire. Shenzhen prend désormais en charge les éléments suivants : Connexion à iTunes, Application Hockey, Crashlytics Bêta, DeployGate, Faites-le voler à distance, Amazon S3 et un hôte FTP/SFT.
Il propose un large éventail d'options supplémentaires pour prendre en charge tous les paramètres personnalisés que vous souhaiterez peut-être inclure (découvrez-les avec l'option d'aide habituelle). Il téléchargera également le fichier dSYM correspondant pour que vos journaux des pannes soient lisibles.
C'est ça !
La tâche qui a toujours été une roulette russe pour moi est maintenant devenue très simple. Je ne sais pas exactement ce qui se cache derrière l'interface utilisateur Xcode, mais il semble que cela ne serve pas à grand-chose.
Cette découverte m'a déjà fait gagner beaucoup de temps et, contrairement à la façon de procéder de l'interface utilisateur Xcode, elle ne fera que s'améliorer.
Un développeur iOS senior qui fait partie d'une équipe iOS agile et qui donne aux individus les moyens de réaliser leurs rêves et leurs objectifs.
People who read this post, also found these interesting: