ADB og Fastboot
Bemærk venligst: Denne vejledning er beregnet til alle brugere, der er bevidste om risiciene ved at foretage ændringer i udviklerindstillingerne og har sat sig ind i mulighederne med ADB. Volla påtager sig intet ansvar i tilfælde af datatab eller komplikationer med enheden. Brug af denne vejledning sker på eget ansvar og anbefales udtrykkeligt ikke til brugere uden erfaring.
ADB - Android Debug Bridge
Grundlæggende om ADB-kommandoer
ADB-kommandoer indtastes via et terminalvindue (Windows: Kommandoprompt/PowerShell, macOS/Linux: Terminal). Den generelle syntaks er:
adb [indstilling] [kommando] [parameter]
- Du skal sikre dig, at ADB er installeret på din computer (enten via Android SDK eller som Minimal-ADB-værktøj).
- Enheden skal være tilsluttet via USB-fejlfinding eller trådløs fejlfinding ([se her](https://forum.volla.online/viewtopic.php?f=141&t=1539)).
Hyppige ADB-kommandoer med forklaring
1. Forbindelses- og statuskommandoer
adb devices
- Beskrivelse: Lister alle tilsluttede enheder.
- Eksempel: adb devices → Output: "1234567890abcdef device" (enhed tilsluttet) eller "192.168.1.100:5555 device" (trådløs).
- Tip: Hvis der står "unauthorized", skal du kontrollere fejlfindingsspørgsmålet på enheden.
adb connect <IP>:<Port>
- Beskrivelse: Opretter forbindelse til en enhed via Wi-Fi.
- Eksempel: adb connect 192.168.1.100:5555
adb disconnect <IP>:<Port>
- Beskrivelse: Afbryder den trådløse forbindelse.
- Eksempel: adb disconnect 192.168.1.100:5555
adb pair <IP>:<Port>
- Beskrivelse: Parrer en enhed med en parringskode (til trådløs fejlfinding).
- Eksempel: adb pair 192.168.1.100:37000 → Indtast koden (f.eks. "123456").
2. Shell-adgang
adb shell
- Beskrivelse: Åbner en interaktiv shell på enheden for at udføre Linux-kommandoer.
- Eksempel: adb shell → Derefter f.eks. ls (viser kommandoer som dir i Windows).
adb shell <kommando>
- Beskrivelse: Udfører en enkelt kommando uden at holde shellen åben.
- Eksempel:
adb shell pm list packages→ Lister alle installerede apps (pakkenavne).
3. App-administration
adb install <sti-til-APK>
- Beskrivelse: Installerer en APK-fil på enheden.
- Eksempel: adb install C:\Apps\minapp.apk
- Indstilling: -r overskriver en eksisterende app (f.eks. adb install -r minapp.apk).
adb uninstall <pakkenavn>
- Beskrivelse: Afinstallerer en app (pakkenavn kræves).
- Eksempel: adb uninstall com.example.app
- Indstilling: -k bevarer data/cache (f.eks. adb uninstall -k com.example.app).
adb shell pm disable-user <pakkenavn>
- Beskrivelse: Deaktiverer en app uden at afinstallere den (f.eks. bloatware).
- Eksempel: adb shell pm disable-user com.samsung.bloat
adb shell pm enable <pakkenavn>
- Beskrivelse: Aktiverer en deaktiveret app igen.
- Eksempel: adb shell pm enable com.samsung.bloat
4. Filoverførsel
adb push <lokal-sti> <enheds-sti>
- Beskrivelse: Kopierer en fil fra computeren til enheden.
- Eksempel: adb push C:\Files\test.txt /sdcard/
- Tip: Målmappen skal eksistere og være tilgængelig.
adb pull <enheds-sti> <lokal-sti>
- Beskrivelse: Kopierer en fil fra enheden til computeren.
- Eksempel: adb pull /sdcard/test.txt C:\Files\
5. Enhedsinformation og fejlfinding
adb logcat
- Beskrivelse: Viser realtidslogs fra enheden (nyttigt for udviklere).
- Eksempel: adb logcat → Tryk Ctrl+C for at afslutte.
- Indstilling: adb logcat | grep "Fejl" filtrerer efter specifikke termer.
adb shell dumpsys
- Beskrivelse: Giver detaljerede systeminformationer.
- Eksempel: adb shell dumpsys battery → Viser batteristatus.
adb shell getprop
- Beskrivelse: Lister enhedsegenskaber (f.eks. Android-version).
- Eksempel: adb shell getprop ro.build.version.release → Viser f.eks. "14".
6. Enhedskontrol
adb reboot
- Beskrivelse: Genstarter enheden.
- Eksempel: adb reboot
- Indstillinger: adb reboot recovery (til recovery-tilstand) eller adb reboot bootloader (til fastboot).
adb shell input tap <x> <y>
- Beskrivelse: Simulerer et tryk på skærmen (koordinater i pixels).
- Eksempel: adb shell input tap 500 1000 → Trykker på X=500, Y=1000.
adb shell input text <tekst>
- Beskrivelse: Indtaster tekst.
- Eksempel: adb shell input text "Hej" → Indtaster "Hej".
7. Netværk og skærmbilleder
adb shell screencap <sti>
- Beskrivelse: Tager et skærmbillede på enheden.
- Eksempel: adb shell screencap /sdcard/skærmbillede.png → Hent derefter med adb pull.
adb shell screenrecord <sti>
- Beskrivelse: Optager en video af skærmen (maks. 3 minutter).
- Eksempel: adb shell screenrecord /sdcard/video.mp4 → Tryk Ctrl+C for at stoppe.
adb shell ifconfig
- Beskrivelse: Viser netværksdetaljer (f.eks. IP-adresse).
- Eksempel: adb shell ifconfig wlan0
Avancerede ADB-kommandoer
adb shell pm grant <pakkenavn> <tilladelse>
- Beskrivelse: Giver en app en specifik tilladelse.
- Eksempel: adb shell pm grant com.example.app android.permission.WRITE_SECURE_SETTINGS
adb shell wm size <bredde>x<højde>
- Beskrivelse: Ændrer skærmopløsningen (til test).
- Eksempel: adb shell wm size 720x1280
- Nulstil: adb shell wm size reset
adb shell am start -n <pakkenavn>/<aktivitet>
- Beskrivelse: Starter en app eller aktivitet direkte.
- Eksempel: adb shell am start -n com.android.settings/.Settings
adb backup -apk -shared -all -f <fil>
- Beskrivelse: Opretter en backup af enheden.
- Eksempel: adb backup -apk -shared -all -f backup.ab
Praktiske eksempler
- Fjern bloatware uden root:
- Find pakkenavnet:
adb shell pm list packages | grep "pakkenavn" - Deaktiver:
adb shell pm disable-user com.<pakkenavn>
- Find pakkenavnet:
- Automatiseret skærmbillede:
adb shell screencap /sdcard/skærmbillede.png && adb pull /sdcard/skærmbillede.png C:\Skærmbilleder\
- Installer en app uden butik:
adb install C:\Downloads\app.apk
Tips og tricks
- Flere enheder: Hvis flere enheder er tilsluttet, tilføj -s <serienummer>, f.eks.
adb -s 1234567890abcdef shell. - Kombiner kommandoer: Brug && til flere handlinger, f.eks.
adb shell screencap /sdcard/test.png && adb pull /sdcard/test.png. - Alias: Opret genveje i dit terminal, f.eks. alias screenshot='adb shell screencap...'.
Begrænsninger
- Uden root-adgang er mange systemområder låst (f.eks. /system).
Fastboot
er et kraftfuldt værktøj i Android-økosystemet, der ofte bruges sammen med ADB, men arbejder på et dybere niveau. Det er særligt nyttigt til bootloader-operationer, flashing af firmware og enhedsmodifikationer.
Hvad er Fastboot?
Fastboot er et protokol og et kommandolinjeværktøj, der giver dig mulighed for at interagere direkte med en Android-enheds bootloader. Bootloaderen er den software, der indlæses ved enhedens start, før operativsystemet (Android) starter. Med Fastboot kan du flashe systempartitioner, låse bootloaderen op eller nulstille enheder – ting, der ikke er mulige via ADB.
- Forskel fra ADB: ADB arbejder inden for det kørende Android-system, mens Fastboot er aktiv i bootloader-tilstand.
- Forudsætning: Fastboot skal være installeret på din computer (enten via Android SDK eller som en del af Minimal ADB and Fastboot).
Forudsætninger for Fastboot
- Fastboot-drivere: Sørg for, at Fastboot-driverne er installeret på din pc (på Windows ofte en del af Google USB Drivers).
- USB-kabel: Fastboot fungerer kun via en USB-forbindelse (ingen trådløs tilstand).
- Bootloader-tilstand: Enheden skal startes i Fastboot-tilstand (også kaldet "Bootloader-tilstand").
- Indtastning: Sluk enheden, hold derefter en tastesekvens (f.eks. Power + Lydstyrke ned) nede, og tilslut den via USB til pc'en.
- Alternativ via ADB:
adb reboot bootloader
- Låst op bootloader (valgfrit): Mange kommandoer kræver, at bootloaderen er låst op (se nedenfor).
Hyppige Fastboot-kommandoer
1. Forbindelses- og statuskommandoer
fastboot devices
- Beskrivelse: Lister alle enheder i Fastboot-tilstand.
- Eksempel: fastboot devices → Output: "1234567890 fastboot"
- Tip: Hvis intet vises, skal du kontrollere USB-forbindelsen eller driverne.
fastboot getvar <variabel>
- Beskrivelse: Viser informationer om enheden (f.eks. bootloader-status).
- Eksempel: fastboot getvar unlocked → Output: "yes" (låst op) eller "no" (låst).
2. Bootloader-operationer
fastboot oem unlock
- Beskrivelse: Låser bootloaderen op (advarsel: Sletter alle data!).
- Eksempel: fastboot oem unlock
- Bemærk: Ikke tilgængelig på alle enheder; nogle (f.eks. Xiaomi) kræver en oplåsningskode fra producenten.
- Alternativ: fastboot flashing unlock (nyere enheder).
fastboot oem lock
- Beskrivelse: Låser bootloaderen igen.
- Eksempel: fastboot oem lock
- Bemærk: Nulstiller ofte enheden.
fastboot flashing lock
- Beskrivelse: Alternativ til at låse (nyere Android-versioner).
- Eksempel: fastboot flashing lock
3. Flashing af partitioner
fastboot flash <partition> <fil>
- Beskrivelse: Skriver et image til en bestemt partition (f.eks. Boot, Recovery, System).
- Eksempel: fastboot flash recovery recovery.img → Flasher et custom recovery som TWRP.
- Hyppige partitioner:
- boot: Kernel og RAM-disk.
- recovery: Recovery-tilstand.
- system: Android-operativsystem.
- vbmeta: Verifikationsdata (til Android Verified Boot).
fastboot flashall
- Beskrivelse: Flasher alle partitioner fra et factory-image (f.eks. boot.img, system.img).
- Eksempel: fastboot flashall (filerne skal være i samme mappe).
fastboot erase <partition>
- Beskrivelse: Sletter en partition.
- Eksempel: fastboot erase userdata → Sletter alle brugerdata.
4. Enhedskontrol
fastboot reboot
- Beskrivelse: Genstarter enheden til normalt system.
- Eksempel: fastboot reboot
fastboot reboot recovery
- Beskrivelse: Genstarter til recovery-menuen.
- Eksempel: fastboot reboot recovery
fastboot reboot bootloader
- Beskrivelse: Genstarter tilbage til Fastboot-tilstand.
- Eksempel: fastboot reboot bootloader
fastboot boot <fil>
- Beskrivelse: Starter et image (f.eks. Recovery) uden at flashe det – ideelt til test.
- Eksempel: fastboot boot recovery.img
5. Avancerede kommandoer
fastboot update <ZIP-fil>
- Beskrivelse: Installerer en opdatering fra en ZIP-fil (f.eks. OTA-opdatering).
- Eksempel: fastboot update update.zip
fastboot oem device-info
- Beskrivelse: Viser enhedsinformationer (f.eks. bootloader-status).
- Eksempel: fastboot oem device-info
fastboot set_active <slot>
- Beskrivelse: Skifter mellem A/B-partitioner (på enheder med Seamless Updates).
- Eksempel: fastboot set_active a eller fastboot set_active b
Praktiske eksempler
- Lås bootloaderen op:
adb reboot bootloaderfastboot flashing unlock- Bekræft på enheden → Data slettes, bootloaderen er åben.
- Installer TWRP Recovery (hvis tilgængelig):
adb reboot bootloaderfastboot flash recovery twrp-<nummer>.imgfastboot reboot recovery→ Starter i TWRP.
- Gendann factory-image:
- Udpak factory-imaget.
adb reboot bootloaderfastboot flashall→ Flasher Boot, System, Recovery osv.
- Midlertidig test af et recovery:
fastboot boot twrp-<nummer>.img→ Starter TWRP uden installation.
Vigtige bemærkninger
- Datatab: Kommandoer som oem unlock eller erase sletter alle data. Lav en backup først!
- Garanti: Oplåsing af bootloaderen kan medføre tab af garanti.
- Risiko for "brick": Forkert flashing (f.eks. inkompatibelt image) kan gøre enheden ubrugelig (soft-brick).
Fejlfinding
- "Fastboot not found": Kontroller, om Fastboot er installeret (fastboot --version).
- Enhed genkendes ikke: Prøv et andet USB-kabel/port eller opdater driverne.
- "Waiting for device": Sørg for, at enheden er i Fastboot-tilstand (fastboot devices).
Denne vejledning er beregnet til alle brugere, der er bevidste om risiciene ved at foretage ændringer i udviklerindstillingerne og har sat sig ind i mulighederne med ADB. Volla påtager sig intet ansvar i tilfælde af datatab eller komplikationer med enheden. Brug af denne vejledning sker på eget ansvar og anbefales udtrykkeligt ikke til brugere uden erfaring.