...ehm...
...dopo avere letto più di milletrecento posts mi rimane solo una domanda...
E' meglio la versione di AntiBillOS o quella di Rohan007 e di ErikCas?
...scherzetto... ... ma prima di bannarmi a vita (Millo perdonami) lasciatemi dare due piccoli contributi a questa discussione...
E' ormai da parecchio tempo che seguo gli sviluppi di Jelly Bean dell'Androidarmv6 team per il nostro Galaxy ma, avendo la necessità di usare il telefono per lavoro, sono andato con i piedi di piombo fino ad ora...
...la versione 4.2.2 non è ancora stabile ma è praticamente più che usabile nella vita di tutti i giorni... chiamiamola allora una Release Candidate...
il repository completo dei sorgenti di Jelly bean per armv6 si può scaricare qui:
GitHub AndroidArmV6
e permette a chiunque - con poche semplici istruzioni e un pò di coraggio - di compilarla per il nostro Next...
...e io l'ho fatto...
...ma allora... sto usando la Versione di AntiBillOS o di ErikCas?
già... chissà...
...diciamo che lassù le cose funzionano più o meno così:
- presso il repository c'è la Custom ROM completa nello stato quasi-stabile che dicevo prima...
- AntiBillOS fa qualche modifica molto specifica (qui), la compila personalmente e la pubblica...
- ErikCas e Rohan007 (qui e qui) fanno delle modifiche un pò più invasive (sono membri dell'AndroidArmv6 team) e la compilano sempre personalmente...
- Quando le modifiche sono stabili le aggiornano ricopiandole nel repository principale... che resta quindi aggiornato e sempre compilabile da chiunque...
- periodicamente un Robot di nome Jenkins (chi è Jenkins?) compila il tutto e lo pubblica...
Sono quindi riuscito a compilare una versione un pochino indietro rispetto alle Nightly dei developers (qualche giorno solamente) ma in uno stato decisamednte consistente...
Cosa c'è, in fondo, di più gratificante di compilare la propria Jelly Bean tutto da soli?
...ehm, in realtà ci sarebbero un sacco di cose, ma lasciatemi sognare un pò...
P.S. Ecco i motivi, però, per cui sto scrivendo questo post:
1) Jelly Bean e Memoria Insufficiente
Il problema principale nel fare girare questa distribuzione Android è senz'altro l'uso esoso di Memoria Interna...
Nei post precedenti sono state già proposte diverse soluzioni tutte valide, ma vediamo un approccio decisamente poco usuale...
Faccio un esempio:
Se installo il player Apollo in /system mi ritrovo un file apk di circa 1,35Mb...
...e, la prima volta che lo uso, si genera un ulteriore file di 594 Kb in /data/dalvik-cache...
per un totale di quasi 2 Megaytes...
...sacrificando ovviamente spazio in /data...
Senza entrare nei dettagli vediamo cosa succede, invece, se faccio esattamente quello che fanno i produttori dei cellulari (quasi esattamente)...
...ho infatti compilato anche una versione con tutte le applicazioni ottimizzate per la Dalvik Machine creando i tanto odiati files con estensione Odex...
La stessa applicazione Apollo installata in /system sarà composta, in questo caso, da due files (un .apk e un .odex) per un totale di circa 1,6 Mega tutti in /system e...
...e niente in /data...
già...
...se adesso provo a fare il conto per tutte le applicazioni installate ecco cosa ottengo:
Jelly Bean normale dopo il boot e dopo avere installato Whatsapp:
codice:
doc@gandalf ~/Work/Android/CyanoGenMod $ adb shell
root@android:/ # df
Filesystem Size Used Free Blksize
...
/system 206.4M 167M 39.4M 4096
/data 178.4M 71.4M 107M 4096
...
root@android:/ #
Jelly Bean ODEXED dopo il boot e dopo avere installato Whatsapp:
codice:
doc@gandalf ~/Work/Android/CyanoGenMod $ adb shell
shell@android:/ $ df
Filesystem Size Used Free Blksize
...
/system 206.4M 181M 25.4M 4096
/data 178.4M 32.7M 145.7M 4096
...
shell@android:/ $
sono circa 30Mega risparmiati in /data pronti per altre app utente...
Non male ma, purtroppo questa soluzione ha i suoi pro e i suoi contro:
Il Pro più importante l'ho appena visto, mentre l'altro dovrebbe essere un deciso guadagno in prestazioni...
...ma, per ora, ho ottenuto il contrario... i parametri di ottimizzazione sono ancora tutti da scoprire e testare...
I contro (ed è il motivo per cui gli sviluppatori non ci pensano proprio finchè la ROM non è stabile al 100%) sono una maggiore difficoltà di debug e risoluzione dei problemi e una maggiore complessità nei Modding tanto amati dagli utenti finali...
...ma valeva comunque la pena di fare un tentativo...
30Mb per Android sono un bel pò di spazio in fondo...
2) Tasto HOME che non funziona
Chi mi conosce sa che in passato ho testato dei Kernel del Galaxy FIT sul mio Next per questioni di memoria interna...
...una cosa che ho scoperto all'epoca è che i due Kernel sono uguali al 100% tranne...
...tranne i drivers dei tasti fisici...
Se allora uso il kernel sbagliato funziona tutto, ma potrei credere di avere rotto un tasto... mentre è solo un problema di Kernel...
Come faccio a scoprirlo?
dall'Android Terminale mi basta digitare
codice:
# zcat /proc/config.gz | grep CONFIG_MACH
per scoprire a che telefono appartiene il Kernel installato:
e infine...
...ho subito trovato un bug gravissimo:
...