La piattaforma Android - 1.1 Descrizione

Pagina creata da Andrea Marini
 
CONTINUA A LEGGERE
La piattaforma Android - 1.1 Descrizione
CAPITOLO 1

 La piattaforma Android

1.1 Descrizione

        Android SDK è una piattaforma open source per dispositivi mobili, basata
sul sistema operativo Linux ideato da Google e messo a punto dal consorzio di
imprese e sviluppatori della Open handset alliance che riunisce 34 protagonisti
del mondo mobile, tra operatori e produttori. Questa nuova e innovativa
piattaforma rappresenta il tentativo da parte di Google di affacciarsi nel campo
della telefonia mobile.
        Android SDK consente di effettuare lo sviluppo di applicazioni di
telefonia mobile sui principali sistemi operativi (Linux, Mac OS e Windows sono
tutti supportati) usando Java come linguaggio di programmazione; gli
sviluppatori sono liberi di scegliere il proprio IDE preferito, anche se Eclipse è
avvantaggiato dal momento che offre già un plug-in per Android (noto con il
nome di Android Development Tools, o semplicemente ADT). L’SDK di
Android include un sistema operativo, un insieme di librerie, e un framework con
varie applicazioni. Tutte le applicazioni fornite con l’SDK sono state scritte in
Java, e comprendono un browser, un client di posta, un calendario, mappe e
contatti.
        Android presenta tutte le più importanti caratteristiche che l’utente si
aspetta di trovare in un moderno dispositivi mobile:
       Supporto per la messaggistica MMS e SMS;
       supporto per i più comuni tipi di connessione: Wifi, Blutooth, Edge e 3G;
       supporto per I principali formati multimediali, come MP3, MPEG-4, JPG,
        PNG;
       supporto per videocamera, GPS, touch screen, bussola ed accelerometro,
        accelerazione grafica 3D basata sulle librerie OpenGL;

                                                                                     5
La piattaforma Android - 1.1 Descrizione
      una Java virtual machine: in questo caso è presente la versione creata
           appositamente da Google (Dalvik), ottimizzata per impieghi mobile;
          un database relazionale snello ed open-source, particolarmente adatto per
           applicazioni embedded (SQLite);
          un browser integrato basato sul motore WebKit.

1.2 Architettura
           L’architettura di Android è mostrata nella figura seguente(figura 1). Al
livello più basso (colorato di rosso) si trova il Linux kernel, con tutti i software
drivers necessari per gestire le varie periferiche (display, videocamera, audio,
tastiera, Wi-Fi, memoria flash e alimentazione). Sopra al kernel si trovano le
librerie (colorate di verde); questo livello mette a disposizione tutte le API e le
librarie necessarie per implementare le funzionalità di più alto livello. Tra queste,
possiamo notare la libreria libc (la libreria principale nel linguaggio C), la libreria
SQLite (un database relazionale compatto con interfaccia SQL), la libreria
OpenGL (accelerazione grafica 2D e 3D), la libreria WebKit (la stessa adottata da
Safari, il browser di iPhone, e da alcuni telefoni di Nokia), ed il media
framework, in grado di supportare la maggior parte dei formati audio, video, e
foto. Sopra di essi si colloca la Java virtual machine di Google, Dalvik (colorata
di giallo), il motore in grado di eseguire il codice run-time di Android. I livelli più
alti (colorati di blu) sono riservati per le applicazioni ed il framework di alto
livello.

                                                                                     6
figura 1 - Architettura Android

1.3 L’emulatore
       Una caratteristica molto importante dell’SDK di Android SDK è quella di
disporre di un emulatore integrato nel pacchetto (figura 2) : si tratta di un vero e
proprio dispositivo mobile virtuale che permette di sviluppare, eseguire, e
debuggare un’applicazione Android senza dover disporre di un apparecchio reale.
       L’emulatore è in grado di modellare tutte le caratteristiche hardware e
software del dispositivo reale: così esiste un display, un insieme di tasti e
controlli che possono essere attivati tramite il mouse (la pressione simulata
genera un evento che viene gestito dal simulatore stesso), e mette a disposizione
tutti i servizi della piattaforma Android per eseguire altre applicazioni, riprodurre
video e audio, memorizzare e recuperare informazioni in/dalla memoria, accedere
alla rete. L’emulatore presenta anche alcune caratteristiche specifiche di debug in
grado di aiutare lo sviluppatore durante le attività di test e integrazione; per
esempio, è presente una console che cattura in un log tutti i messaggi di output
del kernel, consente di inviare interrupt al motore del simulatore (simulando così
una chiamata oppure l’arrivo di un SMS). La figura seguente visualizza il
simulatore di Android fornito con l’SDK.

                                                                                   7
figura 2 - l’emulatore di Android

       L’emulatore di Android è in grado di supportare diverse caratteristiche
hardware tipiche di un dispositivo mobile, come ad esempio:
      una CPU ARMv5 con la corrispondente MMU (memory management
       unit)
      un display LCD a 16-bit
      tastiera e bottoni
      scheda sonora con segnali sia di output che di input
      partizioni di memoria flash, emulate tramite disk image file gestiti
       dall’emulatore
      modem GSM e relativa SIM Card simulata
       L’emulatore di Android SDK può essere eseguito come un’applicazione
stand-alone, oppure dall’ambiente integrato di Eclipse. Inoltre, è possible attivare
contemporaneamente più istanze dell’emulatore; le chiamate GSM, gli SMS,

                                                                                  8
oppure il trasferimento di dati può così essere simulato tra diverse istanze
dell’emulatore.

1.4 Android SDK 1.5
          Il 28 Aprile del 2009 è stata rilasciata la versione 1.5 del development kit
(SDK) per Android 1.5.
          Come spiegato sul blog ufficiale di Android, le API della versione 1.5
introducono novità quali tastiera virtuale, supporto ai widget, riconoscimento
vocale e Live Folders.
          L'inclusione di una tastiera software era tra le caratteristiche più attese
dagli utenti: nelle precedenti versioni di Android, infatti, era possibile scrivere
solo attraverso la tastiera hardware del telefono. La soft keyboard di Android 1.5
può completare le parole digitate servendosi di un dizionario utente. Come già
avviene in Windows Mobile, gli utenti potranno installare tastiere da terze parti.
          La nuova versione di Android supporta poi i widget, che possono essere
visualizzati nella schermata di stand-by: tra quelli di default si troveranno
orologio analogico, calendario, player audio, motore di ricerca e cornice per foto.
          Simile a un widget, ma implementato come funzionalità nativa del sistema
operativo, è invece Live Folders. Questo strumento consente di visualizzare
direttamente nell'home screen di Android, e in tempo reale, informazioni
aggiornate provenienti dai siti web: ad esempio news, quotazioni di borsa,
risultati sportivi, previsioni meteo ecc. Sebbene Live Folders possa essere
utilizzato come un semplice lettore di feed RSS, il motore web su cui poggia lo
rende un'applicazione ben più sofisticata, capace di interfacciarsi ad un'ampia
varietà di servizi web.
          Tra le altre novità elencate nelle note di rilascio di Android 1.5 vanno poi
citate la capacità di registrare video e di riprodurre file MPEG4 e 3GP, il supporto
all'audio Bluetooth stereo, la possibilità di usare il copia e incolla e di cercare
parole chiave all'interno del browser web predefinito, tra i quali Youtube e
Picasa.

                                                                                     9
Puoi anche leggere