Deliver (Fastlane) est un outil de téléchargement d'applications vers App Store Connect : fichiers binaires, métadonnées, captures d'écran et prix. Contrairement à la publication manuelle via l'interface web d'App Store Connect, Deliver automatise toutes les étapes de mise en production via une seule commande. Selon la documentation officielle de Fastlane (2026), Deliver réduit le temps de publication d'une mise en production de 40 minutes à quelques secondes.
Points essentiels
Deliver (Fastlane) est un composant de l'écosystème Fastlane qui automatise le processus de publication d'applications mobiles sur l'App Store. Il gère le téléchargement des fichiers binaires, la mise à jour des métadonnées (nom, description, mots-clés), le téléchargement des captures d'écran et la configuration des prix pour toutes les langues de localisation.
Sans Deliver, chaque mise en production nécessite une mise à jour manuelle des informations via l'interface web d'App Store Connect : remplir les descriptions dans plusieurs langues, télécharger les captures d'écran pour chaque taille d'écran, mettre à jour les mots-clés et configurer les prix. La publication sur l'App Store est l'étape finale du cycle de vie d'une application iOS, comprenant la vérification du fichier binaire, la modération du contenu et la mise à disposition de l'application en production.
Selon la documentation d'App Store Connect (2025), les applications avec des mises à jour régulières reçoivent 30 % de réinstallations supplémentaires et sont mieux classées dans les résultats de recherche. Deliver permet aux équipes de publier des mises à jour chaque semaine en automatisant les étapes de publication de routine et en réduisant le risque d'erreur humaine lors du remplissage des métadonnées dans des dizaines de langues.
Utilisez Deliver pour toute application publiée sur l'App Store — particulièrement précieux pour les projets avec localisation multilingue où la mise à jour manuelle de 32 langues prend plusieurs heures.
Le mécanisme de fonctionnement de Deliver repose sur un processus en deux étapes. Dans la première étape, l'outil prépare les métadonnées — il valide la structure du Deliverfile, charge les captures d'écran et génère un manifeste des modifications. Dans la deuxième étape, Deliver envoie les données à l'API App Store Connect, télécharge le fichier binaire et lance le processus de vérification du build côté Apple.
Deliver utilise l'API App Store Connect pour toutes les opérations, garantissant la compatibilité avec les dernières exigences Apple et excluant l'utilisation d'interfaces privées. L'API App Store Connect est l'API REST officielle d'Apple pour automatiser les opérations liées aux applications, y compris le téléchargement des builds, la gestion des métadonnées et le suivi de l'état de la révision.
Deliver s'intègre directement avec Gym via Fastlane : après le build IPA, Deliver le télécharge vers App Store Connect et lance le traitement. Le paramètre --ipa spécifie le chemin vers le fichier binaire. S'il n'est pas spécifié, Deliver trouve automatiquement le dernier IPA dans le répertoire de build indiqué dans Gymfile ou transmis via les étapes Fastlane précédentes.
Après le téléchargement, Deliver attend la fin du traitement du fichier binaire par Apple — similaire à Pilot, l'état est suivi via une barre de progression. États disponibles : Processing, Waiting For Review, In Review, Ready For Sale ou Rejected. Deliver notifie l'équipe de chaque changement d'état via des callbacks dans Fastfile.
Deliver gère l'ensemble complet des métadonnées de l'application : nom, description (courte et complète), mots-clés, URL de support et de marketing, catégorie et classification d'âge. Les métadonnées de l'application sont les informations textuelles sur l'application affichées sur la page de l'App Store et utilisées pour l'indexation de recherche et l'optimisation ASO.
Le paramètre --submit_for_review envoie l'application en modération immédiatement après le téléchargement des métadonnées. C'est un paramètre clé pour les mises en production entièrement automatisées. Sans lui, Deliver télécharge seulement les données mais ne soumet pas l'application à la révision — utile pour pré-vérifier tous les champs avant la soumission réelle.
Deliver télécharge automatiquement les captures d'écran pour toutes les combinaisons d'appareils et de langues à partir du répertoire spécifié. Les noms de fichiers doivent suivre le modèle : iPhone_6.5_01.png pour un iPhone de 6,5 pouces sur le premier emplacement. Deliver détermine la taille de la capture et la fait correspondre aux exigences Apple pour chaque type d'appareil.
Les captures d'écran sont téléchargées dans le bon ordre et séparément pour chaque langue de localisation. Si aucune capture n'est trouvée pour une langue, Deliver utilise les versions anglaises comme solution de repli. La localisation des captures d'écran est une exigence obligatoire pour les applications qui souhaitent bien se classer dans l'App Store de différents pays, car Apple prend en compte le contenu local dans les résultats de recherche.
# Commande de base de téléchargement vers l'App Store
fastlane deliver
# Téléchargement avec métadonnées et captures spécifiées
fastlane deliver --ipa "build/MyApp.ipa" \
--force --submit_for_review
# Aperçu sans téléchargement
fastlane deliver --preview
Deliverfile est un fichier de configuration Fastlane pour stocker les métadonnées de l'application dans un format Ruby structuré. Contrairement au remplissage manuel des formulaires dans App Store Connect, Deliverfile permet de versionner les métadonnées dans Git et de vérifier les modifications via une revue de code avant la publication.
# Deliverfile — métadonnées de l'application
app_identifier("com.company.app")
title("MyApp")
description("Description de l'application pour le magasin")
keywords("mobile, application, ios, swift")
support_url("https://company.com/support")
marketing_url("https://company.com")
privacy_url("https://company.com/privacy")
# Langues de localisation des métadonnées
languages(["en-US", "ru", "de"])
Le paramètre languages détermine pour quelles langues les métadonnées seront téléchargées. Un répertoire séparé doit être créé pour chaque langue dans le dossier fastlane/metadata avec les fichiers de description, mots-clés et textes marketing correspondants. Deliver prend en charge jusqu'à 32 langues App Store simultanément.
Pour le téléchargement des captures d'écran, le répertoire screenshots dans le dossier Fastlane est utilisé. Structure des dossiers : screenshots/[Language]/[DeviceType]_[ScreenSize]_[Number].png. Deliver télécharge automatiquement les captures pour les langues et appareils spécifiés, en faisant correspondre les tailles avec les exigences Apple. Il est recommandé d'utiliser Snapshot pour générer les captures d'écran — leur format de sortie est compatible avec Deliver.
Le groupe de prix est configuré via le paramètre price_tier, qui accepte un numéro de niveau de prix de 0 à 87. Les niveaux de prix Apple sont automatiquement convertis dans les devises de tous les pays de présence. Deliver permet de modifier le prix dans le cadre d'une mise en production, utile pour les promotions temporaires ou les changements de modèle économique de l'application.
L'interface de Deliver comprend des commandes pour télécharger les métadonnées, les fichiers binaires, les captures d'écran et les mises en production complètes. La commande principale fastlane deliver sans paramètres utilise les données du Deliverfile et du répertoire de métadonnées pour un cycle de publication complet.
La commande fastlane deliver --preview exécute une vérification préliminaire des métadonnées sans téléchargement effectif vers App Store Connect. --force est nécessaire pour le téléchargement — sans lui, Deliver fonctionne en mode aperçu. Le paramètre --skip_binary télécharge uniquement les métadonnées et les captures d'écran, en ignorant le téléchargement du fichier binaire — pratique pour mettre à jour rapidement les champs ASO sans nouvelle mise en production.
# Mise en production complète avec téléchargement du binaire
fastlane deliver --force --ipa "build/App.ipa"
# Télécharger uniquement les métadonnées sans binaire
fastlane deliver --force --skip_binary
# Mettre à jour uniquement les captures d'écran
fastlane deliver --force --skip_metadata
Le paramètre --skip_metadata télécharge uniquement les captures d'écran et le fichier binaire, en conservant les métadonnées existantes inchangées. Ceci est utile pour les correctifs rapides lorsqu'il faut publier rapidement une correction sans modifier la description et les champs ASO. La combinaison de drapeaux permet une gestion flexible de chaque étape de publication séparément.
| Commande Deliver | Objectif | Drapeaux |
|---|---|---|
| deliver | Publication complète avec métadonnées et binaire | --force, --ipa |
| deliver --skip_binary | Mettre à jour uniquement les métadonnées et captures | --force |
| deliver --skip_metadata | Télécharger binaire et captures sans modifications ASO | --force, --ipa |
| deliver --preview | Vérification préliminaire des métadonnées | sans --force |
| deliver --submit_for_review | Soumission automatique à la modération | --force, --ipa |
Le pipeline de mise en production avec Deliver est un processus CI/CD complet pour iOS qui automatise toutes les étapes du commit à la publication sur l'App Store. Un pipeline typique comprend : Match pour les certificats, Gym pour les builds IPA, Snapshot pour les captures d'écran et Deliver pour télécharger toutes les données vers App Store Connect avec soumission ultérieure à la modération.
Une caractéristique clé de Deliver dans le pipeline est le support de metadata.json, qui stocke les métadonnées dans un format JSON structuré. Cela permet de générer les métadonnées par programmation à partir de systèmes CMS externes ou de créer automatiquement des descriptions dans plusieurs langues via une API de traduction.
# Pipeline de mise en production dans Fastfile
lane :release do
match(type: :appstore)
capture_screenshots
gym(scheme: "MyApp", export_method: "app-store")
deliver(ipa: "build/MyApp.ipa", force: true, submit_for_review: true)
end
Avant d'appeler Deliver dans le pipeline, assurez-vous que toutes les métadonnées sont à jour : la description correspond à la nouvelle version, les captures d'écran sont mises à jour pour les nouvelles fonctionnalités et le groupe de prix ne nécessite pas de modification. Submit for review envoie l'application à la modération Apple, qui prend 24 à 48 heures pour les nouvelles applications et 2 à 12 heures pour les mises à jour.
Deliver prend en charge le mécanisme app_version, qui permet de spécifier la version cible pour les mises à jour des métadonnées. Si la version n'est pas spécifiée, Deliver met à jour la version active actuelle de l'application dans App Store Connect. Pour publier une nouvelle version, il faut d'abord créer la version correspondante via l'interface App Store Connect ou l'API.
Lors de l'utilisation de Deliver, les développeurs rencontrent souvent des erreurs de validation des métadonnées, une structure incorrecte des fichiers de captures d'écran et des problèmes d'authentification. Le diagnostic des erreurs dans Deliver commence par l'analyse des logs de la commande — Deliver fournit des informations détaillées sur chaque étape de téléchargement et les raisons du rejet.
L'erreur « Invalid screenshot path » se produit lorsque la structure des dossiers de captures d'écran ne correspond pas au format attendu. Solution : vérifiez que les noms des fichiers de captures suivent le modèle DeviceType_ScreenSize_Number.png (par exemple AppleiPhone15ProMax_6.7_01.png). Deliver est sensible à la casse et aux séparateurs dans les noms de fichiers.
L'erreur « Metadata validation failed » indique que les métadonnées ne répondent pas aux exigences de l'App Store. Solution : vérifiez la longueur de la description (jusqu'à 4000 caractères), des mots-clés (jusqu'à 100 caractères) et du nom (jusqu'à 30 caractères). Les directives de révision de l'App Store contiennent les exigences complètes pour chaque champ de métadonnées — il est recommandé de les vérifier avant chaque mise en production.
Avec l'erreur « Apple ID not found », l'application n'existe pas dans App Store Connect avec l'apple_identifier spécifié. Solution : créez l'entrée de l'application dans App Store Connect via l'interface web avant le premier appel de Deliver, en spécifiant le Bundle Identifier et le nom. Deliver ne crée pas de nouvelles applications — il met seulement à jour les entrées existantes dans le magasin.
Foire aux questions
Oui, Deliver prend en charge le téléchargement d'applications pour iOS, iPadOS, macOS, tvOS et watchOS. Chaque type d'application nécessite de spécifier le fichier IPA correct compilé pour la plateforme correspondante. Deliver détermine automatiquement la plateforme à partir de l'enregistrement de l'application dans App Store Connect.
Deliver lit les métadonnées pour chaque langue à partir du répertoire fastlane/metadata/[lang]. Si aucun fichier n'est trouvé pour une langue, Deliver utilise les valeurs anglaises comme solution de repli. Les captures d'écran sont téléchargées séparément pour chaque langue à partir du répertoire screenshots/[lang].
Non, vous n'avez pas besoin de désactiver l'authentification à deux facteurs. Deliver utilise la clé API App Store Connect pour l'authentification, qui fonctionne indépendamment du 2FA. La clé API est générée dans App Store Connect et permet d'effectuer toutes les opérations sans confirmation interactive.
Utilisez la commande fastlane deliver --reject, qui retire l'application soumise à la modération. Ce n'est possible que si la révision n'a pas encore commencé — après le début de la révision, la mise à jour ne peut être annulée que via l'interface web d'App Store Connect.
Pilot gère les builds bêta dans TestFlight : télécharge les binaires, les distribue aux groupes de testeurs. Deliver s'occupe de la publication en production : télécharge les métadonnées, les captures d'écran et les binaires vers l'App Store pour les utilisateurs finaux. Pilot est pour les tests bêta, Deliver est pour la mise en production.
Résumé
Nous développerons une application mobile clé en main
IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.
Lisez aussi