ADB e Fastboot: Unterschied zwischen den Versionen

Aus Volla Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 95: Zeile 95:
'''Opzione:''' -k mantiene i dati/cache (ad esempio, adb uninstall -k com.example.app).
'''Opzione:''' -k mantiene i dati/cache (ad esempio, adb uninstall -k com.example.app).


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell pm disable-user <nome del pacchetto>
adb shell pm disable-user <nome del pacchetto>
</div>


Descrizione: disattiva un'applicazione senza disinstallarla (ad es. bloatware).
'''Descrizione:''' disattiva un'applicazione senza disinstallarla (ad es. bloatware).
Esempio: adb shell pm disable-user com.samsung.bloat
'''Esempio:''' <code>adb shell pm disable-user com.samsung.bloat</code>


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell pm enable <nome del pacchetto>
adb shell pm enable <nome del pacchetto>
</div>


Descrizione: riattiva un'applicazione disattivata.
'''Descrizione:''' riattiva un'applicazione disattivata.
Esempio: adb shell pm enable com.samsung.bloat
'''Esempio:''' <code>adb shell pm enable com.samsung.bloat</code>


===Trasferimento di files===
===Trasferimento di files===


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb push <percorso locale> <percorso del dispositivo>
adb push <percorso locale> <percorso del dispositivo>
<div>


Descrizione: copia un file dal computer al dispositivo.
'''Descrizione:''' copia un file dal computer al dispositivo.
Esempio: adb push C:\Files\test.txt /sdcard/
'''Esempio:''' <code>adb push C:\Files\test.txt /sdcard/</code>
Suggerimento: la directory di destinazione deve esistere ed essere accessibile.
'''Suggerimento:''' ''la directory di destinazione deve esistere ed essere accessibile.''


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb pull <percorso del dispositivo> <percorso locale>
adb pull <percorso del dispositivo> <percorso locale>
</div>


Descrizione: copia un file dal dispositivo al computer.
'''Descrizione:''' copia un file dal dispositivo al computer.
Esempio: adb pull /sdcard/test.txt C:\Files\
'''Esempio:''' <code>adb pull /sdcard/test.txt C:\Files\</code>


===Informazioni sul dispositivo e debug===
===Informazioni sul dispositivo e debug===


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb logcat
adb logcat
</div>


Descrizione: mostra i log in tempo reale del dispositivo (utile per gli sviluppatori).
'''Descrizione:''' mostra i log in tempo reale del dispositivo (utile per gli sviluppatori).
Esempio: adb logcat → Premere Ctrl+C per uscire.
'''Esempio:''' <code>adb logcat</code> → Premere Ctrl+C per uscire.
Opzione: adb logcat | grep “Error” filtra per termini specifici.
'''Opzione:''' <code>adb logcat | grep “Error”</code> filtra per termini specifici.


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell dumpsys
adb shell dumpsys
</div>


Descrizione: fornisce informazioni dettagliate sul sistema.
'''Descrizione:''' fornisce informazioni dettagliate sul sistema.
Esempio: adb shell dumpsys battery → Mostra lo stato della batteria.
'''Esempio:''' <code>adb shell dumpsys battery</code> → Mostra lo stato della batteria.


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell getprop
adb shell getprop
</div>


Descrizione: elenca le proprietà del dispositivo (ad esempio, la versione di Android).
'''Descrizione:''' elenca le proprietà del dispositivo (ad esempio, la versione di Android).
Esempio: adb shell getprop ro.build.version.release → Mostra ad esempio “14”.
'''Esempio:''' <code>adb shell getprop ro.build.version.release</code> → Mostra ad esempio “14”.


===Controllo del dispositivo===
===Controllo del dispositivo===


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb reboot
adb reboot
</div>


