22 settembre 2011

[Android] Ice Cream Sandwich sta arrivando!

Vi abbiamo già parlato di Ice Cream Sandwich, la nuova iterazione del sistema operativo Android.
Il rilascio di Android 4.0 è imminente, si parla del mese di ottobre in concomitanza -si spera- della presentazione della nuova ammiraglia degli smartphone made by Google, il famigerato Nexus Prime.

Lo scopo principale di Ice Cream Sandwich era già stato dichiarato durante lo scorso Google I/O, ed era quello di cancellare lo scisma creatosi con Honeycomb, la versione di Android solo per i tablet.
Sembra che la promessa verrà mantenuta, in quanto sul blog ufficiale di Android è stato postato un articolo che descrive la prima importante policy che permetterà agli sviluppatori di creare applicazioni funzionanti sia sugli smartphone che sui tablet.

Abbiamo detto "permetterà" ma forse avremmo fatto bene a girare la frase in senso negativo, poiché il succo di questa policy è proprio quello di non permettere -come comportamento di default per carità- di costruire applicazioni smartphone only o tablet only.
Uno sviluppatore dovrà infatti prendere una decisione: evitare di proposito che la sua applicazione possa funzionare su schermi inferiori ad una certa dimensione, oppure (preferibilmente) progettare la propria applicazione affinché funzioni correttamente su schermi di dimensioni diverse.
Si perché Ice Cream Sandwich supporterà schermi piccoli, schermi grandi, e tutto ciò che sta nel mezzo.
Non solo, le applicazioni progettate esclusivamente per Honeycomb andranno riprogettate o modificate poiché esse, per definizione, saranno compatibili con Ice Cream Sandwich il quale le forza su ogni dispositivo (come già detto).
Per esempio nel caso non vogliate assolutamente che la vostra applicazione funzioni su schermi piccoli, il codice da inserire nel manifest è il seguente:


<manifest ... >
    <supports-screens android:smallScreens="false"
                      android:normalScreens="false"
                      android:largeScreens="false"
                      android:xlargeScreens="true"
                      android:requiresSmallestWidthDp="600" />
    <application ... >
        ...
    </application>
</manifest>
Come vedete l'applicazione potrà girare solo su schermi "extra large" e comunque con una larghezza minima di 600dp.

Per tutti gli altri Google consiglia di riprogettare l'applicazione pensandola a "riquadri, frammenti riutilizzabili in situazioni differenti.


Lo stesso concetto base di ridisposizione può essere esteso anche alla action bar, come si vede nella figura di seguito.

L'articolo è molto tecnico, e non è questa la sede per approfondire.
Quello che a noi interessa di più è il fatto che questa versione di Android rappresenta un passaggio importante di maturità di questo sistema operativo spesso criticato di essere troppo frammentario. 
Certamente il grado di frammentazione dovuto al fatto di essere di fatto un sistema open source (seppur, lo ricordiamo, con tutte le contraddizioni del caso) rimane.
Resta il fatto che Android sta maturando ed evolvendo costantemente, oltre che diventando estremamente pervasivo come l'imminente sdoganamento su i più disparati dispositivi hardware dimostrerà.


Nessun commento:

Posta un commento