- Rakesh
- 15 mars 2020
ADB ou Android Debug Bridge est un outil de ligne de commande développé pour faciliter la communication entre un ordinateur et un émulateur ou un appareil Android connecté. En utilisant ADB et les commandes ADB Shell, nous pouvons effectuer diverses actions sur un appareil. Pour que vous puissiez exécuter les commandes ADB et Fastboot, le paquet Android SDK Platform-tools doit être installé sur votre ordinateur Windows, Linux ou macOS. Dans cet article, nous allons explorer une énorme liste de commandes ADB Shell avec une antisèche.
N’oubliez pas de consulter la liste détaillée des commandes ADB expliquant la fonction de chacune d’entre elles.
Qu’est-ce que ADB Shell ?
Les commandes ADB peuvent être utilisées pour déboguer les appareils Android, installer ou désinstaller des applications et obtenir des informations sur un appareil connecté. ADB fonctionne à l’aide de trois composants appelés Client, Daemon et Serveur. Si vous êtes curieux de savoir comment ces 3 composants fonctionnent ensemble pour faire fonctionner ADB et les commandes shell ADB, voyez ci-dessous :
- Client : C’est est très ordinateur sur lequel vous utilisez un terminal de ligne de commande pour émettre une commande ADB. qui envoie des commandes.
- Daemon : Ou, ADBD est un processus d’arrière-plan qui fonctionne sur les deux appareils connectés. Il est responsable de l’exécution des commandes sur un émulateur ou un appareil Android connecté.
- Serveur : Il s’exécute en arrière-plan et fonctionne comme un pont entre le client et le démon et gère la communication. qui gère la communication entre le client et le démon.
Les commandes ADBD Shell donnent accès à un Shell Unix qui exécute une commande directement sur votre appareil Android. Dès que vous exécutez une commande ‘adb shell’ sur le terminal de commande, elle envoie un signal à votre appareil Android et déclenche la console de commande du shell distant. Ainsi, les commandes shell ADB vous permettent de contrôler votre appareil Android.
En utilisant les commandes ADB, vous pouvez redémarrer votre appareil, pousser et tirer des fichiers, créer une sauvegarde et la restaurer, sideloader un paquet zip de mise à jour ou un APK. Les commandes ADB Shell, cependant, fonctionnent à un niveau beaucoup plus profond. Elles peuvent être utilisées pour modifier la résolution de l’affichage de votre appareil, désinstaller des bloatware ou des apps système, activer et désactiver des fonctionnalités, modifier les fichiers système et changer leur configuration directement à l’aide de commandes depuis votre ordinateur.
En fait, il y a plus de tâches que vous pouvez effectuer à l’aide de ces commandes, et ci-dessous nous les vérifierons toutes avec des exemples. Veuillez noter qu’il existe trois conditions préalables avant de pouvoir faire usage des commandes ADB, Fastboot et ADB shell.
- Outils de la plateforme SDK Android
- Pilotes USB pour votre appareil Android
- Activer le débogage USB
Maintenant, vous pouvez utiliser Web ADB dans une fenêtre de navigateur Web pour exécuter les commandes ADB sur un appareil Android ou un ordinateur sans installer les outils ADB et Fastboot et les pilotes USB.
Enfin, sans plus attendre, poursuivons avec notre liste de commandes ADB Shell.
Avertissement : N’utilisez pas les commandes mentionnées sur cette page à moins que vous ne sachiez comment les utiliser et que vous ayez quelques connaissances ou expériences préalables.
Liste des commandes du shell ADB & Cheat Sheet
Dans ce cheat sheet des commandes du shell ADB, je vais essayer d’expliquer la fonction de toutes les commandes dans un langage simple.
adb shell
Cette commande active la console de commande shell à distance sur le smartphone ou la tablette Android connecté.
adb shell pm uninstall
C’est vraiment une commande ADB Shell très utile. En l’utilisant, vous pouvez facilement désinstaller les applis système indésirables. Pour pouvoir l’exécuter, vous devez d’abord émettre la commande ‘adb shell’. Vous pouvez ensuite utiliser pm uninstall -k --user 0
ou pm uninstall --user 0
suivi du nom du package de l’application Android comme indiqué ci-dessous.
pm uninstall -k --user 0 com.facebook.appmanager
-k
: Conservez les données et le cache de l’application après la suppression du package. Si vous souhaitez que les données de l’app soient également effacées, utilisez ce qui suit
pm uninstall --user 0 com.android.chrome
Si vous ne connaissez pas le nom du package des apps que vous souhaitez supprimer, vous pouvez utiliser adb shell pm list packages
pour le trouver.
Cette commande peut vous aider si vous souhaitez supprimer tous les bloatwares de votre téléphone Android. Veuillez noter que la plupart des apps système n’ont pas l’option » Désinstaller » sur l’appareil, mais cette commande fonctionne comme par magie.
adb shell cmd package install-existant
En utilisant la commande ci-dessus, vous pouvez réinstaller une app système désinstallée.
cmd package install-existing com.facebook.appmanager
adb shell pm disable-user -user 0
Si vous voulez désactiver une application système sur votre appareil Android, vous pouvez exécuter la commande ci-dessus suivie du nom du package de l’app
pm disable-user --user 0 com.google.ar.core
adb shell pm clear -user 0
En utilisant cette commande, vous pouvez supprimer toutes les données associées à une app.
adb shell pm clear -user 0 com.facebook.appmanager
adb shell pm hide -user 0
Dans le cas où vous souhaitez cacher une app installée sur votre appareil Android, vous pouvez exécuter cette ligne de commande suivie du nom du package de l’app.
adb shell pm hide --user 0 com.whatsapp
adb shell pm list packages
En utilisant la commande ADB Shell ci-dessus, vous pouvez imprimer la liste des noms des paquets d’apps pour toutes les apps installées sur votre appareil Android. Vous pouvez utiliser cette commande avec différents paramètres pour obtenir une liste plus spécifique des paquets d’apps.
Par exemple, si vous voulez lister les apps système uniquement, utilisez
adb shell pm list packages -s
Pour lister toutes les apps tierces installées sur votre téléphone ou tablette Android, vous émettez la commande suivante.
adb shell pm list packages -3
Si vous voulez qu’ADB Shell affiche la liste de toutes les apps activées ou désactivées sur votre appareil, essayez la commande avec des paramètres comme ‘-d’ (pour les apps désactivées), ‘-e’ (pour les apps activées) et ‘-u’ (pour les apps désinstallées).
adb shell pm list packages -d
adb shell pm list packages -e
adb shell pm list packages -u
Pour lister les paquets d’apps avec un filtre de mots-clés spécifiques.
adb shell pm list packages <keywords>
Pour trouver la liste des apps avec leurs paquets associés, exécutez la commande suivante
adb shell pm list packages -f
Vous pouvez facilement obtenir une liste de paquets de groupe par un certain fabricant, ou venir terme commun. Par exemple, si vous voulez lister toutes les applications de Google, vous pouvez utiliser la commande suivante.
adb shell pm list packages | grep 'google'
Vous pouvez remplacer « google » par « samsung », « huawei », « xiaomi », « miui », « evenwell », « android », « facebook », etc. pour obtenir la liste de paquets souhaitée.
adb shell pm path <package-name>
Cette commande affiche le chemin de l’APK sur le système de fichiers de l’appareil.
adb shell pm create-user
Vous pouvez utiliser cette commande pour créer un nouvel utilisateur sur votre appareil Android.
adb shell pm create-user username
adb shell pm remove-user
Dans le cas où vous souhaitez supprimer un utilisateur de votre appareil, vous pouvez utiliser la commande ci-dessus avec suivie de la user_id
comme indiqué ci-dessous.
adb shell pm remove-user user 1
adb shell pm get-max-users
En utilisant cette commande, vous pouvez imprimer le nombre maximum d’utilisateurs pris en charge sur un appareil Android.
adb shell pm list features
Utilisez la commande ci-dessus pour imprimer toutes les fonctionnalités prises en charge du système.
adb shell pm list permissions
Cette commande imprime la liste de toutes les permissions connues, éventuellement uniquement celles de group
. Vous pouvez l’utiliser avec les paramètres suivants.
-
-g
: Organiser les autorisations par groupe -
-f
: Imprimer toutes les informations -
-s
: Résumé succinct des permissions -
-d
: Lister les permissions dangereuses uniquement -
-u
: Lister les permissions vues par les utilisateurs uniquement
adb shell pm list permissions -d group
paramètres du shell adb
Vous pouvez utiliser cette commande pour obtenir des informations sur certains paramètres de votre appareil Android. En ajoutant différents paramètres, vous pouvez connaître le fournisseur de paramètres Android, le niveau de volume actuel du système, le son de notification, l’ID de l’appareil, l’adresse MAC Bluetooth, l’état actuel des données mobiles, l’état actuel du WiFi, etc.
-
adb shell settings list system
-
adb shell settings get system volume_system
-
adb shell settings get system notification_sound
-
adb shell settings list secure
-
adb shell settings get secure android_id
-
adb shell settings get secure bluetooth_address
-
adb shell settings list global
-
adb shell settings get global mobile_data
-
adb shell settings get global wifi_on
.
adb shell dumpsys
C’est une commande très flexible qui peut être utilisée seule ou avec divers paramètres pour obtenir des données liées à la batterie, l’affichage, le CPU, la RAM, le stockage, etc. L’exécution de cette commande vous donnera des informations détaillées sur la configuration logicielle et matérielle de l’appareil Android.
Note : Afin d’utiliser cet outil, n’oubliez pas d’ajouter automatiquement la permission dans votre manifeste Android android.permission.DUMP
adb shell dumpsys
Les autres variantes de la commande sont les suivantes :
-
adb shell dumpsys input
-
adb shell dumpsys display
-
adb shell dumpsys battery
-
adb shell dumpsys batterystats
- .
adb shell dumpsys activity
-
adb shell dumpsys cpuinfo
-
adb shell dumpsys battery
L’exécution de la commande ‘adb shell dumpsys cpuinfo’, par exemple, imprimera une liste de l’utilisation du processeur par les processus et les apps en cours d’exécution sur votre appareil Android, comme indiqué ci-dessous :
PS C:\Users\Technastic\Desktop> adb devices List of devices attached RZ8M810BARJ device PS C:\Users\Technastic\Desktop> adb shell dumpsys cpuinfo Load: 12.48 / 12.76 / 12.82 CPU usage from 138400ms to 89027ms ago: 8.1% 5954/system_server: 5.5% user + 2.5% kernel / faults: 9802 minor 5 major 3.1% 6485/com.android.phone: 2.2% user + 0.9% kernel / faults: 6575 minor 1 major 2.7% 6596/com.android.systemui: 2.1% user + 0.6% kernel / faults: 3178 minor 1 major 2.6% 26484/com.netflix.mediaclient: 1.3% user + 1.3% kernel / faults: 109 minor 2% 2231/sugov:0: 0% user + 2% kernel 1% 24100/kworker/u18:2: 0% user + 1% kernel 1% 5706/statsd: 0.9% user + 0.1% kernel 0.5% 3752/ueventd: 0.4% user + 0.1% kernel / faults: 25 minor 0.5% 5721/rild: 0.3% user + 0.2% kernel / faults: 20 minor 0.5% 5169/logd: 0.3% user + 0.2% kernel / faults: 43 minor 0.5% 5558/surfaceflinger: 0.3% user + 0.2% kernel / faults: 1 minor 0.4% 5170/servicemanager: 0.2% user + 0.2% kernel 0.4% 1/init: 0.3% user + 0% kernel 0.4% 19725/kworker/u17:3: 0% user + 0.4% kernel 0.3% 5546/lmkd: 0% user + 0.3% kernel 0.3% 5456/kworker/u17:1: 0% user + 0.3% kernel 0.3% 5715/argosd: 0.1% user + 0.1% kernel 0.3% 2233/sugov:4: 0% user + 0.3% kernel 0.2% 23487/kworker/u18:0: 0% user + 0.2% kernel 0.1% 23896/kworker/u16:3: 0% user + 0.1% kernel / faults: 6 minor 0.1% 8/rcu_preempt: 0% user + 0.1% kernel 0.1% 5718/lhd: 0% user + 0.1% kernel 0.1% 23489/kworker/0:2: 0% user + 0.1% kernel
adb shell wm density
La commande ci-dessus peut être utilisée pour connaître la densité en pixels de l’écran de votre appareil Android.
adb shell dumpsys window displays
Vous obtiendrez une sortie très détaillée sur la fenêtre de commande avec des infos comme la résolution en pixels, le FPS et le DPI de l’écran de votre téléphone.
Display: mDisplayId=0 init=1440x3040 560dpi base=1080x2280 420dpi cur=1080x2280 app=1080x2069 rng=1080x1017-2069x2069 deferred=false mLayoutNeeded=false mTouchExcludeRegion=SkRegion((0,0,1080,2280)) mDisplayInfo=DisplayInfo{"Built-in Screen, displayId 0", uniqueId "local:0", app 1080 x 2069, real 1080 x 2280, largest app 2069 x 2069, smallest app 1080 x 1017, mode 1, defaultMode 1, modes [{id=1, width=1440, height=3040, fps=60.000004}
adb shell wm size
Vous pouvez connaître la résolution d’affichage de votre téléphone avec cette commande.
PS C:\Users\Technastic\Desktop> adb shell wm size Physical size: 1440x3040 Override size: 1080x2280
Si vous souhaitez modifier la résolution d’écran et la densité de pixels de l’affichage de votre Android. Si vous n’êtes pas sûr de la résolution d’affichage de votre appareil, exécutez la commande donnée ci-dessous. Supposons que la résolution d’affichage de votre téléphone est QHD+, vous pouvez facilement la changer en Full HD+ ou HD+.
- FHD
adb shell wm size 1080x2220
adb shell wm density 420
- HD
adb shell wm size 720x1560
adb shell wm density 360
Commande ADB Shell pour envoyer un écran SMS
Si vous voulez envoyer un message texte en utilisant une commande, essayez le code suivant.
adb shell am start -a android.intent.action.SENDTO -d sms:+918052000222 --es sms_body "Test --ez exit_on_sent false
commande shell adb screencap
En utilisant cette commande, vous pouvez capturer une capture d’écran et la télécharger sur votre ordinateur en utilisant la commande ‘adb pull’ comme décrit ci-dessus.
adb shell screencap /sdcard/screenshot-01.png
adb shell screenrecord
Sur les appareils Android fonctionnant sous Android 4.4 KitKat et plus, vous pouvez même enregistrer l’écran de votre téléphone ou tablette et télécharger la vidéo enregistrée sur votre ordinateur. En outre, vous pouvez également définir des conditions telles que la durée de la vidéo, la résolution en pixels et le débit binaire vidéo, etc.
adb shell screenrecord /sdcard/screenrecord-01.mp4
adb pull screenrecord /sdcard/screenrecord.mp4
Vous pouvez arrêter l’enregistrement de l’écran en utilisant Ctrl+C. Dans le cas où vous souhaitez enregistrer l’écran dans une résolution spécifique, la commande suivante vous permet de définir une largeur et une hauteur personnalisées en pixels.
adb shell screenrecord --size 1920x1080 /sdcard/screenrecord-01.mp4
Par défaut, la durée de l’enregistreur d’écran d’Android est définie sur 180 secondes (3 minutes). Vous pouvez diminuer cette durée en fonction de vos besoins (180 secondes est la limite maximale).
adb shell screenrecord --time-limit 120 /sdcard/screenrecord-01.mp4
De même, vous pouvez également déterminer le débit binaire de la sortie vidéo. Pour définir le débit binaire à 4MBPS, par exemple, vous pouvez utiliser la valeur suivante :
adb shell screenrecord --bit-rate 6000000 /sdcard/screenrecord-01.mp4
adb shell getprop & adb shell setprop
Les commandes ‘getprop’ et ‘setprop’ peuvent être utilisées pour afficher et définir ou modifier la configuration du fichier ‘build.prop’ sur les appareils Android. La commande suivante, par exemple, affiche les informations sur les propriétés du système Android.
adb shell getprop
Vous trouverez ci-dessous d’autres exemples:
getprop ro.build.version.sdk
getprop ro.chipname
Dans le cas où vous souhaitez modifier la valeur d’une entrée dans le build.prop, vous pouvez utiliser les commandes ‘adb shell setprop’. Voir les exemples ci-dessous :
getprop net.dns1 1.2.3.4
setprop net.dns1 1.3.4.5
getprop net.dns2 1.1.2.3
setprop net.dns2 1.2.3.4
De la même manière, si vous souhaitez modifier la configuration de la taille de VMHeap sur votre appareil Android, vous pouvez utiliser la commande suivante.
setprop dalvik.vm.heapsize 60m
Il existe quelques autres variantes de la commande ‘adb shell getprop’ qui vous permettent de voir des informations sur les propriétés du système Android, le niveau d’API du SDK, la version du patch de sécurité Android, Soc, la version d’Android, le modèle de l’appareil, le fabricant de l’appareil, le numéro de série ADB, le statut de déverrouillage OEM, l’empreinte digitale de construction de l’appareil Android, l’adresse MAC WiFi, etc.
-
adb shell getprop
-
adb shell getprop ro.build.version.sdk
-
adb shell getprop ro.build.version.security_patch
.
-
adb shell getprop ro.board.platform
-
adb shell getprop ro.build.version.release
-
adb shell getprop ro.vendor.product.model
.
-
adb shell getprop ro.product.manufacturer
-
adb shell getprop ro.serialno
-
adb shell getprop ro.oem_unlock_supported
-
adb shell getprop ro.bootimage.build.fingerprint
-
adb shell getprop ro.boot.wifimacaddr
adb -s shell getprop
Si vous voulez vérifier la configuration complète, les services en cours d’exécution et les informations sur votre téléphone ou tablette Android, vous pouvez utiliser la commande ci-dessus. Tout d’abord, exécutez la commande adb devices
et copiez la valeur alphanumérique de l’ID de votre appareil à partir de la sortie.
PS C:\Users\Technastic\Desktop> adb devices List of devices attached RZ8M810BARJ device
Puis exécutez la commande suivante. N’oubliez pas de remplacer l’ID de l’appareil surligné en bleu par l’ID de votre appareil.
adb -s RZ8M810BARJ shell getprop
adb shell cat /proc/cpuinfo
Utilisez la commande ci-dessus pour obtenir des informations complètes sur le processeur de votre téléphone ou de votre tablette.
Avoir les propriétés d’un appareil Android
En exécutant la commande suivante, vous pouvez voir les propriétés du système.
adb shell getprop | grep -e 'model' -e 'version.sdk' -e 'manufacturer' -e 'hardware' -e 'platform' -e 'revision' -e 'serialno' -e 'product.name' -e 'brand'
Coquille ADB cd
Changez le répertoire de la coquille ADB en utilisant ‘cd
directory>’
adb shell
Exécutez ensuite la commande suivante :
cd /system
adb shell rm
Cette commande vous permet de supprimer facilement un fichier ou un dossier du stockage de votre appareil Android. Lancez la fenêtre de commande, exécutez la commande ‘adb shell’, puis essayez la commande suivante avec les paramètres ‘-f’ (pour supprimer un fichier) et ‘-d’ (pour supprimer un répertoire).
rm -f /sdcard/com.whatsapp.apk
rm -d /sdcard/WhatsApp
Note : Au lieu de ‘rm-d’, vous pouvez également utiliser ‘rmdir’.
adb shell mkdir
En plus de supprimer un répertoire ou un dossier existant, ADB Shell vous permet également de créer un nouveau répertoire ou sous-répertoire. Non seulement cela, mais vous pouvez définir des autorisations pour le dossier nouvellement créé.
mkdir /sdcard/NewFolder mkdir -p /sdcard/NewFolder/NewFolder1 mkdir -m 644 /sdcard/NewFolder
adb shell cp
« cp » signifie « copie ». Vous pouvez utiliser cette commande pour copier les fichiers et les répertoires situés sur votre appareil Android. Encore une fois, vous devez commencer par la commande ‘adb shell’.
Pour copier des fichiers et ensuite les coller, en mentionnant les emplacements source et destination comme indiqué ci-dessous:
cp /sdcard/OPWallpaperResources.apk /sdcard/DCIM/Camera
adb shell mv
‘mv’ signifie ‘déplacer’. Cette commande peut être utilisée pour déplacer un fichier stocké sur votre appareil depuis un emplacement source vers un emplacement de destination.
mv /sdcard/livewallpapers.apk /system/app
La commande suivante vous permettra de déplacer un fichier avec un nouveau nom.
mv /sdcard/livewallpapers.apk /sdcard/Wallpapers
adb shell top
Pour afficher la liste des principaux processus CPU sur un téléphone ou une tablette Android, vous pouvez utiliser la commande ci-dessus. Le moniteur des processus CPU peut être arrêté en utilisant Ctrl+C.
adb shell ip
Découvrir l’adresse IP WiFi du de d’un téléphone ou d’une tablette Android.
ip -f inet addr show wlan0
adb shell netstat
Affiche les statistiques réseau des téléphones Android.
adb shell netstat
Commandes KeyEvent
Les appareils Android prennent en charge les commandes KeyEvent qui peuvent vous permettre d’effectuer certaines actions qui nécessitent d’appuyer sur un bouton matériel ou de toucher une application ou une option de l’interface utilisateur. Vous pouvez contrôler votre téléphone ou votre tablette Android simplement en utilisant ces commandes KeyEvent. Ces commandes pourraient s’avérer pratiques si les touches matérielles de votre appareil ne fonctionnent pas correctement en raison de certains dommages.
-
Turn Android device ON or OFF: adb shell input keyevent 2
-
Press Home button: adb shell input keyevent 3
-
Press Back button: adb shell input keyevent 4
-
Press Call button: adb shell input keyevent 5
-
End a call: adb shell input keyevent 6
-
Turn ON the camera: adb shell input keyevent 27
-
Open wen browser: adb shell input keyevent 64
-
Press the Enter key: adb shell input keyevent 66
-
Press Backspace button: adb shell input keyevent 67
-
Open Contacts app: adb shell input keyevent 207
-
Decrease display brightness: adb shell input keyevent 220
.
Increase Display brightness: adb shell input keyevent 221
Cut text: adb shell input keyevent 277
.
Copy text: adb shell input keyevent 278
Paste text: adb shell input keyevent 279
Vous pouvez en savoir plus sur les commandes KeyEvent sur le portail des développeurs Google.