Home
Povero sviluppatore Android

15 Giugno 2012

Povero sviluppatore Android

di

Il lavoro di un programmatore sulla piattaforma mobile di Google somiglia a quello di certi politici che cercano di accontentare tutti.

Qualche tempo fa è stato pubblicato da OpenSignalMaps un grafico riassuntivo dei tipi di dispositivi Android sul mercato: ormai più di quattromila!

Oltre che indicare il Samsung Galaxy II come il più diffuso, lo studio visualizza moltissimi modelli che si differenziano sostanzialmente per la versione della piattaforma Android supportata e le caratteristiche hardware che si traducono il più delle volte nell’adozione di schermi di dimensioni e risoluzioni diverse o nella modalità di input dei dati.

The proliferation of devices with their associated screen sizes, internal hardware and custom ROMs creates some difficulties. We spend a lot of time making the app presentable (or at less functional) on exotic devices – this is the most common request we get from app users.

Si tratta di un altro modo di descrivere la frammentazione della piattaforma Android, un grosso problema non solo per chi deve sviluppare le applicazioni ma anche per chi le deve vendere. Se è vero che il numero di dispositivi Android è superiore a quello di dispositivi iPhone, è anche vero che gli iPhone disponibili montano per lo più iOS 5.x. Nel caso di Android i dispositivi utilizzano più versioni diverse del sistema operativo: dalla 2.2 all’ultima 4.x, che al momento ha una penetrazione di circa il 7%.

Se utilizzassimo Gingerbread (Android versione 2.3) come riferimento, raggiungeremmo circa il 72 percento del pubblico, per arrivare al 90 percento con Froyo (2.2). Capita dunque di voler proporre funzionalità avanzate pur avendo come riferimento versioni precedenti della piattaforma e questo porta (quando fattibile) a un aumento considerevole del lavoro dello sviluppatore.

Da non trascurare anche l’aspetto legato all’interfaccia utente. Android 4.x ha modificato, in meglio, il set di componenti grafici e le modalità di interazione con le applicazioni. Queste non si possono però utilizzare in versioni precedenti, per le quali esistono librerie (per esempio ActionBarSherlock) che permettono di ottenere risultati simili e decidere, in modo trasparente, se utilizzare la feature disponibile nella versione in esecuzione o se “scalare” nella versione simulata.

Insomma, programmare per tutti i dispositivi Android con una ragionevole uniformità di risultati è possibile. Ma complicato.

L'autore

  • Massimo Carli
    Massimo Carli, dopo essersi occupato per più di dieci anni di applicazioni enterprise in ambiente Java, nel 2003 ha iniziato a interessarsi alle applicazioni mobile, sviluppando per dispositivi Blackberry, iOS e Android. Ha lavorato come Software Engineer per Yahoo! e Facebook ed è attualmente Lead Mobile Engineer per Lloyds Banking Group.

Iscriviti alla newsletter

Novità, promozioni e approfondimenti per imparare sempre qualcosa di nuovo

Gli argomenti che mi interessano:
Iscrivendomi dichiaro di aver preso visione dell’Informativa fornita ai sensi dell'art. 13 e 14 del Regolamento Europeo EU 679/2016.