{"id":82721,"date":"2020-01-27T05:00:00","date_gmt":"2020-01-27T10:00:00","guid":{"rendered":"https:\/\/www.applause.com\/blog\/deploiement-continu-applications-mobiles\/"},"modified":"2025-07-21T11:24:30","modified_gmt":"2025-07-21T15:24:30","slug":"deploiement-continu-applications-mobiles","status":"publish","type":"post","link":"https:\/\/www.applause.com\/fr\/blog\/deploiement-continu-applications-mobiles\/","title":{"rendered":"Le d\u00e9ploiement continu pour le d\u00e9veloppement d&rsquo;applications mobiles"},"content":{"rendered":"<div class=\"et_pb_section_0 et_pb_section et_section_regular et_flex_section preset--module--divi-section--31615dad-3f88-477f-a866-c2b40c889be5\"><div class=\"et_pb_row_0 et_pb_row et_flex_row\"><div class=\"et_pb_column_0 et_pb_column et-last-child et_flex_column et_pb_css_mix_blend_mode_passthrough et_flex_column_24_24 et_flex_column_24_24_tablet et_flex_column_24_24_phone et_flex_column_24_24_phoneWide et_flex_column_24_24_tabletWide et_flex_column_24_24_widescreen et_flex_column_24_24_ultraWide\"><div class=\"et_pb_text_0 et_pb_text et_pb_bg_layout_light et_pb_module et_flex_module preset--group--divi-text--divi-font-body--default preset--group--divi-text--divi-font-body--h19rs5u--default preset--group--divi-text--divi-font-body--h1yjkjr--default preset--module--divi-text--4564d33f-bb24-4931-8445-a739e42249ca\"><div class=\"et_pb_text_inner\"><h1>Le d\u00e9ploiement continu pour le d\u00e9veloppement d\u2019applications mobiles<\/h1>\n<p>L\u2019int\u00e9gration continue et la livraison continue sont devenus ces derni\u00e8res ann\u00e9es des processus standards pour le d\u00e9veloppement d\u2019applications web. Il est \u00e0 pr\u00e9sent possible de d\u00e9ployer des mises \u00e0 jour produit et autres correctifs en production plusieurs fois par jour. \u00c0 l\u2019aide d\u2019outils de d\u00e9ploiement et d\u2019une solide infrastructure, cette t\u00e2che est devenue de plus en plus rapide et fiable. Mais est-ce \u00e9galement le cas pour les applications mobiles natives ? Est-il possible de lancer une nouvelle application mobile dans les d\u00e9lais compte tenu du processus de soumission impos\u00e9 par certains app stores ?<\/p>\n<p>La r\u00e9ponse \u00e0 ces deux questions est oui. Je vais vous d\u00e9crire dans cet article quelles sont les options possibles pour les applications mobiles natives.<\/p>\n<h3><strong>Investissez dans une infrastructure mobile<\/strong><\/h3>\n<p>L\u2019int\u00e9gration continue et la livraison continue ne sont pas gratuites \u2013 que l\u2019on parle d\u2019applications Web ou d\u2019applications mobiles natives. Les entreprises doivent investir \u00e0 la fois du temps et de l\u2019argent dans leur infrastructure pour pouvoir livrer \u00e0 la demande une nouvelle version d\u2019une application mobile native. Compte tenu des logiciels et outils disponibles sur le march\u00e9, l\u2019op\u00e9ration est assez facile.<\/p>\n<p>Par exemple, des logiciels open source tel que\u00a0<a role=\"link\" href=\"https:\/\/jenkins.io\/\">Jenkins<\/a>\u00a0(en tant que syst\u00e8me d\u2019int\u00e9gration continue) et\u00a0<a role=\"link\" href=\"https:\/\/fastlane.tools\/\">fastlane<\/a>\u00a0(comme logiciel de publication cl\u00e9 en main) peuvent constituer une base simple et robuste pour votre infrastructure. \u00c0 partir de l\u00e0, vous pouvez facilement cr\u00e9er un canal de distribution d\u2019applications mobiles via des services tels que Testflight, AppCenter ou Firebase pour tester des appareils lors des phases de d\u00e9veloppement et de test.<\/p>\n<h3><strong>Options de d\u00e9ploiement des app stores<\/strong><\/h3>\n<p>Une fois l\u2019infrastructure en place, il est vital pour l\u2019\u00e9quipe de d\u00e9veloppement de l\u2019application mobile native de bien comprendre les diff\u00e9rences li\u00e9es au processus de d\u00e9ploiement pour l\u2019App Store d\u2019Apple et le Google Play Store, car il y en a plusieurs.<\/p>\n<p>La principale diff\u00e9rence \u00e0 noter est la notion d\u2019\u00e9valuation de l\u2019application. Alors que chaque application de l\u2019App Store d\u2019Apple doit \u00eatre approuv\u00e9e par\u00a0<a role=\"link\" href=\"https:\/\/developer.apple.com\/app-store\/review\/guidelines\/\">l\u2019\u00e9quipe App Review<\/a>, les apps du\u00a0<a role=\"link\" href=\"https:\/\/support.google.com\/googleplay\/android-developer\/answer\/113469?hl=en\">Google Play Store peuvent \u00eatre mises en ligne imm\u00e9diatement<\/a>\u00a0et remplacer une app d\u00e9j\u00e0 en production en quelques heures.<\/p>\n<p>Vient ensuite la mani\u00e8re dont les applications peuvent \u00eatre d\u00e9ploy\u00e9es aupr\u00e8s de vrais utilisateurs ou de testeurs. Dans les deux app stores, vous avez la possibilit\u00e9 d\u2019opter pour un d\u00e9ploiement par \u00e9tapes (<a role=\"link\" href=\"https:\/\/help.apple.com\/app-store-connect\/#\/dev3d65fcee1\">iOS<\/a>,\u00a0<a role=\"link\" href=\"https:\/\/support.google.com\/googleplay\/android-developer\/answer\/6346149#increase\">Android<\/a>). Ce processus permet de d\u00e9ployer la derni\u00e8re version de l\u2019app de mani\u00e8re progressive \u00e0 l\u2019ensemble des clients. L\u2019\u00e9quipe de d\u00e9veloppement peut alors suivre la progression de la mise \u00e0 jour et interrompre le d\u00e9ploiement d\u00e8s qu\u2019un probl\u00e8me appara\u00eet. Si vous souhaitez une autre approche, le Google Play Store propose aussi des options de publication en mode alpha et b\u00eata.<\/p>\n<p>Il est critique de bien comprendre quelles sont les options de test et de d\u00e9ploiement possibles pour s\u00e9lectionner celle qui conviendra le mieux. Compte tenu des outils de d\u00e9veloppement et de d\u00e9ploiement mobiles disponibles et des options propos\u00e9es par chaque app store, deux possibilit\u00e9s s\u2019offrent \u00e0 vous :<\/p>\n<h4 class=\"title as-h4\"><strong>D\u00e9ploiement continu interne<\/strong><\/h4>\n<p>Dans ce sc\u00e9nario, le d\u00e9ploiement logiciel fonctionne de telle sorte que tous les membres de votre \u00e9quipe ou votre entreprise re\u00e7oivent imm\u00e9diatement la derni\u00e8re version d\u2019une app une fois que les tests ont r\u00e9ussi et qu\u2019un nouveau build est fourni par le logiciel de distribution. Selon la taille de l\u2019entreprise, l\u2019application sera utilis\u00e9e par des centaines ou des milliers de collaborateurs qui pourront et devraient fournir des retours sur son \u00e9tat. Ceci peut se faire sans aucune implication de la part d\u2019Apple ou de Google, ce qui donne le contr\u00f4le total \u00e0 votre \u00e9quipe de d\u00e9veloppement.<\/p>\n<h4><strong>D\u00e9ploiement continu externe<\/strong><\/h4>\n<p>Avec cette option, votre \u00e9quipe peut soit utiliser sa propre infrastructure de distribution mobile, soit partir de celles utilis\u00e9es par Apple et Google. La premi\u00e8re option n\u00e9cessite que vous invitiez des clients existants sur votre syst\u00e8me de distribution pour d\u00e9ployer la nouvelle version de votre app (ce qui peut \u00eatre assez simple gr\u00e2ce \u00e0 des outils tels que Testflight, AppCenter ou Firebase) ou que vous fassiez appel \u00e0 une communaut\u00e9 de crowdtesteurs dont les appareils peuvent \u00eatre ajout\u00e9s \u00e0 la liste de distribution. C\u2019est la m\u00e9thode id\u00e9ale, car vous pouvez distribuer l\u2019app aupr\u00e8s de vrais clients et testeurs sans passer par le processus de soumission de l\u2019App Store.<\/p>\n<p>Pour une application Android, vous pouvez utiliser l\u2019infrastructure de distribution du Google Play Store qui fournit des canaux de test alpha et b\u00eata. Vous pouvez ainsi d\u00e9ployer votre version sur le canal alpha et cibler jusqu\u2019\u00e0 100 clients ou testeurs (internes ou externes) gr\u00e2ce \u00e0 leurs adresses e-mail. Le canal b\u00eata n\u2019impose pas de limite sur le nombre de testeurs et vous laisse le choix de le rendre public ou accessible sur invitation. Les canaux alpha comme b\u00eata peuvent \u00eatre configur\u00e9s pour le d\u00e9ploiement continu. Pour les applications iOS, la possibilit\u00e9 de d\u00e9ployer une version alpha ou b\u00eata de vos apps n\u2019existe pas. Apple fournit un syst\u00e8me de\u00a0<a role=\"link\" href=\"https:\/\/help.apple.com\/app-store-connect\/#\/dev3d65fcee1\">d\u00e9ploiement progressif<\/a>\u00a0qui peut \u00eatre utilis\u00e9 pour \u00e9chelonner la diffusion d\u2019une nouvelle version et suivre les retours des utilisateurs et autres donn\u00e9es d\u2019utilisation.<\/p>\n<p>Une fois que le d\u00e9ploiement externe et les retours des clients sont jug\u00e9s satisfaisants, l\u2019\u00e9quipe de d\u00e9veloppement mobile peut soumettre la nouvelle version aux app stores. L\u2019\u00e9quipe pourra alors d\u00e9cider si elle souhaite la d\u00e9ployer de mani\u00e8re progressive ou non.<\/p>\n<h3><strong>Quel type de d\u00e9ploiement est le plus pertinent pour votre organisation ?<\/strong><\/h3>\n<p>Le d\u00e9ploiement continu d\u2019applications mobiles n\u2019est pas gratuit. Il n\u2019existe pas de solution universelle. Un pipeline de CI\/CD est propre \u00e0 chaque entreprise et n\u00e9cessite de consacrer du temps et de l\u2019argent \u00e0 le mettre en place.<\/p>\n<p>En premier lieu, vous devez v\u00e9rifier que vous disposez bien des comp\u00e9tences et du cadre technique n\u00e9cessaires pour introduire un processus de d\u00e9ploiement continu.<\/p>\n<p>Si l\u2019environnement technique et les connaissances sont au rendez-vous, il vous faut ensuite d\u00e9terminer avec votre \u00e9quipe quelle approche parmi celles mentionn\u00e9es plus haut vous conviendrait le mieux.<\/p>\n<p>Pour trouver la bonne m\u00e9thode de d\u00e9ploiement, assurez-vous de pouvoir r\u00e9pondre \u00e0 certaines des questions suivantes :<\/p>\n<ol>\n<li>Avez-vous les comp\u00e9tences requises dans votre entreprise pour mettre en place un pipeline de d\u00e9ploiement ?<\/li>\n<li>Disposez-vous d\u2019une infrastructure de d\u00e9ploiement que vous pouvez r\u00e9utiliser ?<\/li>\n<li>Avez-vous la possibilit\u00e9 de connecter vos syst\u00e8mes internes \u00e0 des outils tiers ?<\/li>\n<li>Aupr\u00e8s de qui voulez-vous d\u00e9ployer les versions alpha et b\u00eata ?<\/li>\n<\/ol>\n<\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Quel type de d\u00e9ploiement est le mieux adapt\u00e9 \u00e0 vos activit\u00e9s ?<\/p>\n","protected":false},"author":42,"featured_media":74439,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[281],"tags":[977,978],"resource-industry":[],"resource-solution":[],"resources\/types":[1242],"class_list":["post-82721","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-non-classifiee","tag-mobile","tag-qa","resource-type-blogues"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/posts\/82721","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/comments?post=82721"}],"version-history":[{"count":0,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/posts\/82721\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/media\/74439"}],"wp:attachment":[{"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/media?parent=82721"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/categories?post=82721"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/tags?post=82721"},{"taxonomy":"resource-industry","embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/resource-industry?post=82721"},{"taxonomy":"resource-solution","embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/resource-solution?post=82721"},{"taxonomy":"resource-type","embeddable":true,"href":"https:\/\/www.applause.com\/fr\/wp-json\/wp\/v2\/resources\/types?post=82721"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}