Librinformatica

Newsletter

Libreria Gaia Scienza Edizioni Erasmo Edizioni del Boccale

Sviluppare applicazioni per Android guida completa

Apogeo

Sviluppare applicazioni per Android guida completa


35,00 € IVA compresa

Bestseller

9788850330102

  • Autore: Massimo Carli
  • Collana: Guida completa
  • Pagine: 416
  • Livello: Intermedio Avanzato
  • Lingua: italiano
  • Data Pubblicazione: 03/2011
  • Volumi: 1

Android è un sistema operativo open source per dispositivi mobili basato su Linux.

La sua struttura aperta permette di personalizzare le funzioni principali del sistema e sviluppare applicazioni.

L’obiettivo di questo libro è quello di guidare il lettore attraverso tutte le fasi necessarie alla realizzazione di un'applicazione Android caratterizzata da una forte integrazione con sistemi esterni. Particolare attenzione è dedicata a passaggi chiave come la gestione dell'interfaccia grafica, la comunicazione tra le componenti, l'interazione con fonti di dati, fino alla pubblicazione sull'Android Market. Grazie a questo testo, aggiornato alla versione 2.3 della piattaforma, gli sviluppatori avranno tutti gli strumenti e le conoscenze fondamentali per creare applicazioni dedicate a smartphone, ma anche a tablet altri device.


Argomenti in breve:


  • Realizzare applicazioni pensando a diversi device
  • Android Market: pubblicazione e distribuzione
  • Lavorare con C, Java, ma anche HTML, CSS e JavaScript
  • La fase di test
  • Tecniche di sincronizzazione
  • Sistemi di autenticazione e gestione dei contatti
  • Implementare i componenti dell'interfaccia grafica
  • Integrare l'applicazione con i sistemi di ricerca

 


L'autore

Massimo Carli, cofondatore di Mokabyte e socio JIA (Java Italian Association), progetta e sviluppa applicazioni Java dal 1995. Ha maturato esperienze di insegnamento presso l’Università di Padova per il corso di Diploma di Ingegneria Informatica. Dal 2004 è docente di Sun Microsystems per i corsi relativi alle tecnologie Java, XML, Web Services, GlassFish e Web 2.0. Attualmente il suo interesse è orientato verso la realizzazione di applicazioni in ambito mobile sia per la piattaforma iPhone, sia per Android, che segue fin dai suoi primi sviluppi. Per Apogeo è autore di Android guida per lo sviluppatore. Potete contattarlo sul suo blog.

Indice generale

Prefazione ...................................................................................................xi

Introduzione .................................................................................................xiii



Capitolo 1 Sviluppare Mobile ........................................................................ 1

Il problema della frammentazione ...................................................... 2

Gestione delle feature a runtime................................................... 7

Compatibilità e Api Level ............................................................ 8

Confi gurazioni hardware e compatibilità ...................................... 9

Gestire schermi di dimensioni diverse .............................................. 10

Gestione automatica delle dimensioni ........................................ 14

Calcolo esplicito delle dimensioni .............................................. 18

Conclusioni .................................................................................... 20



Capitolo 2 Il processo di pubblicazione .........................................................21

La gestione della fi rma .................................................................... 22

Il processo di fi rma .................................................................... 23

La gestione delle versioni ................................................................ 29

Pubblicazione sull’Android Market .................................................. 31

Upload Assets ............................................................................ 33

Listing details ............................................................................. 37

Publishing options ..................................................................... 37

Contact information e Consent ................................................. 38

L’applicazione nel Market .......................................................... 39

License Verifi cation Library ............................................................. 41

Architettura di base .................................................................... 42

Esempio di utilizzo .................................................................... 43

Interagire con il Market .................................................................. 52

Monitorare l’applicazione ................................................................ 56

Conclusioni .................................................................................... 58



Capitolo 3 Native Development Kit e applicazioni web ...................................59

Nativo o non nativo? ....................................................................... 59

Native Development Kit ................................................................. 61

Installazione ambiente ................................................................ 61

Creazione del progetto Android nativo ....................................... 66

Interfaccia tra Java e codice nativo .............................................. 69

Implementazione codice nativo .................................................. 72

Build dell’applicazione ............................................................... 73

Esecuzione dell’applicazione ...................................................... 74

Sviluppare per Android con tecnologia web ..................................... 74

La gestione del display ............................................................... 74

Utilizzo della WebView .............................................................. 81

Interazione con JavaScript .......................................................... 83

Conclusioni .................................................................................... 86



Capitolo 4 Test e Instrumentation ................................................................87

Perché si testano le applicazioni ....................................................... 87

Vari tipi di test ................................................................................ 88

Unit Test .................................................................................... 89

Functional Test ........................................................................... 90

Regression Test .......................................................................... 91

Le basi di JUnit ............................................................................... 91

Un semplice esempio di Unit Test .............................................. 96

Stub e Mock ........................................................................... 101

JUnit e Instrumentation Framework .............................................. 102

Le specializzazioni JUnit di Android ......................................... 105

Unit Test di una Activity ................................................................ 108

Functional Test di una Activity ....................................................... 115

Simulazione eventi touch ......................................................... 119

Conclusioni .................................................................................. 121



Capitolo 5 Tecniche di sincronizzazione .......................................................123

