Création d’applications React Native pour Android
Important
La mise hors service de Visual Studio App Center est prévue pour le 31 mars 2025. Bien que vous puissiez continuer à utiliser Visual Studio App Center jusqu’à sa mise hors service complète, il existe plusieurs alternatives recommandées vers lesquelles vous pouvez envisager la migration.
En savoir plus sur les chronologies et les alternatives de support.
App Center peut créer des applications React Native à l’aide de React Native version 0.34 ou ultérieure.
Pour commencer à créer votre première application React Native Android, vous devez :
- Connectez-vous à votre compte de service de dépôt (GitHub, Bitbucket, VSTS, Azure DevOps).
- Sélectionnez un dépôt et une branche où réside votre application.
- Choisissez le projet
package.json
que vous souhaitez générer. - Configurez votre première build.
Notes
Pour que l’application s’exécute sur un appareil réel, la build doit être signée par du code avec un certificat valide.
1. Liaison de votre dépôt
Si vous ne vous êtes pas déjà connecté à votre compte de service de dépôt, vous devez d’abord le faire. Une fois votre compte connecté, sélectionnez le dépôt où se trouve votre projet React Native. Vous devez disposer des autorisations d’administrateur et d’extraction pour configurer une build pour un dépôt.
2. Sélection d’une branche
Après avoir sélectionné un dépôt, sélectionnez la branche que vous souhaitez générer. Par défaut, App Center répertorie toutes les branches actives.
3. Configuration de votre première build
Avant votre première build, vous devez configurer le projet React Native.
3.1. Project
Sélectionnez le projet de package.json
votre projet. App Center extrait automatiquement les informations de son fichier build.gradle (au niveau de l’application) associé, y compris les dépendances, la version des outils de génération, les types de build et les versions de produits.
Notes
Pour de meilleures performances, l’analyse est actuellement limitée à quatre niveaux de répertoire, y compris la racine de votre dépôt.
3.2. Variante de build
Les variantes de build disponibles sont renseignées à partir des types de build et des saveurs de produit spécifiés dans le fichier build.gradle (au niveau de l’application) du projet. Sélectionnez la variante de build à générer.
Notes
App Center Build prend en charge la recherche de variantes de build en tant que combinaison d’un type de build (debug, release ou personnalisé défini) et d’une version de produit facultative. La détection de combinaisons de plusieurs saveurs de produits n’est pas prise en charge pour l’instant.
3.3. Version de Node.js
Sélectionner la version Node.js à utiliser pour la build En savoir plus sur la sélection de Node.js version
3.4. Déclencheurs de génération
Par défaut, une nouvelle build est déclenchée chaque fois qu’un développeur envoie (push) à une branche configurée. C’est ce qu’on appelle l'« intégration continue ». Si vous préférez déclencher une nouvelle build manuellement, vous pouvez modifier ce paramètre dans le volet de configuration.
3.5. Générer un ensemble d’applications Android (.aab)
L’offre groupée d’applications Android est un format de distribution qui peut être chargé sur le Play Store. Il est utilisé pour générer des API optimisées pour des appareils spécifiques. Vous pouvez en savoir plus sur l’offre groupée d’applications Android dans la documentation android officielle, ce qui vous aide également à comprendre si vous souhaitez créer un bundle avec votre standard .apk.
Activez l’option de l’offre groupée d’applications Android pour produire un .aab
en plus de ..apk
Si le build.gradle
fichier (au niveau de l’application) contient le android.bundle
bloc, cette option est automatiquement activée.
3.6. Incrémenter le numéro de version
Quand cette option est activée, le code de version dans le AndroidManifest.xml de votre application s’incrémente automatiquement pour chaque build. La modification se produit pendant la build réelle et ne sera pas validée dans votre dépôt.
3.7. Lancer votre build réussie sur un appareil réel
Utilisez le fichier APK nouvellement produit pour tester si votre application démarre sur un appareil réel. Les tests de lancement ajouteront environ 10 minutes de plus au temps de génération total. En savoir plus sur la configuration des tests de lancement.
3.8. Signature de code
Une génération réussie génère un .apk
fichier et un fichier supplémentaire .aab
si cette option est activée. Pour libérer la build sur le Play Store, elle doit être signée avec un certificat valide stocké dans un magasin de clés. Pour signer les builds produites à partir d’une branche, activez la signature du code dans le volet de configuration, chargez votre magasin de clés dans votre dépôt et fournissez les valeurs appropriées dans le volet de configuration. Vous pouvez en savoir plus sur la documentation de signature de code Android d’App Center. le .aab
sera signé à l’aide des mêmes informations d’identification que ..apk
3.9. Distribuer la build
Vous pouvez configurer chaque build réussie à partir d’une branche pour qu’elle soit distribuée à un groupe de distribution créé précédemment ou à une destination de magasin. Vous pouvez ajouter un nouveau groupe de distribution ou configurer une connexion au magasin à partir du service Distribution. Il existe toujours un groupe de distribution par défaut appelé « Collaborateurs » qui inclut tous les utilisateurs qui ont accès à l’application.
Notes
En cas de distribution dans le Google Play Store, un ensemble d’applications Android (.aab
) est préféré et sera distribué s’il est activé. Pour les groupes de distribution App Center et les destinations de Intune store, un standard .apk
est utilisé même si un .aab
est également généré.
4. Résultats de génération
Après un déclencheur de build, la build se trouve dans l’un des états suivants :
- en file d’attente : la build se trouve dans une file d’attente en attente de libération des ressources
- building : la build exécute les tâches prédéfinies
- succeeded : la build est terminée et elle a réussi
- failed : la build est terminée, mais elle a échoué ; vous pouvez résoudre les problèmes en téléchargeant et en inspectant le journal de build
- canceled : la build a été annulée par une action de l’utilisateur ou a expiré
4.1. Journaux d’activité de génération
Pour une build terminée (réussie ou ayant échoué), téléchargez les journaux pour en savoir plus sur la façon dont la build s’est déroulée. App Center fournit une archive avec les fichiers suivants :
|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
|-- <build-step-1>
|-- <build-step-2>
|--
|-- <build-step-n> (e.g. n_Post Job Cleanup.txt)
Les journaux spécifiques à l’étape de génération (situés dans le build/
répertoire de l’archive) sont utiles pour résoudre les problèmes et comprendre quelle étape et pourquoi la build a échoué.
4.2. L’application (.apk)
Le .apk
fichier est un fichier empaqueté d’application Android qui stocke l’application Android. Si la build a été correctement signée, l’application peut être installée sur un appareil réel et déployée sur le Play Store. Si la build n’a pas été signée, l’application peut s’exécuter sur un émulateur ou être utilisée à d’autres fins.
5. Versions et exigences prises en charge
La version minimale prise en charge pour créer des applications Android est 5.0 (niveau d’API 21). Les applications Android peuvent avoir un niveau d’API minimal inférieur requis pour s’exécuter, mais doivent cibler au moins le niveau d’API 21.
6. Conseils de génération
6.1. Yarn
Le gestionnaire de package Yarn est un remplacement plus rapide et plus déterministe pour npm
. Si un yarn.lock
fichier est présent dans votre dépôt en regard de package.json
, App Center utilise Yarn, en procédant yarn install
au début de la build. Dans le cas contraire, il effectuera npm install
.
6.2. Scripts de build personnalisés
Il existe plusieurs options pour exécuter des scripts avant l’exécution des commandes de build par défaut d’App Center.
Créez un script de post-installation dans le fichier de
package.json
votre projet. Ce script s’exécute automatiquement une fois vos dépendances installées."scripts": { ... "postinstall" : "npx jetify" // other examples: "node ./postinstall.js" or "./postinstall.sh" },
Écrivez un script shell à l’aide de la fonctionnalité de scripts de génération personnalisés d’App Center.
#!/usr/bin/env bash # Example: Authenticate with private NPM registry echo "//registry.npmjs.org/:_authToken=$NPM_AUTH_TOKEN" > ~/.npmrc # Example: Add your signing key file (from base64 encoded environment variable) base64 -d <<< "$ANDROID_JSON_KEY_FILE" > android/keystores/json_key_file.json
6.3. Création de plusieurs API
Pour React Native sur Android, la génération d’APK universelle est désactivée par défaut. Si la configuration de votre application est configurée pour générer plusieurs API, par exemple différentes par architecture de processeur ou configuration d’écran, vous devez vous assurer qu’un APK universel est également généré. Le système de génération d’App Center fonctionne avec un main fichier APK et ignore toutes les API spécifiques à une certaine densité de processeur/ABI ou d’écran.
Pour en savoir plus sur les fractionnements d’APK et sur la création d’un APK universel, lisez le guide du développeur Android correspondant. Par conséquent, assurez-vous que universalApk
est défini sur true
pour votre configuration de build React Native.