Conoscere Android – parte quinta

Share on Facebook0Tweet about this on TwitterShare on Google+0Share on LinkedIn0Email this to someone

Dopo aver trattato, per forza di cose non di certo esaustivamente, alcuni aspetti del sistema Android nelle quattro puntate precedenti, in questo quinto appuntamento sguinzaglieremo parte della potenza del sistema operativo infine liberato dalle catene imposte dai produttori grazie alla conquista dei privilegi di root.

Libertà è anche rischio

Dunque, ora che possiamo tutto, c’è solo da rimboccarsi le maniche e cominciare riorganizzare il nostro sistema.
Un avviso importante: da ora in poi terminerà la bonaria tranquillità, la calda coperta garantita dal non poter fare danni lentamente svanirà, ogni passo avanti che faremo sulla strada della conoscenza comporterà l’incontro con potenziali pericoli.
Meno aulicamente, come conseguenza di quello che combineremo, se non saremo accorti le prestazioni potrebbero subire variazioni (in negativo), il sistema potrebbe non avviarsi correttamente (andare in bootloop) o andare totalmente in pappa; poteremmo persino danneggiare l’hardware (ad esempio il processore, a parte il resto se, non senza comprensibili ragioni, lanceremo esasperati il telefono contro un muro…).

Tutto ciò non deve però spaventare più di tanto; le automobili non si guidano da sole ed il cofano non è sigillato, ma questo non significa necessariamente che a tutti capitino eventi infausti, benché taluni guidino ubriachi contromano o manomettano il motore senza averne competenza.

Semplicemente bisogna entrare nel corretto atteggiamento mentale DIY (“do it yourself”, fattelo da solo), ovvero acquisire conoscenza del sistema studiando (un pochino, o molto, decidiamo noi), leggere guide e seguire tutorial (su youtube ce ne sono a bizzeffe), comprendere quel che si vuole ottenere e prendere le dovute precauzioni prima di eseguire azioni potenzialmente pericolose.

Mettere le mani in pasta coi permessi di root

Clockwork-mod recovery

ClockWork-Mod recovery in azione!

Chi bene inizia…

Prima di fare qualsiasi mossa, mettiamo il paracadute utilizzando due strumenti fondamentali:

- Custom Recovery: non è un’app, ma un software che si avvia prima del sistema; probabilmente ne è già presente una di default, raggiungibile con qualche combinazione di pulsanti, ma installando una custom recovery (come la “CWM”), grazie alle operazioni eseguibili (come il backup completo del sistema), ci si può sentire decisamente più sicuri nello smanettamento, oltre ad essere indispensabile per flashare elementi nel sistema.

- ADB: L’ “Advanced Debug Bridge” si installa sul PC (Windows) e permette, tramite comandi in riga di comando (in un prompt di DOS) di interagire con lo smartphone (in cui sia abilitato il “debug USB”), permettendo ad esempio installare app, visualizzare i log, estrarre ed inserire file; perché funzioni è necessario avere installati i giusti driver.

Applicazioni

Mi limiterò qui a suggerire alcune app (perlopiù free) da me personalmente testate che permettano utilizzi avanzati e di intervenire “con decisione” sul sistema, certo di dimenticarne qualcuna e lasciando al lettore le relative indagini (suggerimento: google search, XDA e il play store vi vogliono bene e vi attendono):

