[GUIDA]updater-script + creazione di un update.zip
Qualsiasi vostro aiuto è sempre bene accetto
Questa guida vi aiutera a capire come creare uno zip flashabile da recovery e scrivere il vostro primo Updater-script.
Breve spiegazie:
L'updater.script (update.script nelle recovery amend) è quel file che contiente tutte le operazioni che il terminale deve eseguire durante il flash di un pacchetto.
Senza l'updater.script un qualsivoglia pacchetto non si flasherebbe, e senza una corretta sintassi accadrebbe lo stesso,
o peggio ancora potrebbe interrompersi l'operazione nella riga dove è situato l'errore e quindi ci potrebbero essere rischi di brick al cellulare.
FATE SEMPRE UN BACKUP DI SICUREZZA
---------------------------------
Casa ci serve:
- notepad++ ( per utenti windows )
- Gedit ( per utenti Linux )
- Tool SIGN pachetto (per windws)
- Molta Pazienza e attenzione
--------------------------------
- Creare le directory per lo zip:
/zip_template/META-INF/com/google/android/
codice:
- Zip_Template.zip
-META/INF (cartella)
-com (cartella)
-google (cartella)
-android (cartella)
- update-binary ( file senza estensione )
- updater-script ( file senza estensione )
-system ( contiene tutto quello che deve essere flashato sul device )
Il pacchetto qui sotto è vuoto utilizzatelo per i primi passi
DOWNALOAD TEMPLATE.ZIP
---------------------------------
- Comandi per creare updater-script
1- Il file (se partite da un file di testo vuoto) va salvato con estensione .FILE
2- Ogni riga dell'updater.script va concluso con il ";"
3- Se il file interessato si chiama update.script qundi senza la r si tratta di una versione amend,
quindi fate attenzione a leggere correttamente il nome del file
------------------------------
- GetProp
Sintassi:
codice:
assert(getprop("ro.product.device") == "hammerhead" || getprop("ro.build.product") == "hammerhead" || abort("This package is for \"hammerhead\" devices; this is a \"" + getprop("ro.product.device") + "\"."););
assert(getprop("ro.bootloader") == "HHZ11k");
Quote:
Le linee getprop vengono usate per una installazione sicura.
Esempio:
Questo aggiornamento-script è per il nexu 5, la stringa "GetProp fa una verifica con in build.prop se il nome del prodotto corrisponde "ro.product.device è hammeread e il getprop("ro.bootloader") è uguale a "HHZ11K" allora l'installazione può continuare. Se invece una di queste voci non corrisponde al vero lo script si interrompe dando errore.
----------------------------
Mostra Progresso installazione
show progress:
Quote:
- show progress -->controlla la barra di completamento
del processo di installazione che vedete comparire in basso
sulla recovery.
sintassi:
codice:
show_progress(primo numero, secondo numero);
Quote:
Il primo numero indica di quanto deve avanzare la barra,
il secondo in quanto tempo deve avvenire l'avanzamento
specificato dal primo numero.
Da sapere che la lunghezza totale della barra è 1,33.
Inoltre il tempo indicato dal secondo numero è espresso in secondi.
esempio:
codice:
showprogress(1.33, 60) ---> la barra di completamento si
riempirà al 100% in 60 secondi.
Attenzione!:
Quote:
oltre 1,33 la barra aggiunge un pezzettino alla fine
risultando in un bruttissimo effetto grafico.
Quindi potete scegliere di spezzettare
il comando show progress nel proseguio
dello script ma attenzione a non superare come somma l' 1,33.
Ad esempio:
codice:
showprogress(0.5, 20)
...
....
....
...
....
showprogress(0.5, 15)
...
....
...showprogress(0.33, 20)
come vedete (0,5+0,5+0,33 = 1,33)
-------------------------------------------
-Sintassi: ui_print("");
Quote:
Questo comando stampa a video nella recovery,
tutto quello che è all'interno della sintassi.
In questo caso, la recovery stamapa a video:
Zip_tamplate
By S_mario
Guida alla creazione di update.zip flashabile
ESEMPIO:
codice:
ui_print(" Zip_tamplate ");
ui_print(" By S_mario ");
ui_print("");
ui_print(" Guida alla creazione di update.zip flashabile ");
Quote:
In questo caso, la recovery stamapa a video:
Zip_tamplate
By S_mario
Guida alla creazione di update.zip flashabile
----------------------------------------------------------