Descrizione: riavvia il dispositivo.
'''Descrizione:''' riavvia il dispositivo.
Esempio: adb reboot
'''Esempio:''' <code>adb reboot</code>
Opzioni: adb reboot recovery (in modalità recovery) o adb reboot bootloader (in fastboot).
'''Opzioni:''' <code>adb reboot recovery</code> (in modalità recovery) o <code>adb reboot bootloader</code> (in fastboot).


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell input tap <x> <y>
adb shell input tap <x> <y>
</div>


Descrizione: simula un tocco sullo schermo (coordinate in pixel).
'''Descrizione:''' simula un tocco sullo schermo (coordinate in pixel).
Esempio: adb shell input tap 500 1000 → Tocca su X=500, Y=1000.
'''Esempio:''' <code>adb shell input tap 500 1000</code> → Tocca su X=500, Y=1000.


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell input text <testo>
adb shell input text <testo>
</div>


Descrizione: Immette un testo.
'''Descrizione:''' Immette un testo.
Esempio: adb shell input text “Hello” → Tocca “Hello”.
'''Esempio:''' <code>adb shell input text “Hello”</code> → Tocca “Hello”.


===Rete e schermate===
===Rete e schermate===


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell screencap <percorso>
adb shell screencap <percorso>
</div>


Descrizione: crea uno screenshot sul dispositivo.
'''Descrizione:''' crea uno screenshot sul dispositivo.
Esempio: adb shell screencap /sdcard/screenshot.png → Poi scarica con adb pull.
'''Esempio:''' <code>adb shell screencap /sdcard/screenshot.png</code> → Poi scarica con <code>adb pull</code>.


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell screenrecord <percorso>
adb shell screenrecord <percorso>
</div>


Descrizione: registra un video dello schermo (massimo 3 minuti).
'''Descrizione:''' registra un video dello schermo (massimo 3 minuti).
Esempio: adb shell screenrecord /sdcard/video.mp4 → Ctrl+C per interrompere.
'''Esempio:''' <code>adb shell screenrecord /sdcard/video.mp4</code> → Ctrl+C per interrompere.


<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;">
adb shell ifconfig
adb shell ifconfig
</div>


