Réponse rapide : Connectez un téléphone avec le débogage USB activé, puis confirmez avec adb devices, puis exécuter adb install path/to/app.apk. Pour mettre à jour une installation existante, utilisez adb install -r path/to/app.apk.
adb install path/to/app.apk
adb install -r path/to/app.apk
Étapes minimales :
- Installer Outils de la plateforme SDK et vérifiez que
adbest dans votre PATH. - Sur le téléphone, activez les options développeur et le débogage USB.
- Connect USB, unlock the phone, accept Autoriser le débogage USB.
- Exécutez
adb deviceset vérifiez que le numéro de série s’affichedevice, et nonunauthorized. - Exécutez
adb install path/to/app.apk.
Si vous déployez des builds Android depuis Capacitor ou Ionic, cette boucle est la méthode pour installer un APK récent sur un appareil physique sans attendre Play Console. Pour le déploiement sur le store après les tests, voir les déploiements progressifs Google Play.
Table des matières
- Installer Platform Tools et vérifier adb
- Workflow principal d’installation d’APK via adb
- Options de la commande adb install
- Plusieurs appareils avec -s
- Installer un APK via Wi-Fi
- APK fractionnés avec install-multiple
- Lancer l’application après l’installation
- Désinstaller avec adb
- Exemple Capacitor
- Dépanner les erreurs d’installation
Installer les Platform Tools et vérifier adb
Vous n’avez pas besoin du téléchargement complet d’Android Studio pour adb install. Il vous faut Outils de plateforme depuis Google.
- Téléchargez les Platform Tools pour votre OS.
- Décompressez-les dans un dossier fixe.
- Ajoutez ce dossier à votre PATH.
Vérifier :
adb version
Sur l’appareil, activez le débogage USB comme indiqué dans le guide des options développeur Android. Certaines interfaces OEM (MIUI de Xiaomi est un cas fréquent) exigent également Installer via USB ou similaire dans les paramètres développeur.
Utilisez un câble de données. Les câbles de charge uniquement produisent des adb devices listes et gaspille du temps.
Workflow de base pour adb install apk
Vérifiez toujours la connexion avant d’installer.
adb devices
Sortie saine attendue :
List of devices attached
XXXXXXXX device
Installation :
adb install path/to/your-app.apk
Mettez entre guillemets les chemins contenant des espaces. Depuis le dossier APK :
adb install app-debug.apk
Une exécution réussie affiche généralement Installation en cours et Succès. En interne, adb install pousse le fichier vers /data/local/tmp, exécute pm install, et supprime le fichier temporaire. C’est plus simple que le adb push plus un shell pm install pour les tests quotidiens.
Pour la configuration de l’environnement Capacitor au-delà d’ADB, voir Configuration Android pour les apps Capacitor.
options adb install
| Option | Signification | Quand l’utiliser |
|---|---|---|
-r |
Remplace l’application existante, conserve les données si possible | Recompilations en debug, même nom de package |
-d |
Autoriser le downgrade uniquement sur les apps débogables | Revenir à un build de debug plus ancien |
-g |
Accorder toutes les permissions d'exécution à l'installation | QA plus rapide quand les permissions bloquent le lancement |
-t |
Autoriser les APK de test uniquement | Builds testOnly internes depuis la CI |
Combinaisons courantes :
adb install -r app-debug.apk
adb install -r -g app-debug.apk
adb install -r -d older-build.apk
adb install -r -t internal-test.apk
-r est l'habitude par défaut pour le développement itératif. Sans cela, Android renvoie souvent INSTALL_FAILED_ALREADY_EXISTS lorsque le package est déjà présent.
-d autorise les downgrades uniquement lorsque le package installé est débogable. Il ne downgrade pas une release non débogable depuis Play. Sans -d, un versionCode déclenche INSTALL_FAILED_VERSION_DOWNGRADE.
-g ignore la boîte de dialogue d'autorisation à l'installation. Cela ne supprime pas le besoin de tester les flux d'autorisation lors d'une installation propre.
-t est requis lorsque le manifeste définit android:testOnly="true". Sans cela, vous obtenez INSTALL_FAILED_TEST_ONLY.
Les builds de release doivent être signés de manière cohérente. Si vous générez une nouvelle clé d’upload, générateur de keystore Android en ligne documente les empreintes et la sortie PKCS#12. Signer avec une clé différente de celle de l'application installée produit INSTALL_FAILED_UPDATE_INCOMPATIBLE.
Plusieurs appareils avec -s
Lorsque plus d'un appareil ou émulateur est connecté, adb install peut échouer avec plus d'un appareil/émulateur. Liste des numéros de série :
adb devices
Cibler un numéro de série avec -s:
adb -s SERIAL install -r app-debug.apk
Remplacer SERIAL avec la valeur de la première colonne de adb devices.
Installer un APK via le Wi-Fi
Android 11 et versions ultérieures (débogage sans fil) :
Placez le téléphone et l’ordinateur sur le même réseau Wi-Fi.
- Sur le téléphone : Paramètres → Options développeur → Débogage sans fil → Appairer l’appareil avec le code code. Notez l’IP, le port et le code à six chiffres code.
- Sur l’ordinateur, appairez :
adb pair IP:PAIRING_PORT
Saisissez le code d’appairage lorsqu’il est demandé.
- Connectez-vous au port de débogage affiché sur l’écran de débogage sans fil :
adb connect IP:DEBUG_PORT
adb devices
- Débranchez le câble USB si des appareils USB et Wi-Fi apparaissent dans
adb devices, ou ciblez le Wi-Fi explicitement :
adb -s IP:DEBUG_PORT install -r app-debug.apk
Android plus anciens (USB d'abord) :
adb tcpip 5555
adb connect PHONE_IP:5555
Débranchez l'USB après adb devices affiche l'endpoint TCP. Le pare-feu et l'isolation réseau peuvent bloquer ADB Wi-Fi sur les LAN d'entreprise.
APK fractionnés avec install-multiple
Les App Bundles du Play Store se décompilent en un APK de base plus des splits de configuration (densité, ABI, langue) et parfois des modules de fonctionnalités au moment de l'installation. Installez l'APK de base et tous les splits correspondant à l'appareil cible en une seule commande :
adb install-multiple -r base.apk split_config.xxhdpi.apk split_config.arm64_v8a.apk
Ne passez que les splits de la même extraction de bundle qui correspondent à l'appareil connecté. Un split manquant ou incorrect provoque INSTALL_FAILED_INVALID_APK ou des installations incomplètes.
Pour installer en sideload depuis une .apks archive, bundletool install-apks --apks=app.apks est souvent plus simple que de lister les fichiers manuellement.
Cela est différent de les APK split par ABI lorsque Gradle compile des APK autonomes distincts pour chaque architecture (app-armeabi-v7a-debug.apk, app-arm64-v8a-debug.apk, etc.). Chacun de ces fichiers est une application complète. Choisissez celui qui correspond au processeur de l'appareil et exécutez adb install -r sur ce fichier unique. Ne passez pas tous les APK du dossier de sortie à install-multiple.
Lancer l'application après l'installation
Activité de lancement connue (depuis AndroidManifest.xml):
adb shell am start -n com.example.app/.MainActivity
Test de fumée rapide lorsque vous ne connaissez que le nom du package :
adb shell monkey -p com.example.app -c android.intent.category.LAUNCHER 1
monkey déclenche une seule intent de lancement. Ce n'est pas un test UI complet, mais cela confirme que l'application s'ouvre après l'installation.
Voir les logs :
adb logcat
Désinstaller avec adb
Supprimer par nom de package (et non par chemin APK) :
adb uninstall com.example.app
Cela supprime l’application et ses données. Utilisez-le pour les tests de premier lancement et avant de corriger un problème de signature.
To remove the app but leave user data on the device:
adb uninstall -k com.example.app
-k can make the next install reuse old preferences or databases, so skip it when you need a true clean install. Use adb install -r when you only need a faster update loop over an existing install.
Exemple Capacitor
Boucle Capacitor typique :
npx cap sync android
Compilez l’APK de debug, puis :
adb install -r android/app/build/outputs/apk/debug/app-debug.apk
Signez les APK de release avec votre clé d'upload avant l’upload sur Play. Avec Play App Signing, les téléchargements du store utilisent le certificat de signature de l’application, qui peut différer de votre certificat d’upload. Vous ne pouvez mettre à jour via ADB que si le certificat de l’APK correspond à celui de l’application installée et que les règles de mise à jour standard sont respectées. Comparez les certificats de signature avant de désinstaller. S’ils diffèrent, testez avec un APK issu d’une piste de test interne (signé comme le build Play) plutôt qu’avec un fichier signé localement. La désinstallation du build Play supprime les données de l’application.
Dépanner les erreurs d’installation
| Erreur ou symptôme | Cause probable | Solution à essayer |
|---|---|---|
unauthorized dans adb devices |
Prompt RSA non accepté | Déverrouillez le téléphone, approuvez le débogage USB, adb kill-server puis adb start-server |
no devices/emulators found |
Câble, pilote ou débogage désactivé | Nouveau câble, activer le débogage USB, pilote USB Google Windows si nécessaire |
INSTALL_FAILED_ALREADY_EXISTS |
Même package sans -r |
adb install -r app.apk ou adb uninstall d'abord |
INSTALL_FAILED_UPDATE_INCOMPATIBLE |
Clé de signature différente | Désinstaller l’ancienne app, ou installer un build signé avec la même clé |
INSTALL_FAILED_VERSION_DOWNGRADE |
versionCode inférieur sur une app non débogable | Désinstaller, augmenter la version, ou utiliser -d uniquement sur les packages débogables |
INSTALL_FAILED_INSUFFICIENT_STORAGE |
Espace disque insuffisant | Free space on device, remove unused apps |
INSTALL_FAILED_TEST_ONLY |
APK testOnly | adb install -t app.apk uniquement pour des builds de test de confiance |
INSTALL_FAILED_INVALID_APK |
Ensemble de splits corrompu ou incorrect | Recompiler l’APK, passer tous les splits à install-multiple |
more than one device/emulator |
Plusieurs appareils connectés | adb -s SERIAL install ... |
appareil non autorisé
adb devices affiche :
XXXXXXXX unauthorized
Corriger sur le téléphone, pas seulement dans le terminal :
- Rebrancher le câble USB et déverrouiller l’écran.
- Appuyez sur Autoriser sur « Autoriser le débogage USB ? »
- Vérifier « Toujours autoriser depuis cet ordinateur » pour votre machine de développement.
- Redémarrez ADB :
adb kill-server
adb start-server
adb devices
aucun appareil/émulateur trouvé
- Vérifiez que le débogage USB est activé (voir options développeur).
- Essayez un autre port USB et un autre câble.
- Sous Windows, installez le pilote USB Google depuis SDK Manager si le pilote OEM est manquant.
- Pour les émulateurs, démarrez l’AVD avant
adb install.
INSTALL_FAILED_UPDATE_INCOMPATIBLE
L’application installée a été signée avec un certificat différent de celui de l’APK que vous envoyez. Fréquent lors du mélange de debug et de release, lorsque Play App Signing utilise une clé différente de celle de votre APK d’upload, ou après une rotation de clé.
Vérifiez d'abord que le build installé est signé avec le même certificat que l'application sur l'appareil. Utilisez un APK de piste de test Play si vous devez correspondre à une installation de production.
If you must replace the install, uninstall deletes app data. Back up anything you need, then:
adb uninstall com.example.app
adb install app.apk
INSTALL_FAILED_VERSION_DOWNGRADE
L'APK versionCode est inférieur à la version installée.
Uniquement pour les packages débogables, test de rollback intentionnel :
adb install -r -d older.apk
Pour les builds de release depuis Play, désinstallez d'abord ou augmentez versionCode au lieu d'utiliser -d.
INSTALL_FAILED_INSUFFICIENT_STORAGE
L’appareil ne peut pas allouer d’espace pour le package. Supprimez des apps ou des médias, puis réessayez. Les APK très volumineux sur des téléphones de test à faible stockage déclenchent souvent cette erreur.
INSTALL_FAILED_TEST_ONLY
Le build est marqué test-only. Pour vos propres artefacts CI :
adb install -t -r app.apk
Ne pas utiliser -t pour installer des APK non fiables.
Pour les équipes Capacitor qui corrigent le JavaScript, les styles et la config sans attendre la revue du store, Capgo gère les live updates signées, les canaux et les rollbacks, en parallèle des releases natives sur les stores.