[GUIDA] Come eseguire il porting di MIUI v6

Creato il 20 giugno 2015 da Vincenzo Camuso
Miui v6 e' la nuovissima interfaccia grafica utilizzata da diversi dispositivi Cinesi, ora e' disponibile su oltre 35 device ma vediamo insieme come funziona il port.
Il port della Miui non e' come le altre roms come CM e company ma il processo viene eseguito tramite con un strumento chiamato Patchrom che esegue il port nel seguente schema:

  • Estrazione di una CM 11 (raccomandato) oppure AOSP 4.4.
  • Preparazione dei frameworks della Miui.
  • Applicazione di svariate patch (diff) che servono per adattarla al nostro dispositivo.
  • Compilazione della ROM.
  • Creazione del pacchetto flashable.
Vediamo insieme quali sono i requisiti per poter compilare una per il tuo device e le modifiche da apportare.

Requisiti:

  • Linux o Ubuntu installato su una macchina virtuale.
  • Nella versione di Miui v6 sono richiesti Android 4.4 Kitkat, CWM o TWRP oltre che sia un dispositivo XHDMI e XXHDMI.
  • Android SDK, utile per il port.
  • Un po' di conoscenza informatica.
  • Pazienza ma molta pazienza, vi spieghero' il perche'.

Guida al Porting:

  • Collegare il device con il cavo usb, assicurati di attivare la modalita' di sviluppo e digitare il seguente comando per il riavvio nella recovery (passaggio da fare dopo il download della sorgente di MIUI).
adb reboot recovery
  • Creamo una directory con il terminale di Linux con "mkdir patchrom" poi "cd patchrom" ed incollare il comando per inizializzare download della sorgente.
repo init -u git://github.com/MiCode/patchrom.git -b v6-kitkat
  • Digitare il comando del download con "repo sync -j1".
  • Ovviamente il download della v6 e' piu' leggero a causa della rimozione del supporto HDMI dedicato ai device (800x480) di cui verra' aggiunto in seguito.
  •  Dalla cartella "patchrom" sempre da terminale digitare il comando.
. build/envsetup.sh
 mkdir nome_device
cd nome_device

 Preparazione del Firmware:

  • Prima di cominciare qualsiasi compilazione, bisogna estrarre la rom dalla recovery clockwork mod oppure la TWRP, l'importante che sia in formato ext4, perche? perche occorre il file della mappature delle partizioni tramite il file recovery.fstab o simile di cui verra' utilizzato per l'avvio di miui durante la compilazione.
  • Ora riatte nella recovery, collegare il dispositivo ed incollare il seguente comando per l'estrazione del firmware.
../tools/releasetools/ota_target_from_phone -r
  • Attendiamo qualche istante fino alla fine del processo dell'estrazione dei files di "base" del sistema operativo.

Applicazione della Patchrom:

  • Dopo aver estratto tutto dal device e' il tempo di patchare  il sistema base con frameworks e le apps della Miui v6, quindi applicare i seguenti comandi.
 make workspace
 make firstpatch
  • Durante l'applicazione della patch "probabilmente" avrete degli avvisi come "patch detected" che vuol dire gia' esistente.
  • Nel caso doreste legge "patch failed" vuol dire non e' applicata bene.
  • Nel caso di vedere files nel terminale come .rej al suo troveremo le modifiche necessarie da applicare manualmente al file che finisce con .rej. vediamo gli altri simboli che troveremo come:
!) e' necessario cambiare il codice.
+) il piu' significa che si deve aggiungere la stringa citata a quel file.
-) l'eliminazione della stringa.

Compilazione:

Per compilare la miui dopo aver fixato tutti gli errori, basta eseguire il comando make fullota per generare il flashabile che verra' salvato nella cartella, nome_device/out/fullota.zip.
Guida originale.