Posts made in novembre, 2013

Android Studio: integriamo il Google Play Services

Posted by on Nov 20, 2013 in Android, Android Studio | 0 comments

Volevo condividere con voi la mia esperienza con Android Studio che sto utilizzando ormai da un mese come IDE di produzione. Per chi non lo conoscesse Android Studio (abbreviato AS) è il nuovo IDE per sviluppare su Android rilasciato a Maggio da Google. AS è ancora una preview ma promette molto bene. Utilizza un sistema diverso di Build, non più ANT ma Gradle. Nei prossimi articoli spero di approfondire questo aspetto.

Oggi vi spiegherò come integrare il Google Play Services per utilizzare per esempio le Maps v2 di Google.

Per prima cosa scarichiamo o controlliamo se abbiamo scaricato il nuovo Play Services. Apriamo Android Studio e selezioniamo: Tools->Android->SDK Manager.

 

Android Studio SDK Manager

 

Nella finestra SDK Manager andiamo in fonto su Extra e installiamo (se non è installato) Google Play Services

 

sdkmanager

 

Bene è tutto pronto per integrare la libreria. Come dicevo gradle è un nuovo sistema di build introdotto con AS quindi per integrare il Google Play Services dobbiamo modificare il file build.gradle inserendo che utilizziamo la libreria.Basta inserire

compile ‘com.google.android.gms:play-services:4.0.30’

Ecco il nuovo build.gradle

Molto più semplice di Eclipse penso.

Per essere sicuri che tutto è sincronizzato basta cliccare il pulsante di Gradle Sync.

Eccolo:

 

sync

 

Per far funzionare tutto correttamente dobbiamo modificare il Manifest aggiungendo nel tag <application…> questo meta-data

 

Abbiamo finito.

Ecco alcuni link utili:

http://developer.android.com/sdk/installing/studio.html

http://tools.android.com/tech-docs/new-build-system/user-guide

Vi consiglio inoltre di seguire la Community Google+ ufficiale:

https://plus.google.com/u/0/communities/114791428968349268860

 

 

 

 

 

 

 

Read More

ViewPager bloccato

Posted by on Nov 2, 2013 in Tips & Tricks | 0 comments

Un breve articolo per mostrarvi una Custom View che uso spesso. Penso che ormai i Fragment siano ormai obbligatori per tutte le tipologie di UI. Spesso si usano con un ViewPager come  contenitore. A volte però si ha necessità di avere il controllo delle “slides” e impedire all’utente di cambiare il fragment che si sta visualizzando.

Io utilizzo una Custom View che estende il ViewPager e nell’ override di due metodi impedisce il propagarsi dell’ evento quindi in definitiva impedisce lo swipe che farebbe cambiare il fragment con il successivo o il precedente.

Bene per utilizzare la custom view basta sostituire il ViewPager con questa classe:

In questo modo il ViewPager usato non risponderò più agli eventi di touch e soprattutto di swipe.

 

 

Read More

Aggiungere la nuova ActionBarCompact

Posted by on Nov 2, 2013 in Tutorial | 0 comments

Aggiungere la nuova ActionBarCompact

In questo breve tutorial spiegherò come aggiungere alle nostre applicazioni la nuova ActionBarCompact che ci permette di utilizzare tutte le funzionalità dell’ ActionBar classica supportando anche le API Level 7.

L’ adozione dell’ ActionBar risale alle API Level 11 con HoneyComb e da li in poi Google ha sempre consigliato di utilizzarla per maggiore integrazione tra le applicazioni e il sistema operativo e uniformità tra le app. Purtroppo per poter adottare la classica ActionBar occorre  sviluppare per un minSdk 11 quindi tagliare fuori una buona fetta di device (prima più di 50% ora 28%). Grazie al lavoro (stupendo aggiungerei) di Jake Warton abbiamo per un po di tempo integrato una “fotocopia” della classica ActionBar, la ActionBarSherlock (ABS abbreviato).

