Dans le monde du développement mobile, le déploiement d’une application sur l’App Store ou le Play Store est souvent une étape longue et fastidieuse. Entre la génération des certificats, la signature du code, la création des captures d’écran et la mise en ligne des nouvelles versions, les erreurs humaines sont fréquentes.
C’est là qu’intervient Fastlane.
Fastlane en quelques mots
Fastlane est un outil open source (créé à l’origine par Felix Krause, aujourd’hui maintenu par Google) qui permet d’automatiser l’ensemble du processus de livraison et de publication d’applications mobiles.
Il est compatible avec iOS, Android, et même des projets React Native ou Flutter.
Son but est simple : gagner du temps et réduire les risques d’erreur lors des déploiements
Que peut faire Fastlane ?
Fastlane repose sur un ensemble de “lanes” (ou pistes), définies dans un fichier Fastfile, qui décrivent les actions à exécuter.
Voici quelques exemples de ce qu’il peut automatiser :
- Génération et gestion automatique des certificats (avec match).
- Création de captures d’écran pour plusieurs appareils et langues (snapshot).
- Exécution des tests automatisés avant la livraison.
- Compilation et signature du binaire.
- Publication automatique sur TestFlight, App Store ou Google Play.
- Envoi des métadonnées (descriptions, mots-clés, captures, notes de version, etc.) vers les stores
Exemple concret : publier son app et ses métadonnées sur l’App Store (iOS)
Prenons un exemple concret avec une application iOS.
Tu veux envoyer une nouvelle version sur l’App Store, avec les métadonnées (titre, description, mots-clés) et les captures d’écran dans plusieurs langues.
Voici à quoi peut ressembler ton fichier FastFile :
default_platform(:ios)
platform :ios do
desc "Publier une nouvelle version sur l'App Store avec métadonnées et screenshots"
lane :release do
# 1. Génération des certificats et profils de provisioning
match(type: "appstore")
# 2. Exécution des tests
scan
# 3. Création des captures d’écran multilingues
snapshot
# 4. Compilation et signature de l’app
gym(scheme: "MyApp")
# 5. Upload de l’app, des métadonnées et des screenshots
deliver(
force: true,
skip_binary_upload: false,
skip_screenshots: false,
skip_metadata: false,
submit_for_review: true,
metadata_path: "./fastlane/metadata", # <-- répertoire contenant les métadonnées (par langue)
screenshots_path: "./fastlane/screenshots" # <-- répertoire contenant les screenshots (par langue)
)
end
end
Ensuite, tu exécutes simplement
fastlane release Cette seule commande va :
- Gérer les certificats nécessaires.
- Lancer les tests.
- Générer toutes les captures d’écran (dans chaque langue et chaque appareil).
- Compiler l’application.
- Envoyer l’app, les métadonnées et les screenshots localisés directement sur l’App Store Connect.
- Soumettre l’application pour validation.
Les métadonnées doivent être organisées dans
fastlane/metadata/<langue>/
Exemple:
fastlane/metadata/fr-FR/description.txt
fastlane/metadata/en-US/keywords.txt
fastlane/metadata/fr-FR/marketing_url.txt Exemple concret : publier sur Google Play (Android)
Fastlane fonctionne tout aussi bien pour Android grâce à la commande supply, qui permet de gérer la publication sur le Google Play Store.
Voici un exemple de lane Android :
default_platform(:android)
platform :android do
desc "Publier une nouvelle version sur Google Play avec métadonnées et screenshots"
lane :release do
# 1. Compilation du binaire (APK ou AAB)
gradle(
task: "bundle",
build_type: "Release"
)
# 2. Envoi du binaire, métadonnées et captures sur le Play Store
supply(
aab: "app/build/outputs/bundle/release/app-release.aab",
track: "production",
json_key: "play-store-key.json",
skip_upload_images: false,
skip_upload_screenshots: false,
skip_upload_metadata: false,
metadata_path: "./fastlane/metadata/android", # <-- répertoire contenant les métadonnées Android
screenshots_path: "./fastlane/metadata/android" # <-- répertoire contenant les captures par langue
)
end
end
Et tu exécutes simplement
fastlane release Fastlane va alors :
- Compiler ton application Android.
- Charger automatiquement la version sur le Play Store.
- Envoyer les métadonnées, les captures d’écran et les fichiers localisés pour chaque langue.
- Publier la version sur la piste choisie (ex. production, beta, ou internal).
our Android, les fichiers doivent être dans un dossier structuré ainsi :
fastlane/metadata/android/fr-FR/full_description.txt
fastlane/metadata/android/en-US/short_description.txt
fastlane/metadata/android/fr-FR/title.txt
fastlane/metadata/android/fr-FR/images/phoneScreenshots/... Pourquoi adopter Fastlane ?
- Gain de temps considérable sur les livraisons.
- Moins d’erreurs humaines grâce à l’automatisation.
- Homogénéité entre les environnements (staging, production, etc.).
- Intégration facile avec des outils CI/CD comme GitHub Actions, Bitrise ou Jenkins.
- Open source et gratuit.
- Indispensable pour les applications multilingues : Fastlane permet d’envoyer les métadonnées et les captures d’écran pour chaque langue automatiquement, garantissant une cohérence et un gain de temps énorme sur les projets internationaux.
En résumé
Fastlane est un outil incontournable pour automatiser la publication des applications mobiles, sur iOS comme Android.
Il permet de centraliser toutes les étapes du déploiement — du build à l’envoi sur le store — et de gérer facilement les métadonnées multilingues et captures d’écran localisées.
Un gain de temps, de fiabilité et de sérénité pour toutes les équipes de développement mobile.



