Archivi categoria: Mobile

The return of Fraboni


Continuo la metafora di Star Wars per presentare la nuova applicazione iPhone e iPod Touch sviluppata da Roberto Fraboni: Tressette!

tressette_1.jpg

Tressette offre 3 differenti tipi di sfida: contro il computer, uno contro uno sullo stesso iPhone, uno contro uno in rete locale via Wi-Fi. A disposizione 7 diversi mazzi di carte, 3 livelli di difficoltà e 3 differenti punteggi (21, 31, 41), con una grafica piacevole e grande semplicità d’uso. Si ha anche la possibilità di ordinare a proprio piacimento le carte ricevute.

tressette_2.jpg

L’applicazione ha ricevuto grande successo nell’App Store (è stata per parecchi giorni TOP 2!) ed è tuttora tra le TOP 25 delle applicazioni a pagamento. Graditissimo tra gli appassionati di questo gioco, Tressette è stato sviluppato da Roberto (con il supporto del tester implacabile Simone Marinelli) e disegnato dalla mano eccellente di Maurizio Terzo.

Il mio piccolo contributo per questa applicazione è stato registrare i due brani musicali utilizzati durante la visualizzazione del menù e durante la partita. Il primo brano è stato scritto ad hoc e suonato su una meravigliosa Yamaha MO6 e registrato con un mixer USB Yamaha MW10C. Il secondo, invece, è un pezzo scritto molti anni fa, suonato su una Yamaha V50 e registrato in analogico su una piastra Teac. Collaborare con Rob con la musica anziché con il codice è stato molto divertente e… anomalo, soprattutto per la scrittura del brano del menù, che doveva rispettare precisi requisiti: moderno, non troppo invedente, della durata di un minuto, ritmato ma non troppo. E’ stata la prima volta che mi son messo a comporre un brano con l’iPhone in mano, per provare a “immaginare” quali suoni potessero star bene con il menù. Prima esperienza piacevole, speriamo di poter ripetere.

Grande Rob, avanti tutta!

Android: gestire diversi emulatori


In questi giorni si è susseguito in rete il tamtam (ad esempio: link1, link2, link3…) relativo al rilascio di una immagine dell’emulatore di Android basata sulla prossima release Cupcake.

android15_info.png

Tra le novità più interessanti dell’imminente nuova release ci sono dei miglioramenti al motore grafico (le finestre hanno transizioni pressoché identiche a quelle dell’iPhone, i pulsanti hanno un effetto lucido molto gradevole), i live folder, la presenza della tastiera software, la localizzazione italiana (e non soo, ovviamente!) e altre che ora mi sfuggono. 🙂

android15_keyboard.png

La procedura di configurazione della nuova build descritta sui vari siti prevede il recupero del file

http://nullwire.com/sites/default/files/android_images_sdk1.5.zip

il cui contenuto (ramdisk.img, system.img e userdata.img) va a sovrascrivere gli omonimi file della cartella tools/lib dell’SDK di Android.

Sovrascrivere, però, pone un problema: non si ha più a disposizione la configurazione di sistema dell’SDK ufficiale, di fatto ancora indispensabile per chi sviluppa software da distribuire sull’Android Market (per assicurarsi la compatibilità con la stable version corrente del sistema operativo). La preview della release Cupcake, infatti, non è ancora matura e finché non sarà rilasciata in versione definitiva con relativo SDK è da considerarsi utile sono per sperimentazione.

L’ideale sarebbe poter disporre di due immagini dell’emulatore, una con i file della distribuzione ufficiale (1.0 r2) e una (o più) con le release di sviluppo (attualmente a 1.5).

Predisporre un ambiente con emulatori multipli è piuttosto semplice, occorre infatti:

  1. Scaricare il file contenente le immagini dell’emulatore ed estrarne il contenuto in una directory temporanea
  2. Copiare la cartella tools/lib/images dentro una nuova cartella allo stesso livello (ad esempio, tools/lib/cupcake_images)
  3. Sovrascrivere i file ramdisk.img, system.img e userdata.img della nuova cartella con quelli estratti dal file zip scaricato al punto 1

