ADB e Fastboot: Unterschied zwischen den Versionen
Danilo (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Danilo (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| (15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
<div style="color: #FF1010; font-size: 16px"> | |||
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. | 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. | 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. | L'uso di questa guida è sempre a proprio rischio e pericolo ed è espressamente sconsigliato agli utenti senza esperienza. | ||
</div> | |||
ADB - Android Debug Bridge | ==ADB - Android Debug Bridge== | ||
Nozioni di base sui comandi ADB | 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 è: | I comandi ADB vengono immessi tramite un terminale (Windows: Prompt dei comandi/PowerShell, macOS/Linux: Terminale). La sintassi generale è: | ||
adb [Opzioni] [Comando] [Parametri] | <div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | ||
adb [Opzioni] [Comando] [Parametri]</code> | |||
</div> | |||
È necessario assicurarsi che ADB sia installato sul computer (tramite l'SDK Android o come strumento ADB minimo). | È 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). | Il dispositivo deve essere collegato con il debug USB o il debug wireless (Opzioni per gli sviluppatori - Panoramica). | ||
Comandi di connessione e di stato | ===Comandi di connessione e di stato=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb device | adb device | ||
</div> | |||
'''Descrizione:''' elenca tutti i dispositivi collegati. | |||
'''Esempio:''' <code>adb devices</code> → Output: <code>“1234567890abcdef device”</code> (dispositivo connesso) o <code>“192.168.1.100:5555 device”</code> (wireless). | |||
'''Suggerimento:''' se appare “non autorizzato”, controllare la query di debug sul dispositivo. | |||
Suggerimento: se appare “non autorizzato”, controllare la query di debug sul dispositivo. | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb connect <IP>:<Porta> | adb connect <IP>:<Porta> | ||
</div> | |||
'''Descrizione:''' consente di collegarsi a un dispositivo tramite WLAN. | |||
'''Esempio:''' <code>adb connect 192.168.1.100:5555</code> | |||
Esempio: adb connect 192.168.1.100:5555 | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb disconnect <IP>:<Porta> | adb disconnect <IP>:<Porta> | ||
</div> | |||
'''Descrizione:''' Disconnette la connessione wireless. | |||
'''Esempio:''' <code>adb disconnect 192.168.1.100:5555</code> | |||
Esempio: adb disconnect 192.168.1.100:5555 | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb pair <IP>:<Porta> | adb pair <IP>:<Porta> | ||
</div> | |||
'''Descrizione:''' accoppia un dispositivo con un codice di accoppiamento (per il debug wireless). | |||
'''Esempio:''' <code>adb pair 192.168.1.100:37000</code> → Inserire il codice (ad esempio “123456”). | |||
Esempio: adb pair 192.168.1.100:37000 → Inserire il codice (ad esempio “123456”). | |||
Accesso alla shell | ===Accesso alla shell=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell | adb shell | ||
</div> | |||
'''Descrizione:''' apre una shell interattiva sul dispositivo per eseguire comandi Linux. | |||
'''Esempio:''' <code>adb shell</code> → Poi, ad esempio, <code>ls</code> (mostra i comandi come in Windows). | |||
Esempio: adb shell → Poi, ad esempio, ls (mostra i comandi come in Windows). | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell <comando> | adb shell <comando> | ||
</div> | |||
Descrizione: Esegue un singolo comando senza tenere aperta la shell. | '''Descrizione:''' Esegue un singolo comando senza tenere aperta la shell. | ||
Esempio: | '''Esempio:''' | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell pm list packages | adb shell pm list packages | ||
</div> | |||
Elenca tutte le applicazioni installate (nomi dei pacchetti). | Elenca tutte le applicazioni installate (nomi dei pacchetti). | ||
Gestione delle App | ===Gestione delle App=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb install <percorso-APK> | adb install <percorso-APK> | ||
</div> | |||
Descrizione: installa un file APK sul dispositivo. | '''Descrizione:''' installa un file APK sul dispositivo. | ||
Esempio: adb install C:\Apps\meineapp.apk | '''Esempio:''' <code>adb install C:\Apps\meineapp.apk</code> | ||
Opzione: -r sovrascrive un'applicazione esistente (ad esempio, adb install -r meineapp.apk). | '''Opzione:''' -r sovrascrive un'applicazione esistente (ad esempio, adb install -r meineapp.apk). | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb uninstall <nome del pacchetto> | adb uninstall <nome del pacchetto> | ||
</div> | |||
Descrizione: disinstalla un'applicazione (è richiesto il nome del pacchetto | '''Descrizione:''' disinstalla un'applicazione (è richiesto il nome del pacchetto). | ||
'''Esempio:''' <code>adb uninstall com.example.app</code> | |||
'''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). | ||
Esempio: adb shell ifconfig wlan0 | '''Esempio:''' <code>adb shell ifconfig wlan0</code> | ||
Comandi avanzati | ===Comandi avanzati=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell pm grant <nome pacchetto> <autorizzazione> | adb shell pm grant <nome pacchetto> <autorizzazione> | ||
</div> | |||
Descrizione: concede a un'applicazione un'autorizzazione specifica. | '''Descrizione:''' concede a un'applicazione un'autorizzazione specifica. | ||
Esempio: adb shell pm grant com.example.app android.permission.WRITE_SECURE_SETTINGS | '''Esempio:''' <code>adb shell pm grant com.example.app android.permission.WRITE_SECURE_SETTINGS</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell wm size <larghezza>x<altezza> | adb shell wm size <larghezza>x<altezza> | ||
</div> | |||
Descrizione: modifica la risoluzione dello schermo (per i test). | '''Descrizione:''' modifica la risoluzione dello schermo (per i test). | ||
Esempio: adb shell wm size 720x1280 | '''Esempio:''' <code>adb shell wm size 720x1280</code> | ||
Reset: adb shell wm size reset | '''Reset:''' <code>adb shell wm size reset</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell am start -n <nome pacchetto>/<attività> | adb shell am start -n <nome pacchetto>/<attività> | ||
</div> | |||
Descrizione: avvia direttamente un'applicazione o un'attività. | '''Descrizione:''' avvia direttamente un'applicazione o un'attività. | ||
Esempio: adb shell at start -n com.android.settings/.Settings | '''Esempio:''' <code>adb shell at start -n com.android.settings/.Settings</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb backup -apk -shared -all -f<file> | adb backup -apk -shared -all -f<file> | ||
</div> | |||
Descrizione: crea un backup del dispositivo. | '''Descrizione:''' crea un backup del dispositivo. | ||
Esempio: adb backup -apk -shared -all -f backup.ab | '''Esempio:''' <code>adb backup -apk -shared -all -f backup.ab</code> | ||
===Esempi pratici=== | |||
Rimuovere il bloatware senza essere root | ''Rimuovere il bloatware senza essere root'' | ||
Trovare il nome del pacchetto: | Trovare il nome del pacchetto: | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell pm list packages | grep “nome pacchetto” | adb shell pm list packages | grep “nome pacchetto” | ||
</div> | |||
Disattivarlo: | Disattivarlo: | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell pm disable-user com.<nome del pacchetto> | adb shell pm disable-user com.<nome del pacchetto> | ||
</div> | |||
Fare uno screenshot e scaricarlo direttamete: | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell screencap /sdcard/screenshot.png && adb pull /sdcard/screenshot.png C:\Screenshot\ | adb shell screencap /sdcard/screenshot.png && adb pull /sdcard/screenshot.png C:\Screenshot\ | ||
</div> | |||
Installare | Installare un'applicazione senza store: | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb install C:\Downloads\app.apk | adb install C:\Downloads\app.apk | ||
</div> | |||
Tipps und Tricks | ===Tipps und Tricks=== | ||
Se sono collegati più dispositivi, aggiungere -s , ad esempio: | Se sono collegati più dispositivi, aggiungere -s , ad esempio: | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb -s 1234567890abcdef shell | adb -s 1234567890abcdef shell | ||
</div> | |||
Usare && per azioni multiple, ad esempio: | Usare && per azioni multiple, ad esempio: | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb shell screencap /sdcard/test.png && adb pull /sdcard/test.png | adb shell screencap /sdcard/test.png && adb pull /sdcard/test.png | ||
</div> | |||
creare scorciatoie nel terminale :ad esempio | creare scorciatoie nel terminale :ad esempio | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
alias screenshot='adb shell screencap...' | alias screenshot='adb shell screencap...' | ||
</div> | |||
Restrizioni: | <div style="color: #FF1010; font-size: 16px"> | ||
Senza accesso root, molte aree del sistema sono bloccate (ad esempio, /system). | Restrizioni: Senza accesso root, molte aree del sistema sono bloccate (ad esempio, /system). | ||
</div> | |||
Fastboot | ==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. | È 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. | ||
| Zeile 206: | Zeile 280: | ||
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. | 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. | ''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. | |||
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: | In alternativa, tramite ADB: | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb reboot bootloader | adb reboot bootloader | ||
</div> | |||
<div style="color: #FF1010; font-size: 16px"> | |||
Bootloader sbloccato (opzionale): Molti comandi richiedono lo sblocco del bootloader (vedere sotto). | Bootloader sbloccato (opzionale): Molti comandi richiedono lo sblocco del bootloader (vedere sotto). | ||
</div> | |||
Comandi di connessione e di stato | ===Comandi di connessione e di stato=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot devices | fastboot devices | ||
</div> | |||
Descrizione: elenca tutti i dispositivi in modalità fastboot. | '''Descrizione:''' elenca tutti i dispositivi in modalità fastboot. | ||
Esempio: fastboot device → Uscita: “1234567890 fastboot”. | '''Esempio:''' <code>fastboot device</code> → Uscita: <code>“1234567890 fastboot”</code>. | ||
Suggerimento: se non viene visualizzato nulla, controllare la connessione USB o il driver. | '''Suggerimento:''' se non viene visualizzato nulla, controllare la connessione USB o il driver. | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot getvar <variabile> | fastboot getvar <variabile> | ||
</div> | |||
Descrizione: visualizza informazioni sul dispositivo (ad esempio lo stato del bootloader). | '''Descrizione:''' visualizza informazioni sul dispositivo (ad esempio lo stato del bootloader). | ||
Esempio: fastboot getvar unlocked → Uscita: “sì” (sbloccato) o “no” (bloccato). | '''Esempio:''' <code>fastboot getvar unlocked</code> → Uscita: “sì” (sbloccato) o “no” (bloccato). | ||
Operazioni del bootloader | ===Operazioni del bootloader=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot oem unlock | fastboot oem unlock | ||
</div> | |||
Descrizione: sblocca il bootloader (attenzione: cancella tutti i dati!). | '''Descrizione:''' sblocca il bootloader (attenzione: cancella tutti i dati!). | ||
Esempio: fastboot oem unlock | '''Esempio:''' <code>fastboot oem unlock</code> | ||
Nota: non disponibile per tutti i dispositivi; alcuni (ad esempio Xiaomi) richiedono un codice di sblocco dal produttore. | '''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). | '''Alternativa:''' <code>fastboot flashing unlock</code> (dispositivi più recenti). | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot oem lock | fastboot oem lock | ||
</div> | |||
Descrizione: blocca nuovamente il bootloader. | '''Descrizione:''' blocca nuovamente il bootloader. | ||
Esempio: fastboot oem lock | '''Esempio:''' <code>fastboot oem lock</code> | ||
Nota: spesso il dispositivo viene resettato. | '''Nota: spesso il dispositivo viene resettato.''' | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot flashing lock | fastboot flashing lock | ||
</div> | |||
Descrizione: alternativa al blocco (versioni Android più recenti). | '''Descrizione:''' alternativa al blocco (versioni Android più recenti). | ||
Esempio: fastboot flashing lock | '''Esempio:''' <code>fastboot flashing lock</code> | ||
Partizionamento | ===Partizionamento=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot flash <partizione> <file> | fastboot flash <partizione> <file> | ||
</div> | |||
Descrizione: scrive un file immagine in una partizione specifica (ad esempio, avvio, ripristino, sistema). | '''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. | '''Esempio:''' <code>fastboot flash recovery recovery.img</code> → Esegue il flash di un ripristino personalizzato come TWRP. | ||
Partizioni frequenti: | ''Partizioni frequenti:'' | ||
boot: disco del kernel e della RAM. | ''boot:'' disco del kernel e della RAM. | ||
recovery: modalità di recupero. | ''recovery:'' modalità di recupero. | ||
system: sistema operativo Android. | ''system:'' sistema operativo Android. | ||
vbmeta: | ''vbmeta:'' dati di verifica (per Android Verified Boot). | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot flashall | fastboot flashall | ||
</div> | |||
Descrizione: esegue il flash di tutte le partizioni da un'immagine di fabbrica (ad esempio boot.img, system.img). | '''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). | '''Esempio:''' <code>fastboot flashall</code> (i file devono trovarsi nella stessa directory). | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot erase <partizione> | fastboot erase <partizione> | ||
</div> | |||
Descrizione: cancella una partizione. | '''Descrizione:''' cancella una partizione. | ||
Esempio: fastboot erase userdata → Cancella tutti i dati utente. | '''Esempio:''' <code>fastboot erase userdata</code> → Cancella tutti i dati utente. | ||
Controllo del dispositivo | ===Controllo del dispositivo=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot reboot | fastboot reboot | ||
</div> | |||
Descrizione: riavvia il dispositivo nel sistema normale. | '''Descrizione:''' riavvia il dispositivo nel sistema normale. | ||
Esempio: fastboot reboot | '''Esempio:''' <code>fastboot reboot</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot reboot recovery | fastboot reboot recovery | ||
</div> | |||
Descrizione: avvia il menu di ripristino. | '''Descrizione:''' avvia il menu di ripristino. | ||
Esempio: fastboot reboot recovery | '''Esempio:''' <code>fastboot reboot recovery</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot reboot bootloader | fastboot reboot bootloader | ||
</div> | |||
Descrizione: Avvia la modalità fastboot. | '''Descrizione:''' Avvia la modalità fastboot. | ||
Esempio: fastboot reboot bootloader | '''Esempio:''' <code>fastboot reboot bootloader</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot boot <file> | fastboot boot <file> | ||
</div> | |||
Descrizione: Avvia un'immagine (ad esempio, la recovery) senza flasharla, ideale per i test. | '''Descrizione:''' Avvia un'immagine (ad esempio, la recovery) senza flasharla, ideale per i test. | ||
Esempio: fastboot boot recovery.img | '''Esempio:''' <code>fastboot boot recovery.img</code> | ||
Comandi avanzati | ===Comandi avanzati=== | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot update <file zip> | fastboot update <file zip> | ||
</div> | |||
Descrizione: installa un aggiornamento da un file ZIP (ad esempio un aggiornamento OTA). | '''Descrizione:''' installa un aggiornamento da un file ZIP (ad esempio un aggiornamento OTA). | ||
Esempio: fastboot update update.zip | '''Esempio:'' <code>fastboot update update.zip</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot oem device-info | fastboot oem device-info | ||
</div> | |||
Descrizione: mostra le informazioni sul dispositivo (ad esempio, lo stato del bootloader). | '''Descrizione:''' mostra le informazioni sul dispositivo (ad esempio, lo stato del bootloader). | ||
Esempio: fastboot oem device-info | '''Esempio:''' <code>fastboot oem device-info</code> | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot set_active <slot> | fastboot set_active <slot> | ||
</div> | |||
Descrizione: Consente di passare da una partizione A/B all'altra (per i dispositivi con aggiornamenti continui). | '''Descrizione:''' Consente di passare da una partizione A/B all'altra (per i dispositivi con aggiornamenti continui). | ||
Esempio: fastboot set_active a | '''Esempio:''' <code>fastboot set_active a</code> oppure <code>fastboot set_active b</code> | ||
Esempi pratici | ===Esempi pratici=== | ||
Sbloccare il bootloader: | ''Sbloccare il bootloader:'' | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb reboot bootloader | adb reboot bootloader | ||
fastboot flashing unlock | fastboot flashing unlock | ||
</div> | |||
Confermare sul dispositivo → I dati sono stati cancellati, il bootloader è aperto. | Confermare sul dispositivo → I dati sono stati cancellati, il bootloader è aperto. | ||
''Installare la TWRP Recovery (se disponibile):'' | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb reboot bootloader | adb reboot bootloader | ||
| Zeile 332: | Zeile 447: | ||
fastboot reboot recovery | fastboot reboot recovery | ||
</div> | |||
→ Avvia la TWRP. | → Avvia la TWRP. | ||
Ripristina l'immagine di fabbrica: | |||
''Ripristina l'immagine di fabbrica:'' | |||
Scompattare l'immagine di fabbrica | Scompattare l'immagine di fabbrica | ||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
adb reboot bootloader | adb reboot bootloader | ||
fastboot flashall | fastboot flashall | ||
</div> | |||
→ Esegue il flash dell'avvio, del sistema, della recovery, ecc. | → Esegue il flash dell'avvio, del sistema, della recovery, ecc. | ||
''Test temporaneo di una recovery:'' | |||
<div style="font-family: 'Courier New'; font-size: 18px; background-color:#F0F0F0; padding:10px;"> | |||
fastboot boot twrp-<numero>.img | fastboot boot twrp-<numero>.img | ||
</div> | |||
→ Avvia la TWRP senza installazione. | → Avvia la TWRP senza installazione. | ||
Note importanti | ===Note importanti=== | ||
'''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). | |||
“Waiting for device": verificare che il dispositivo sia in modalità fastboot (fastboot devices). | |||
<div style="background-color:#ffcccc; padding:10px; border:1px solid #ff0000;"> | |||
'''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). | |||
</div> | |||
<div style="background-color:#ffcccc; padding:10px; border:1px solid #ff0000;"> | |||
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. | 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. | 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. | L'uso di questa guida è sempre a proprio rischio e pericolo ed è espressamente sconsigliato agli utenti senza esperienza. | ||
</div> | |||
<div style="background-color:#cccccc; padding:10px; border:1px solid #000000;"> | <div style="background-color:#cccccc; padding:10px; border:1px solid #000000;"> | ||
Articolo originale (Deutsch): [[ADB und Fastboot]] | Articolo originale (Deutsch): [[ADB und Fastboot]] | ||
Articolo originale (English): [[ | Articolo originale (English): [[ADB and Fastboot]] | ||
</div> | </div> | ||
Aktuelle Version vom 22. Mai 2025, 17:32 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
Esempi pratici
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>
Fare uno screenshot e scaricarlo direttamete:
adb shell screencap /sdcard/screenshot.png && adb pull /sdcard/screenshot.png C:\Screenshot\
Installare un'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 oppure 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
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).
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).
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