Utile per chi non vuole installare Android SDK ma dispone solo di API Level 23 (Android 6.0 Marshmallow)
https://wiki.debian.org/AndroidTools
Il primo passo da fare e' unlock the bootloader (questo cencellerà tutti i dati!?)
Tramite il bootloader si può decidere se avviare il recovery o avviare android.
Il bootloader non solo è bloccato ma anche criptato. Lo decide il produttore e il gestore telefonico e questo permette di controllare la versione di Android in uso: il bootloader permette di avviare solo le versioni firmate dal gestore telefonico.
NOTA: NEXUS MOTOROLA E HTC si sbloccano facilmente.
htcdev.com/bootloader (Oops! You are not logged in.)
Passaggi:
A volte per lo sblocco del bootloader basta eseguire un'applicazione apk esterna, fornito dal produttore: dopo il riavvio, come conseguenza, lo smartphone avvisa che non può più controllare se un file è danneggiato (perché non è attivata la crittografia)
xda-developers.com/root/
Dopo il bootloader, questo è il primo passo obbligatorio per fare altre cose. Su android non è possibile accedere come utente root (il superutente). Rootare un dispositivo è quell'azione che permette di eseguire anche operazioni privilegiate (come superutente) come: rimozione di applicazioni OEM e accesso a cartelle di sistema, partizioni /system (e /data)…
NOTA: un dispositivo può perdere la garanzia, può diventare instabile o può diventare un mattone. Roota a tuo rischio
Alcuni metodi di rooting possono installare ulteriore software sul telefono.
è una applicazione che permette acesso con privilegio di root solo alle applicazioni di tua scelta
Un'immagine ROM (o firmware) è una distribuzione Android (ufficiale del produttore o alternativa). Ma bisogna fare attenzione al malware, perché in quest'ultimo caso il software non è firmato.
Le immagini dei sistemi operativi utilizzabili per essere installati nelle partizioni del dispositivo possono essere di due tipi:
Gli sviluppatori indipedenti di immagini ROM preferiscono usare il primo tipo che utilizza APP con una cache interna al file .apk (file classes.dex). Anche se esiste un piccolo difetto: la lentezza del primo avvio del sistema.
Viceversa le aziende OEM preferiscono le immagini che utilizzano APP con una cache esterna al file .apk (file.odex) che si trova nella VM. Queste app sono più difficili da modificare e sono su immagini ROM ODEX-ed.
Xposed è un framework che funziona egregiamente in entrambi i tipi di sistemi, dato che permette di avviare un JAR all'avvio del sistema con privilegi di amministrazione e di sostituire qualsiasi metodo in qualsiasi classe in ogni APP.
È indispensabile conoscere il Recovery mode. È utile per fare un reset di fabbrica
Ad esempio: nel dispositivo *Asus z170c* si può avviare in questa modalità tenendo premuto: Power + Volume down (per 10 secondi) Invece tenendo premuto la voce “shut down” nel display, quando il sistema chiede di confermare lo spegnimento, effettua un riavvio in “modalità provvisoria”
Recovery è il nome usato per indicare una partizione avviabile che contiene strumenti utili (come una console) per riparare l'installazione o per installare gli aggiornamenti ufficiali (combinando tasti o istruzioni CLI).
Questi strumenti sono open source come Android, cosi che e' possibile modificarli e personalizzarli. La maggior parte dei dispositivi possiedono un semplice “recovery mode” che può essere usato per recuperare o per porre il dispositivo in “fastboot” (fastboot mode??) o per leggere o per eliminare i dati (factory reset).
Esistono due tipi di Recovery
Per eseguire un backup completo è richiesto sempre un dispositivo rooted. Lo strumento di backup si chiama NANDroid
(DISATTIVATO PER ALCUNI MODELLI)
In alternativa al Recovery mode, Google fornisce con un software Android SDK un protocollo FASTBOOT. Per essere usato su Windows è richiesto di installare anche dei driver per poter collegare il telefono.
FASTBOOT Mode
https://en.wikipedia.org/wiki/List_of_custom_Android_firmware
Un'immagine ROM (o firmware) è una distribuzione Android (ufficiale del produttore o alternativa). Ma bisogna fare attenzione al malware, perché in quest'ultimo caso il software non è firmato.