Usando ABS possiamo sfruttare (emulando) tutte le potenzialità di una classica ActionBar rispettando cosi le linee guide di Google.  ABS è stata usata da Google stessa per sviluppare il Play Store che per ovvi motivi deve essere compatibile per il maggior numero di dispositivi.

Per fortuna Google ha provveduto da poco (in ritardo) a colmare questa mancanza di supporto rilasciando con Android 4.3 una nuova libreria di supporto la v7 che comprende anche l’ ActionBarCompact (ABC abbreviato).

Utilizzare ABC per le nostre applicazioni è molto semplice e richiede pochi secondi e poco lavoro.

Per prima cosa assicuriamoci di aver scaricato la libreria di supporto. Per controllare ed eventualmente scaricarla useremo il tool Android Sdk Manager. Troviamo Android Sdk Manager nella cartella {sdk}/tool/ oppure possiamo lanciarlo con il comodo pulsante di Eclipse/Adt.

asm

Scaricando l’ ultima versione di ADT avremo già tutto il necessario per usare ABC. Assicurarsi di avere il progetto appcompat in:

{sdk home}/extras/android/support/v7/

Bene abbiamo tutto possiamo iniziare.

In Eclipse File->New e scegliamo l’ ultimo menu Other…; nella finestra apriamo la cartella  Android e poi scegliamo Android Project from Existing Code.
Nella successiva finestra clicchiamo su Browse… e andiamo a cercare il progetto appcompat nell’ sdk Android. I percorsi saranno diversi dal mio ma dovreste avere un path simile a questo:

{percorso diverso}/sdk/extras/android/support/v7/appcompat/

 

Cliccando su Finish  vedremo il progetto android-support-v7-appcompat nella lista dei nostri progetti. A volte seleziono la voce Copy project into workspace in modo tale che Eclipse copierà l’ intero progetto nel nostro workspace.  Scelgo questa opzione perchè quando consegno i sorgenti a clienti o a aziende inserisco anche il progetto android-support-v7-appcompat cosi che chi utilizzerà i sorgenti avrà tutto pronto senza dover scaricare e aggiungere nulla e i percorsi saranno relativi al nostro progetto o al workspace usato; oppure se spostate il progetto su altri pc non occorre una volta importato andare a cambiare il percorso delle librerie.

Adesso possiamo creare il nostro progetto Test.  Una volta creato andiamo ad aggiungere come libreria il progetto android-support-v7-appcompat.

Modifichiamo la nostra MainActivity

 

Come codice abbiamo finito. Per far funzionare ABC dobbiamo cambiare il tema di default. Possiamo farlo in due modi: cambiare il tema nel Manifest o modificare il tema principale. Vi consiglio di modificare il tema principale in modo tale che in futuro magari aggiungerete altre modifiche come il colore della barra etc.

Nel Manifest basta cambiare il tema scegliendo per esempio Theme.AppCompat.Light

Modificate il tema principale e lasciate invariato il tema nel Manifest quindi modifichiamo il file res/values/styles.xml

E’ giunto il momento di provare il nostro progetto. Io ho usato un Nexus One che ha ancora Android 2.3.6 e funziona correttamente.

Una cosa che forse non noterete subito è la mancanza della classica icona settings di default nei file di meni oppure se provate ad aggiunge altre icone personali al soft menu non funzioneranno. Per mostrare le icone si deve modificare il file menu/main.xml aggiungendo un namespace. Qui sotto il codice che mostra l’ icona settings.

E’ tutto ma nel prossimo tutorial vi spiegherò come utilizzare la nuova ActionBarCompact per modificare il titolo o aggiungere il classico tasto home/back.

Ho creato i progetti che per adesso potete scaricarli da questo link AppCompact

Mi raccomando per qualsiasi chiarimento commentate o scrivetemi su giuseppe.sorce@warpmobile.it

Read More