Alcune delle rom per i terminali android non contengono la lingua italiana tra cui la cyanmobile o la joyos.
Iniziamo
Di cosa abbiamo bisogno:
-Un programma per decompilare gli apk
Eccone alcuni:
[UTIL][08.12.11] Apktool v1.4.3 - a tool for reverse engineering apk files - xda-developers
APK Edit v0.4, allows you to edit your apk file - xda-developers
-Una Rom
-Un editor di testo
Notepad++ Home
-Conoscenza della lingua da tradurre o google traduttore
-Tempo e pazienza
Procedimento:
Ogni ROM ha la stesa struttura nella directory,tutte contengono le "cartelle" app,framework,bin,etc,xbin...
ma per tradurre l'intera ROM è necessario guardare solo le cartelle framework e app e la cartella data/app se è presente nella ROM.
Se la ROM contiene la cartella data/app bisognerà guardare anche li oltre alle cartele system/app e system/framework.
Inizieremo con tradurre il framework che contiene molte delle stringhe di sistema come quelle del power menù.
Per iniziare a modificare le stringhe bisogna prima decompilare l'apk che si trova in system/framework/framework-res.apk
Io ho usato ApkChanger perciò spiegherò i passaggi seguendo il procedimento usando quel tool.
Mettere il framework-res.apk(sempre fare prima un backup) nella cartella place-apk-here-for-modding e far partire il file ApkChanger.bat La prima volta che sarà eseguito il programma vi darà delle opzioni tra cui scegliere,io ho scelto le mie impostazioni in modo che le opzioni siano facilmente avviabili;se volete modificarle scegliere il comando 20 prima di iniziare.
Per la maggior parte degli apk bisognerà scegliere il comando 1 per decompilarli ci sono volte in cui bisogna usare il comando 2 ma suggerisco di usare questa opzione solo se si sa cosa si sta facendo.
Adesso andiamo ad impostare il nostro progetto che saà il primo apk.
Modificheremo un apk alla volta in modo da semplificare le cose.
Una volta impostato il progetto sara necessario scegliere lo script per la decompilazione,ho sempre scelto l'opzione 3 che mi consente di modificare interamente l'apk.
Lo script decompilerà l'apk e ritorneremo alla schermata principale; a questo punto aprimo la cartella OUT dentro la cartella ApkChanger
In questa cartella troveremo l'apk decompilato e così potremo iniziare a modificare le stringhe per modificare la lingua.
Andiamo nelle cartella /res/values e apriamo con notepad++ il file strings.xml
A questo punto bisognerà iniziare a tradurre
Per fare un esempio ho estratto una rom e sono andato a cercarmi il file strings.xml(bisogna solo tradurre le parti che io scrivo in rosso)
La stringa
< s tr i n g n a m e = " c u t " > C u t < / s t r i n g >
diventerà
< s t r i n g n a m e = " c u t " > Taglia < / s t r i n g >
e così via con tutte le stringhe(nel file strings.xml della rom che ho scaricato ci sono 943 stringhe)
Dopo aver modificato tutte le stinghe si potrà salvare il file modificato,ricompilare l'apk e signarlo con gli appositi comandi.
Per avere una traduzione completa si puo andare in tutte le cartelle "values" e modificare il file arrays.xml
Dopo aver finito si puo ricompilare l'apk usando il comando 3 e si puo passare alla cartella system/app modificando anche lì le stringhe come prima.
Ps:ricordatevi di sostituire alla fine i file che avete modificato!