- Gestione del processore: app come “Cpu Tuner” e “Setcpu” e molte altre ci permettono di gestire frequenza e governor della CPU, ad esempio in relazione al livello di carica della batteria; alcune altre app simili permettono anche di realizzare overclocking o variazioni dei voltaggi (se supportate dal giusto kernel, attenzione a quel che si fa!).
- App linking: se abbiamo poca memoria interna disponibile per le applicazioni una app come “Link2SD” fa al caso nostro, permettendo di spostarle nella SD e “linkarle” nel sistema, oltre a fungere comunque da ottimo gestore di applicazioni, con cui possiamo anche operare sulle app di sistema)
- Emulatore di terminale: siamo su un sistema Linux-like, installare una “shell”, ovvero una riga di comando, mi sembra il minimo;
- Busybox: la busybox è un contenitore di alcuni “comandi linux”, naturale complemento all’emulatore di terminale.
- Greenify: alcune applicazioni rimangono in esecuzione anche quando non sono utilizzate, consumando risorse; greenify le “addormenta” quando non in uso, senza “congelarle” ma lasciandole eseguibili al bisogno.
- Firewall: un firewall come “Afwall+” installato sul nostro sistema ci permetterà di scegliere quali app far connettere alla rete e quali tenere “offline”; non poche app utilizzano internet per scopi diversi da quelli per cui servono (ad esempio scaricano pubblicità o inviano dati sul sistema).
- Autorun: molte app hanno una “permission” particolare per cui si avviano quando si avvia il sistema; un’app come “Autorun manager” ci permetterà di evitarlo, e di gestire (con cautela…) molte altre “permission” delle app.
- Logcat: qualcosa va storto o non comprendiamo il comportamento di un programma? Dare un’occhiata i log di sistema è il primo passo da compiere. App come “Catlog” ci permettono di visualizzarli con comodità (invece di eseguire il comando nativo logcat da terminale o da ADB).
- DNS: cambiare i DNS (gli indirizzi di riferimento dei server che gestiscono i “nomi” dei siti e ci trasformano ad esempio 151.32.176.54 in www.google.com) registrati nel sistema con un app come “Set DNS” può essere utile in vari casi.
- Anche eliminare la pubblicità dal browser e dalle app può essere una conquista (benché sviluppatori indipendenti traggano sostentamento dagli AD nelle app…) installando un app come “Adaway”.
- Last but not least, c’è un (uno dei tanti) file, /system/build.prop , contenente alcune interessanti configurazioni di sistema; provare a metterci le mani tramite un’app che faciliti il compito come “Build prop tweaker” può essere un esercizio stimolante (quanto rischioso).

Custom ROM

Qualche puntata fa scrissi che compriamo solo l’hardware e che il software dello smartphone può essere interamente rimpiazzato. Bene, è questo  il caso.

cyanogenmod

Le personalizzazioni di una ROM Cyanogenmod

Una custom ROM è un firmware, ovvero l’insieme di tutti i file che fanno funzionare il sistema operativo, creato ad hoc da team di sviluppatori, in cui in genere si punta all’implementazione di caratteristiche peculiari e lo snellimento con l’eliminazione di componenti poco utili, in modo da utilizzare lo smartphone al massimo delle sue potenzialità con la sicurezza di un codice aperto e verificato (a parte le Google Apps).
Alcuni nomi famosi sono Cyanogen, AOKP, Paranoid Android, Pac-Man; si installano in genere flashandole da recovery (il team di Cyanogen ha rilasciato anche un’app per l’installazione) e vanno a sostituire totalmente il software di sistema (ma non le app installate).
E’ senza dubbio un modo radicale per “cambiare aria” e rinnovare il proprio smartphone.

 Xposed

Fino a un po’ di tempo fa mi sarei fermato due righe fa. Poi ho scoperto lo Xposed Framework.

Xposed

Lo Xposed installer ed alcuni moduli

Uno sviluppatore, come al solito su XDA,  ha creato questo formidabile strumento che, in parole povere, si “infila” nel sistema e permette, tramite dei moduli, di intervenire su piccole e grandi funzionalità altrimenti non modificabili se non ricompilando pezzi di software, tutto installando solo delle classiche app.
Gli aspetti su cui i moduli permettono di intervenire sono così tanti da far quasi scomparire il bisogno di installare i una custom ROM ed anche alcune app di quelle precedentemente summenzionate.
Xposed è un fenomeno in piena espansione, su XDA si parla quasi solo di questo (ogni giovedì c’è una video-review), e la lista dei moduli è in continua crescita, attualmente, ad occhio, ce ne saranno un centinaio…

Mi piacerebbe tanto scrivere altre cento righe in proposito, ma, per il mio e soprattutto vostro bene, rimando tutto alle pagine sopra linkate.
Il materiale è tanto e ben documentato, dallo stesso installer di Xposed si può scorrere la lista dei moduli ed installarli direttamente e per quasi ogni modulo c’è un thread su XDA.

Bene, direi che siamo arrivati alla fine.
Cioè all’inizio.
In queste cinque puntate (chissà che non ce ne saranno delle altre…) ho cercato di presentare il sistema operativo Android in modo non complicato ma pretendendo dal lettore una certa dose di iniziativa e voglia di imparare, sottolineando che il sottoscritto stesso non è affatto un esperto, anzi.
Chi fosse stato incuriosito potrà, se vorrà, seguire gli “indizi” che ho lasciato e diventare, un passo alla volta, padrone del suo smartphone Android!

Metti "Mi piace" alla nostra pagina Facebook e ricevi tutti gli aggiornamenti de L'Undici: clicca qui!
Share on Facebook0Tweet about this on TwitterShare on Google+0Share on LinkedIn0Email this to someone

Perché non lasci qualcosa di scritto?