ADB (Android Debug Bridge) — is een multifunctioneel consolehulpprogramma dat deel uitmaakt van de Android SDK. Het stelt een computer in staat om rechtstreeks te communiceren met een Android-apparaat via een USB-kabel of via Wi-Fi. Met ADB kun je apps installeren en verwijderen, bestanden kopiëren, shell-commando's uitvoeren, systeemlogs bekijken, screenshots maken en het scherm opnemen, instellingen beheren en zelfs geautomatiseerde tests uitvoeren. Het hulpmiddel is onmisbaar voor ontwikkelaars, testers en enthousiastelingen die volledige controle over het apparaat willen krijgen.
Belangrijkste punten
Android Debug Bridge (ADB) — is een client-serverapplicatie die uit drie componenten bestaat: een client (draait op de computer), een server (achtergrondproces op de computer) en de adbd-daemon (draait op het Android-apparaat zelf). Wanneer een ontwikkelaar of ingenieur een smartphone op de pc aansluit, creëert ADB een betrouwbaar communicatiekanaal waarmee commando's, bestanden en gegevens kunnen worden verzonden.
De belangrijkste gebruiksscenario's van ADB zijn het debuggen van apps op een echt apparaat zonder het APK in de winkel te hoeven publiceren, het ophalen van logs voor foutanalyse, het automatiseren van tests, het back-uppen van gegevens, het flashen van recovery-images en het verkrijgen van root-toegang. Zelfs als je geen code schrijft, kan ADB nuttig zijn voor het ophalen van screenshots uit apps, het maken van een videogids van het telefoonscherm of het herstellen van een apparaat na een mislukte flash.
ADB-ondersteuning is ingebouwd in alle officiële Android-builds vanaf versie 2.1 (API 7). Voor gebruik moet de optie 'USB-foutopsporing' zijn ingeschakeld in de ontwikkelaarsinstellingen. Vanaf Android 4.2 vraagt het apparaat bij de eerste verbinding om bevestiging: je moet foutopsporing toestaan voor de specifieke computer op basis van zijn RSA-sleutel.
Voor Windows — download Platform Tools van de officiële Google Developers-website, pak het archief uit in de map C:\adb en voeg dit pad toe aan de omgevingsvariabele PATH. Na het herstarten van de terminal is het commando adb globaal beschikbaar.
Voor macOS — de eenvoudigste manier is om ADB te installeren via de pakketbeheerder Homebrew: voer brew install android-platform-tools uit. Alle afhankelijkheden worden automatisch opgelost.
Voor Linux — in op Debian / Ubuntu gebaseerde distributies: sudo apt install adb. Voeg na installatie de gebruiker toe aan de groep plugdev: sudo usermod -aG plugdev $USER en log opnieuw in zodat ADB toegang krijgt tot USB-apparaten.
De juistheid van de installatie kan worden gecontroleerd met het commando adb version. Als het versienummer van Android Debug Bridge wordt weergegeven, is het hulpmiddel klaar voor gebruik.
Eerste aansluiting begint altijd met het commando adb devices. Het toont de lijst met aangesloten apparaten en hun status. Als het apparaat wordt weergegeven als unauthorized, ontgrendel dan het scherm en bevestig de foutopsporing op de telefoon.
adb devices
List of devices attached
emulator-5554 device
0123456789ABCD device
App installeren — een van de meest voorkomende handelingen. Het volstaat om het pad naar het APK-bestand op te geven:
adb install C:\apps\myapp.apk
Als de app al is geïnstalleerd maar moet worden vervangen door een bijgewerkte versie, voeg dan de vlag -r (replace) toe:
adb install -r C:\apps\myapp-v2.apk
App verwijderen gebeurt op pakketnaam:
adb uninstall com.example.myapp
Bestanden kopiëren — adb pull haalt een bestand van het apparaat naar de computer, adb push uploadt een bestand naar het apparaat:
adb pull /sdcard/DCIM/screenshot.png .
adb push myfile.txt /sdcard/Documents/
Interactieve shell — het commando adb shell opent een opdrachtshell van het apparaat. Daarin kunnen standaard Linux-commando's worden uitgevoerd: ls, ps, top, dumpsys, pm, am en andere.
adb shell
tissot_sprout:/ $ ls -la /sdcard/
tissot_sprout:/ $ ps | grep com.android.chrome
Een activiteit starten via ADB maakt het mogelijk om elke app of elk scherm te openen zonder handmatig naar een pictogram te zoeken:
adb shell am start -n com.android.chrome/com.google.android.apps.chrome.Main
Logcat — is het Android-logboekingssysteem dat berichten verzamelt van apps, systeemdiensten en de kernel. Het hulpmiddel is onmisbaar bij het debuggen: aan de hand van logs kun je begrijpen waarom een app is gecrasht, welke methode een uitzondering heeft veroorzaakt of hoe lang een bepaalde bewerking duurt.
Eenvoudig starten zonder filters — adb logcat. De logstroom is oneindig, druk op Ctrl+C om te stoppen. Om berichten op tag te filteren, gebruik je de parameter -s:
adb logcat -s MainActivity:V
Belangrijkheidsniveaus van logboeking (van meest gedetailleerd tot kritiek): V (Verbose), D (Debug), I (Info), W (Warning), E (Error), F (Fatal). Een combinatie van tag en niveau maakt het mogelijk alleen de benodigde berichten te extraheren.
Om de opgebouwde buffer voor een test te wissen:
adb logcat -c
En om logs in een bestand op te slaan:
adb logcat -d > app_logs.txt
De vlag -d (dump) geeft de huidige buffer weer en beëindigt de uitvoering zonder de terminal te blokkeren. Dit is handig voor automatiseringsscripts.
Schermafbeelding wordt gemaakt met het commando adb shell screencap. Het resultaat wordt opgeslagen in een bestand dat vervolgens wordt opgehaald via adb pull:
adb shell screencap /sdcard/screen.png
adb pull /sdcard/screen.png
Je kunt beide bewerkingen combineren in één regel met substitutie en pipes. In de praktijk versnelt dit het maken van documentatie en testrapporten.
Schermopname is beschikbaar op Android 4.4+ (API 19). Standaard opnameduur is 180 seconden, bitrate — 4 Mbit/s. Het belangrijkste commando:
adb shell screenrecord /sdcard/demo.mp4
Druk op Ctrl+C om de opname te stoppen. De videoresolutie komt overeen met de schermresolutie van het apparaat, maar overschrijdt 1080p niet. Om de bitrate te wijzigen, geef je --bit-rate op:
adb shell screenrecord --bit-rate 8000000 /sdcard/demo.mp4
Diagnosecommando's: adb shell dumpsys toont de status van alle systeemdiensten. Om alleen informatie over de batterij te krijgen:
adb shell dumpsys battery
Een lijst met geïnstalleerde pakketten kan worden verkregen via Package Manager:
adb shell pm list packages
App-instellingen resetten (analoog aan het wissen van gegevens in instellingen):
adb shell pm clear com.example.myapp
Wi-Fi-foutopsporing elimineert de noodzaak om het apparaat via USB aangesloten te houden. Zorg ervoor dat de computer en het apparaat zich in hetzelfde netwerk bevinden. Voer eerst adb tcpip 5555 uit, koppel USB los en maak vervolgens verbinding via IP:
adb tcpip 5555
adb connect 192.168.1.100:5555
Als het IP-adres van het apparaat onbekend is, achterhaal het dan via adb shell ip addr show wlan0 voordat je de kabel loskoppelt.
Gegevensback-up van een app of het hele systeem wordt uitgevoerd zonder root:
adb backup -apk -shared -all -system -f mybackup.ab
Herstellen vanuit back-up:
adb restore mybackup.ab
Invoeremulatie — het commando adb shell input maakt het mogelijk om tikken, vegen, toetsaanslagen en tekstinvoer te simuleren. Dit is de basis voor het automatiseren van UI-tests zonder extra frameworks:
adb shell input tap 500 1000
adb shell input swipe 300 500 800 500
adb shell input text "Hello, ADB!"
Opnieuw opstarten in verschillende modi:
adb reboot # normale herstart
adb reboot recovery # herstelmodus
adb reboot bootloader # bootloader (fastboot)
De fastboot-modus biedt toegang tot het flashen van images, het ontgrendelen van de bootloader en het installeren van aangepaste recovery.
Wanneer meerdere apparaten of emulators tegelijk zijn aangesloten, vereist ADB dat een specifiek serienummer wordt opgegeven. Het commando adb devices toont alle aangesloten apparaten met hun serienummers.
Om een commando naar een specifiek apparaat te sturen, gebruik je de vlag -s:
adb -s 0123456789ABCD install myapp.apk
Als er maar één apparaat is, kun je zonder vlag werken. In een CI-omgeving waar meerdere emulators tegelijk draaien, is het opgeven van het serienummer echter verplicht.
ADB-server doden — als het apparaat niet meer wordt gedetecteerd of een fout geeft, helpt het herstarten van de server:
adb kill-server
adb start-server
Voer daarna adb devices uit — de server zal opnieuw opstarten en verzoeken doorsturen naar de apparaat-daemons.
| Commando | Beschrijving |
|---|---|
| adb devices | Toon lijst van aangesloten apparaten |
| adb install |
Installeren APK-bestand op apparaat |
| adb uninstall |
App verwijderen op pakketnaam |
| adb shell | Interactieve opdrachtshell starten |
| adb push |
Kopiëren bestand van computer naar apparaat |
| adb pull |
Bestand van apparaat naar computer kopiëren |
| adb logcat | Systeem- en app-logs bekijken |
| adb shell screencap | Schermafbeelding maken |
| adb shell screenrecord | Video van scherm opnemen |
| adb reboot | Herstarten van apparaat |
| adb tcpip 5555 | ADB omschakelen naar TCP/IP-modus voor Wi-Fi |
| adb connect |
Verbinding maken met apparaat via Wi-Fi |
Veelgestelde vragen
Open 'Instellingen' → 'Over telefoon' en tik 7 keer op 'Buildnummer'. Ga terug naar het hoofdmenu van de instellingen — de sectie 'Voor ontwikkelaars' verschijnt. Schakel daarbinnen 'USB-foutopsporing' in. Vanaf Android 4.2 moet bij de eerste verbinding met een computer de RSA-foutopsporingssleutel op het apparaatscherm worden bevestigd.
Het apparaat vertrouwt de computer niet. Ontgrendel het telefoonscherm, wanneer het dialoogvenster 'USB-foutopsporing toestaan?' verschijnt, vink dan 'Altijd toestaan voor deze computer' aan en druk op 'OK'. Als het dialoogvenster niet verschijnt, koppel dan de USB-kabel los en weer aan of voer adb kill-server && adb start-server uit.
ADB vereist geen interactie met het scherm. Sluit het apparaat aan via USB, wacht tot het verschijnt in adb devices (als foutopsporing al was ingeschakeld) en voer adb install
ADB installeert het APK direct, waarbij de Google Play Protect-controles tijdens de installatie worden omzeild, waardoor apps voor publicatie kunnen worden getest. De definitieve controle op schadelijke code wordt echter nog steeds na installatie uitgevoerd. ADB vereist geen Google-account, wat belangrijk is voor zakelijke kiosken en apparaten zonder Google-services.
Ja, de overgrote meerderheid van ADB-commando's werkt zonder root. Uitzonderingen zijn commando's die toegang vereisen tot beveiligde systeempartities (bijvoorbeeld directe dump van de boot-partitie of het wijzigen van systeembestanden). Voor dagelijkse taken — apps installeren, loggen, screenshots, back-ups, invoeremulatie — is root niet nodig.
ADB (Android Debug Bridge) — is een fundamenteel hulpmiddel voor iedereen die professioneel met Android werkt. Van het eenvoudig installeren van apps tot complexe testautomatisering en apparaatherstel — ADB dekt vrijwel elk scenario van computerinteractie met een smartphone of tablet.
Door de commando's in dit artikel onder de knie te krijgen, kun je een Android-apparaat zelfverzekerd via de terminal beheren, logs analyseren, screenshots maken voor documentatie, back-ups uitvoeren en het ontwikkelproces versnellen. Regelmatige oefening en het bestuderen van de uitvoer van adb help maken je tot een ervaren gebruiker van dit krachtige hulpmiddel.
Samenvatting
Samenvatting
We ontwikkelen een mobiele applicatie turnkey
IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.
Lees ook