L’importanza della Rete ................................................................ 124

Utilizzo di Content Provider ......................................................... 127

Android e cloud computing .......................................................... 128

I servizi REST ......................................................................... 130

Implementazione delle richieste HTTP .................................. 134

Una semplice applicazione REST ............................................ 136

Operazioni di sincronizzazione ................................................ 137

Sincronizzazione in inserimento ..........................................137

Sincronizzazione in aggiornamento .....................................139

Sincronizzazione in cancellazione ........................................139

Sincronizzazione in lettura ...................................................140

La cancellazione lato server ..................................................141

Implementazione del Content Provider .................................... 141

Defi nizione DB e confi gurazione mime-type ......................144

Implementazione delle operazioni di accesso ai dati .............148

Implementazione del processor ................................................ 152

Utilizzo asincrono del Content Provider ..............................152

Utilizzo asincrono del RestMethod .....................................153

La classe Processor ...............................................................157

Accesso alla lista e ContentProviderOperation .....................166

Utilizzo del Processor in un servizio ....................................... 171

Richiesta di una operazione REST al Service ......................172

Gestione delle notifi che .......................................................177

Il punto della situazione .......................................................184

Gestione di più richieste: la classe ServiceHelper ..................185

Conclusioni .................................................................................. 191



Capitolo 6 Sistemi di autenticazione ..........................................................193

Un tipico scenario di utilizzo ........................................................ 194

Il componente AccountManager ................................................... 196

La gestione del token ............................................................... 201

Cancellazione di un account .................................................... 205

Creare un modulo di autenticazione custom .................................. 205

Confi gurazione dell’Authenticator ........................................... 206

Defi nizione XML dei parametri di confi gurazione del servizio ........... 207

Implementazione dell’AccountAuthenticator  per la creazione di un account ..... 209

Esempio di creazione di un account ......................................... 214

Implementazione dell’AccountAuthenticator

per la verifi ca di un account ..................................................... 222

Confi gurazione delle proprietà dell’account ............................. 226

La gestione del token ............................................................... 227

La gestione delle feature di un account ..................................... 230

Update delle credenziali ........................................................... 231

Creazione del service di autenticazione .................................... 232

Conclusioni .................................................................................. 233



Capitolo 7 La gestione dei contatti ....................................................235

Scenario e modello dei dati ........................................................... 235

Lookup URI ........................................................................... 240

Lo stato di un contatto ............................................................. 241

Realizzare un SyncAdapter............................................................ 242

Estensione del server per la gestione dei contatti....................... 243

Abilitazione dei contatti alla sincronizzazione ........................... 244

Defi nizione dei permessi per la gestione dei contatti ................ 246

Dichiarazione del SyncAdapter ............................................... 246

Implementazione del SyncAdapter ........................................... 248

Richiesta del token all’AccountManager ..............................251

Accesso alle informazioni dei contatti sul server ...................252

Aggiornamento del Content Provider dei contatti ...............254

Inserimento di un nuovo contatto .......................................257

Aggiornamento dei dati di un contatto ................................263

Cancellazione dei dati di un contatto ...................................263

Defi nizione del servizio per il SyncAdapter .............................. 264

Verifi chiamo il funzionamento del SyncAdapter ....................... 265

Aggiunta delle informazioni sullo status ................................... 273

SyncAdapter e lo scenario REST .................................................. 276

Gestione interfaccia ................................................................. 277

Gestione sincronizzazione ........................................................ 280

Conclusioni .................................................................................. 280



Capitolo 8 Android UI pattern ....................................................................281

La gestione degli account .............................................................. 282

Gestione della sincronizzazione dei contatti .............................. 287

Integrazione con il QuickContact ............................................ 288

QuickAction ................................................................................. 299

La classe QuickActionItem ...................................................... 301

La classe QuickActionWindow ................................................ 305

La ActionBar ................................................................................. 312

La Dashboard ................................................................................ 319

La classe DashboardItem .......................................................... 324

La classe Dashboard ................................................................. 328

Selezione di un item ed effetto di blur ..................................... 330

Live wallpaper ............................................................................... 333

Conclusioni .................................................................................. 341



Capitolo 9 ListView ....................................................................................343

ListView e Adapter ........................................................................ 343

ListView predefi nite ................................................................. 345

Utilizzo della ListActivity ......................................................... 347

La gestione delle celle .............................................................. 350

Holder pattern ......................................................................... 358

Interazione con i dati attraverso CursorAdapter ........................ 360

Liste con elementi di tipi diversi............................................... 363

La divisione in categorie .......................................................... 366

Tecniche di paginazione dei dati .............................................. 377

Il caricamento lazy delle informazioni ...................................... 379

Conclusioni .................................................................................. 385



Capitolo 10 Search Service ...........................................................................387

Funzionamento di default ............................................................. 387

Confi gurazione Search Service ...................................................... 390

Attivazione di una ricerca ........................................................ 390

Implementazione della ricerca .................................................. 393

Gestione dei suggerimenti ....................................................... 399

Integrazione con Quick Search Box ......................................... 402

Ricerca vocale .............................................................................. 404

Conclusioni .................................................................................. 406



Indice analitico ................................................................................................407

Carrello

Non ci sono prodotti

Spedizione 0,00 €
Totale 0,00 €

Carrello Acquista