A questo punto, per avviare l’emulatore utilizzando una build diversa da quella di default è sufficiente aggiungere l’opzione system di esecuzione nel pannello configurazioni del progetto Android su Eclipse, specificando la directory da cui leggere i file immagine di sistema (nel mio caso, l’SDK è installato su Mac OS X nella directory /Users/gerdavax/tools/android-sdk-mac_x86-1.0_r2):

-system /ROOT_ANDROID_SDK/tools/lib/cupcake_images

emulator1.png

emulator2.png

L’emulatore ora partirà con i nuovi file immagine. Passando da una versione all’altra del sistema operativo può capitare che l’emulatore non parta più (alcune nuove impostazioni sono incompatibili con la versione precedente), per cui può rendersi necessaria la cancellazione dei dati utente (memorizzati nel file .android/SDK-1.0/userdata-qemu.img).

Per ora è sufficiente per sperimentare la nuova build, in attesa di avere il nuovo SDK ufficiale…

WideNoise

openspime.png

OpenSpime è un progetto che non ha bisogno di presentazioni: ideato dal team di WideTag (Leandro Agrò, Roberto Ostinelli e David Orbam, tra le menti più vivaci e dinamiche che abbia mai avuto il piacere di conoscere), ha come obiettivo la realizzazione di una infrastruttura aperta per la "Internet of Things". Nelle sue prime applicazioni, OpenSpime ha posto l’accento sulle problematiche ambientali, con scenari che potremmo definire di social sensor network, in cui cioè la social network di utenti equipaggiati di sensori raccoglie grandi quantità di dati che concorrono al monitoraggio massivo dell’ambiente.

Dopo i primi prototipi dedicati alla rilevazione di gas inquinanti (CO2 in primis), ecco che il progetto prosegue con una rilevazione meno scontata ma di grandissimo impatto per la qualità della vita: l’inquinamento acustico.

WideNoise è una bella applicazione per iPhone che consente l’acquisizione del livello sonoro dell’ambiente in cui si trova l’utente e la “pubblicazione” del dato opportunamente georeferenziato sulla rete OpenSpime. Il risultato è una mappatura delle aree con evidenziato il livello di inquinamento acustico. L’applicazione ha un feeling piacevolmente retrò ed è di utilizzo semplice ed immediato:

widenoise.png

Essendo il campionamento di frammenti audio disponibile su qualsiasi device mobile programmabile (da Java ME a Symbian, da Windows Mobile ad Android) è auspicabile che il team di WideTag realizzi i porting dell’applicazione per un largo numero di device, consentendo così una rapida diffusione di questo tipo di servizi al più vasto numero possibile di utenti.

Bravi ragazzi, continuate così!

Seminario @ Java Day 2009 Roma


Ieri si è svolta la terza edizione del Java Day di Roma, organizzata da JUG Roma, Java Italian Association e Java Italian Portal. È stata una bellissima giornata, ricca di seminari interessanti e premiata da una vasta partecipazione di pubblico (credo oltre 1400 persone!).

javaday_300_250.gif

Aule stracolme, con tante persone costrette a stare in piedi:

in_piedi.jpg

È stata anche una bella occasione per ricevere gli amici javaroli: Max, Nino, Simone, Matteo, Demis, Antonio, Alessandro, Daniela, Emanuela…

Massimiliano Dessì ha annunciato il suo libro Spring 2.5 Aspect Oriented Programming, pubblicato da Packt Publishing e disponibile da febbraio.

slide_libro_max.jpg

Ho avuto il piacere di presentare a quattro mani (anzi, a due voci) un seminario introduttivo su Android insieme a Riccardo Solimena. Non è stato facile parlare di una belva qual’è Android in 35 minuti, ma speriamo almeno di aver stuzzicato la curiosità dei partecipanti. Le slide sono già disponibili su slideshare per la consultazione online e nella sezione seminari per la lettura offline.

Android

View more presentations or upload your own. (tags: javaday java)

A fine giornata, immancabile il pranzo al Biondo Tevere:

staff.jpg

matteo_e_max.jpg

Il piatto sa segnalare è sicuramente il primo: tagliatelle al ragù in cui era sepolto un cannellone DELIZIOSO!

cannellone.jpg

Un ringraziamento speciale va a Mara Marzocchi, Daniela Ruggeri e Ugo Landini, che hanno coordinato brillantemente la realizzazione di questo evento che, credo, sia ormai il più importante dedicato alla tecnologia Java in Italia. Sei tracce parallele, i nomi più conosciuti in Italia su Java e tecnologie correlate, sponsor di primissimo livello: questi sono risultati importanti che meritano ammirazione e gratitudine. Grazie, cari amici, per questo vostro contributo alla nostra community e grazie anche a tutti coloro (taaaaaaaaaaaaanti!) che hanno aiutato a rendere possibile tutto questo.

Al prossimo Java Day!

Parlano di noi:

  • mrblue

    Dopo questa sconcertante notizia e un caffè siamo pronti per affrontare le meraviglie di Android illustrate dal simapticissimo duo Stefano Sanna e Riccardo Solimena. Android (con cui ho gia fatto amicizia) è la piattaforma aperta di mobile computing sviluppata dalla Open Handset Alliance e sostenuta da Google, basata su Linux e dotato di un ambiente Java ottimizzato e una ricca libreria di classi.
    I due ci mostrano come hanno sviluppato una semplice (??) applicazione con il programma dei talk e la mappa per arrivare al javaday, avendo gia sviluppato qualcosina con le API di Google (su windows mobile) sono rimasto sorpreso da quanto sia più facile fare qualunque cosa con l’sdk per Android.
    Dunque è vero se iPhone OS è pensato per l’utente finale, Android è fatto per facilitare la vita agli sviluppatori.
    Stupore e Meraviglia quando è comparso un G1 connesso via UMTS con una non precisata sim italiana!!

  • caccio’s blog

    Android: lo sbarco di Google nel pianeta Mobile Internet: uno dei talk più attesi (e più affollati) non ha deluso le aspettative, combinando tanto codice con un’analisi acuta delle potenzialità e delle prospettive di mercato per il sistema targato Google.

Eccoci sull’Android Market


La pubblicazione è stata immediata, il tempo di sfogliare l’Android Market nella categoria Reference:

dc_androidmarket.png

Evidentemente non c’è alcun filtro né alcuna verifica delle applicazioni. Ma è altrettanto evidente che questo scenario cambierà non appena ci saranno le applicazioni a pagamento…

Divina Commedia su Android


La Divina Commedia è stata la nostra (mia e di Roberto Fraboni) prima applicazione per iPhone e visto che, in un certo senso, ci ha portato fortuna, abbiamo replicato su Android:

android_dc1.jpg

android_dc2.jpg

L’applicazione in sé è piuttosto semplice, ma consente di toccare diversi aspetti della programmazione su una piattaforma mobile (qualunque essa sia): la gestione di una UI a componenti, l’uso di viste web, il caricamento di risorse, gestione eventi e così via.

Come nel caso dell’iPhone, si tratta di una piattaforma bella ricca, con tante funzionalità già disponibili nella libreria standard. Dal punto di vista del programmatore, l’architettura di Android appare più moderna e funzionale di quella dell’iPhone (in particolare, la suddivisione in Activity permette una grande modularità delle applicazioni); d’altro canto, però la user experience per l’utente sembra nettamente superiore sull’iPhone: la grafica è più piacevole (fosse anche solo nel disegno dei pulsanti) e il comportamento di componenti quali la webview, con l’effetto rimbalzo a fine vista, offrono un feeling nettamente superiore.

È presto per tirare le somme su Android, ma la prima impressione è che sia una piattaforma nata per programmatori prima che per gli utenti. L’esatto contrario dell’iPhone.

Il tempo, in questo periodo, è davvero tiranno; speriamo di riuscire a ritagliarci un po’ di ora per continuare la sperimentazione in quegli ambito dove, purtroppo, l’iPhone è ancora blindato…

Stay tuned! 🙂