Descrizione: mostra i dettagli della rete (ad esempio l'indirizzo IP).
Descrizione: mostra i dettagli della rete (ad esempio l'indirizzo IP).

Version vom 22. Mai 2025, 17:00 Uhr

Queste istruzioni sono rivolte a tutti gli utenti che sono consapevoli dei rischi di interferenza con le opzioni dello sviluppatore e che hanno familiarizzato con le possibilità di ADB.

Volla non si assume alcuna responsabilità in caso di perdita di dati o complicazioni del dispositivo.

L'uso di questa guida è sempre a proprio rischio e pericolo ed è espressamente sconsigliato agli utenti senza esperienza.

ADB - Android Debug Bridge

Nozioni di base sui comandi ADB I comandi ADB vengono immessi tramite un terminale (Windows: Prompt dei comandi/PowerShell, macOS/Linux: Terminale). La sintassi generale è:

adb [Opzioni] [Comando] [Parametri]

È necessario assicurarsi che ADB sia installato sul computer (tramite l'SDK Android o come strumento ADB minimo). Il dispositivo deve essere collegato con il debug USB o il debug wireless (Opzioni per gli sviluppatori - Panoramica).

Comandi di connessione e di stato

adb device

Descrizione: elenca tutti i dispositivi collegati.

Esempio: adb devices → Output: “1234567890abcdef device” (dispositivo connesso) o “192.168.1.100:5555 device” (wireless).

Suggerimento: se appare “non autorizzato”, controllare la query di debug sul dispositivo.

adb connect <IP>:<Porta>

Descrizione: consente di collegarsi a un dispositivo tramite WLAN.

Esempio: adb connect 192.168.1.100:5555

adb disconnect <IP>:<Porta>

Descrizione: Disconnette la connessione wireless.

Esempio: adb disconnect 192.168.1.100:5555

adb pair <IP>:<Porta>

Descrizione: accoppia un dispositivo con un codice di accoppiamento (per il debug wireless).

Esempio: adb pair 192.168.1.100:37000 → Inserire il codice (ad esempio “123456”).

Accesso alla shell

adb shell

Descrizione: apre una shell interattiva sul dispositivo per eseguire comandi Linux.

Esempio: adb shell → Poi, ad esempio, ls (mostra i comandi come in Windows).

adb shell <comando>

Descrizione: Esegue un singolo comando senza tenere aperta la shell. Esempio:

adb shell pm list packages

Elenca tutte le applicazioni installate (nomi dei pacchetti).

Gestione delle App

adb install <percorso-APK>

Descrizione: installa un file APK sul dispositivo. Esempio: adb install C:\Apps\meineapp.apk Opzione: -r sovrascrive un'applicazione esistente (ad esempio, adb install -r meineapp.apk).

adb uninstall <nome del pacchetto>

Descrizione: disinstalla un'applicazione (è richiesto il nome del pacchetto).

Esempio: adb uninstall com.example.app

Opzione: -k mantiene i dati/cache (ad esempio, adb uninstall -k com.example.app).

adb shell pm disable-user <nome del pacchetto>

Descrizione: disattiva un'applicazione senza disinstallarla (ad es. bloatware). Esempio: adb shell pm disable-user com.samsung.bloat

adb shell pm enable <nome del pacchetto>

Descrizione: riattiva un'applicazione disattivata. Esempio: adb shell pm enable com.samsung.bloat

Trasferimento di files

adb push <percorso locale> <percorso del dispositivo>

Descrizione: copia un file dal computer al dispositivo. Esempio: adb push C:\Files\test.txt /sdcard/ Suggerimento: la directory di destinazione deve esistere ed essere accessibile.

adb pull <percorso del dispositivo> <percorso locale>

Descrizione: copia un file dal dispositivo al computer. Esempio: adb pull /sdcard/test.txt C:\Files\

Informazioni sul dispositivo e debug

adb logcat

Descrizione: mostra i log in tempo reale del dispositivo (utile per gli sviluppatori). Esempio: adb logcat → Premere Ctrl+C per uscire. Opzione: adb logcat | grep “Error” filtra per termini specifici.

adb shell dumpsys

Descrizione: fornisce informazioni dettagliate sul sistema. Esempio: adb shell dumpsys battery → Mostra lo stato della batteria.

adb shell getprop

Descrizione: elenca le proprietà del dispositivo (ad esempio, la versione di Android). Esempio: adb shell getprop ro.build.version.release → Mostra ad esempio “14”.

Controllo del dispositivo

adb reboot

Descrizione: riavvia il dispositivo. Esempio: adb reboot Opzioni: adb reboot recovery (in modalità recovery) o adb reboot bootloader (in fastboot).

adb shell input tap <x> <y>

Descrizione: simula un tocco sullo schermo (coordinate in pixel). Esempio: adb shell input tap 500 1000 → Tocca su X=500, Y=1000.

adb shell input text <testo>

Descrizione: Immette un testo. Esempio: adb shell input text “Hello” → Tocca “Hello”.

Rete e schermate

adb shell screencap <percorso>

Descrizione: crea uno screenshot sul dispositivo. Esempio: adb shell screencap /sdcard/screenshot.png → Poi scarica con adb pull.

adb shell screenrecord <percorso>

Descrizione: registra un video dello schermo (massimo 3 minuti). Esempio: adb shell screenrecord /sdcard/video.mp4 → Ctrl+C per interrompere.

adb shell ifconfig

Descrizione: mostra i dettagli della rete (ad esempio l'indirizzo IP). Esempio: adb shell ifconfig wlan0

Comandi avanzati

adb shell pm grant <nome pacchetto> <autorizzazione>

Descrizione: concede a un'applicazione un'autorizzazione specifica. Esempio: adb shell pm grant com.example.app android.permission.WRITE_SECURE_SETTINGS

adb shell wm size <larghezza>x<altezza>

Descrizione: modifica la risoluzione dello schermo (per i test). Esempio: adb shell wm size 720x1280 Reset: adb shell wm size reset

adb shell am start -n <nome pacchetto>/<attività>

Descrizione: avvia direttamente un'applicazione o un'attività. Esempio: adb shell at start -n com.android.settings/.Settings

adb backup -apk -shared -all -f<file>

Descrizione: crea un backup del dispositivo. Esempio: adb backup -apk -shared -all -f backup.ab

Esempio pratico

Rimuovere il bloatware senza essere root

Trovare il nome del pacchetto: adb shell pm list packages | grep “nome pacchetto”

Disattivarlo: adb shell pm disable-user com.<nome del pacchetto>

Screenshot: adb shell screencap /sdcard/screenshot.png && adb pull /sdcard/screenshot.png C:\Screenshot\

Installare l'applicazione senza store: adb install C:\Downloads\app.apk

Tipps und Tricks

Se sono collegati più dispositivi, aggiungere -s , ad esempio:

adb -s 1234567890abcdef shell

Usare && per azioni multiple, ad esempio:

adb shell screencap /sdcard/test.png && adb pull /sdcard/test.png

creare scorciatoie nel terminale :ad esempio

alias screenshot='adb shell screencap...'

Restrizioni: Senza accesso root, molte aree del sistema sono bloccate (ad esempio, /system).

Fastboot

È un altro potente strumento dell'ecosistema Android che viene spesso utilizzato in combinazione con ADB, ma funziona a un livello più profondo. È particolarmente utile per le operazioni di bootloader, flashing del firmware e modifiche del dispositivo.

Che cos'è Fastboot? Fastboot è un protocollo e uno strumento a riga di comando che consente di interagire direttamente con il bootloader di un dispositivo Android. Il bootloader è il software che viene caricato all'avvio del dispositivo prima dell'avvio del sistema operativo (Android). Con Fastboot è possibile eseguire il flashing delle partizioni di sistema, sbloccare il bootloader o resettare i dispositivi, cose che non sono possibili tramite ADB.

Differenza rispetto ad ADB: ADB funziona all'interno del sistema Android in esecuzione, mentre Fastboot è attivo in modalità bootloader.

Prerequisiti: Fastboot deve essere installato sul computer (tramite l'SDK Android o come parte di Minimal ADB e Fastboot).

Requisiti per Fastboot

Driver Fastboot: assicurarsi che i driver Fastboot siano installati sul PC (spesso fanno parte dei driver USB di Google per Windows). Cavo USB: Fastboot funziona solo tramite connessione USB (nessuna modalità wireless). Modalità bootloader: il dispositivo deve essere avviato in modalità fastboot (detta anche “modalità bootloader”). Ingresso: spegnere il dispositivo, quindi tenere premuta una combinazione di tasti (ad esempio, accensione + volume giù) e collegarlo al PC tramite USB.

In alternativa, tramite ADB:

adb reboot bootloader

Bootloader sbloccato (opzionale): Molti comandi richiedono lo sblocco del bootloader (vedere sotto).

Comandi di connessione e di stato

fastboot devices

Descrizione: elenca tutti i dispositivi in modalità fastboot. Esempio: fastboot device → Uscita: “1234567890 fastboot”. Suggerimento: se non viene visualizzato nulla, controllare la connessione USB o il driver.

fastboot getvar <variabile>

Descrizione: visualizza informazioni sul dispositivo (ad esempio lo stato del bootloader). Esempio: fastboot getvar unlocked → Uscita: “sì” (sbloccato) o “no” (bloccato).

Operazioni del bootloader

fastboot oem unlock

Descrizione: sblocca il bootloader (attenzione: cancella tutti i dati!). Esempio: fastboot oem unlock Nota: non disponibile per tutti i dispositivi; alcuni (ad esempio Xiaomi) richiedono un codice di sblocco dal produttore. Alternativa: fastboot flashing unlock (dispositivi più recenti).

fastboot oem lock

Descrizione: blocca nuovamente il bootloader. Esempio: fastboot oem lock Nota: spesso il dispositivo viene resettato.

fastboot flashing lock

Descrizione: alternativa al blocco (versioni Android più recenti). Esempio: fastboot flashing lock

Partizionamento

fastboot flash <partizione> <file>

Descrizione: scrive un file immagine in una partizione specifica (ad esempio, avvio, ripristino, sistema). Esempio: fastboot flash recovery recovery.img → Esegue il flash di un ripristino personalizzato come TWRP. Partizioni frequenti: boot: disco del kernel e della RAM. recovery: modalità di recupero. system: sistema operativo Android. vbmeta: Dati di verifica (per Android Verified Boot).

fastboot flashall

Descrizione: esegue il flash di tutte le partizioni da un'immagine di fabbrica (ad esempio boot.img, system.img). Esempio: fastboot flashall (i file devono trovarsi nella stessa directory).

fastboot erase <partizione>

Descrizione: cancella una partizione. Esempio: fastboot erase userdata → Cancella tutti i dati utente.

Controllo del dispositivo

fastboot reboot

Descrizione: riavvia il dispositivo nel sistema normale. Esempio: fastboot reboot

fastboot reboot recovery

Descrizione: avvia il menu di ripristino. Esempio: fastboot reboot recovery

fastboot reboot bootloader

Descrizione: Avvia la modalità fastboot. Esempio: fastboot reboot bootloader

fastboot boot <file>

Descrizione: Avvia un'immagine (ad esempio, la recovery) senza flasharla, ideale per i test. Esempio: fastboot boot recovery.img

Comandi avanzati

fastboot update <file zip>

Descrizione: installa un aggiornamento da un file ZIP (ad esempio un aggiornamento OTA). Esempio: fastboot update update.zip

fastboot oem device-info

Descrizione: mostra le informazioni sul dispositivo (ad esempio, lo stato del bootloader). Esempio: fastboot oem device-info

fastboot set_active <slot>

Descrizione: Consente di passare da una partizione A/B all'altra (per i dispositivi con aggiornamenti continui). Esempio: fastboot set_active a o fastboot set_active b

Esempi pratici

Sbloccare il bootloader:

adb reboot bootloader fastboot flashing unlock

Confermare sul dispositivo → I dati sono stati cancellati, il bootloader è aperto. Installare la TWRP Recovery (se disponibile):

adb reboot bootloader

fastboot flash recovery twrp-<numero>.img

fastboot reboot recovery → Avvia la TWRP. Ripristina l'immagine di fabbrica: Scompattare l'immagine di fabbrica

adb reboot bootloader

fastboot flashall

→ Esegue il flash dell'avvio, del sistema, della recovery, ecc. Test temporaneo di una recovery:

fastboot boot twrp-<numero>.img

→ Avvia la TWRP senza installazione.

Note importanti

Perdita di dati: comandi come sblocco oem o cancellazione cancellano tutti i dati. Creare prima un backup!

Garanzia: lo sblocco del bootloader può invalidare la garanzia. Pericolo di brick: un flashing errato (ad esempio un'immagine incompatibile) può rendere il dispositivo inutilizzabile (soft brick).

Risoluzione dei problemi

“Fastboot non trovato": Controllare se Fastboot è installato (fastboot --version). Il dispositivo non viene riconosciuto: Provare un altro cavo/porta USB o aggiornare i driver. “Waiting for device": verificare che il dispositivo sia in modalità fastboot (fastboot devices).

Queste istruzioni sono rivolte a tutti gli utenti che sono consapevoli dei rischi di interferenza con le opzioni dello sviluppatore e che hanno familiarizzato con le possibilità di ADB. Volla non si assume alcuna responsabilità in caso di perdita di dati o complicazioni del dispositivo.

L'uso di questa guida è sempre a proprio rischio e pericolo ed è espressamente sconsigliato agli utenti senza esperienza.

Articolo originale (Deutsch): ADB und Fastboot

Articolo originale (English): ADB and Fastboot