ADB og Fastboot

Aus Volla Wiki

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]

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>
  • 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 bootloader
    • fastboot flashing unlock
    • Bekræft på enheden → Data slettes, bootloaderen er åben.
  • Installer TWRP Recovery (hvis tilgængelig):
    • adb reboot bootloader
    • fastboot flash recovery twrp-<nummer>.img
    • fastboot reboot recovery → Starter i TWRP.
  • Gendann factory-image:
    • Udpak factory-imaget.
    • adb reboot bootloader
    • fastboot 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.