Skip to content
Archive of posts filed under the Mobile category.

Consultare le mappe di Google Maps offline su Android

La possibilita’ di connettere gli smartphone alla Rete in totale mobilita’ rende i piu’ disparati contenuti accessibili quando ci servono, senza aver pianificato di farlo. Caso tipico le mappe di Google Maps, Yahoo Maps, Microsoft Bing e altri servizi simili. Quando pero’ andiamo all’estero o per qualche motivo siamo senza connessione, sono davvero pochissime le applicazioni che permettono di salvare i dati per una consultazione offline… Ma a tutto esiste rimedio.

Prendiamo ad esempio Big Planet Tracks, un programma che permette di accedere alla cartografia di Google Maps e registrare un percorso. Tra le opzioni c’e’ quella di salvare le mappe scaricate in un database locale. Con un po’ di pazienza, si potrebbe navigare in tutta la zona di nosto interesse, nei vari livelli di zoom e rendere queste informazioni accessibili anche offline. Ma se, ad esempio, ci si vuole portar dietro la cartografia dell’intera Corsica per una passeggiata in mezzo al deserto degli Agriates?

Proprio a questo scopo e’ stato creato un alto programma, Mobile Atlas Creator (conosciuto anche come TrekBuddy Atlas Creator). Un software open-source, scritto in Java, da eseguire sul “computer di casa”. Selezionando una zona e dei livelli di zoom, questo scarichera’ per noi tutte le mappe necessarie per poi salvarne in un formato compatibile con diversi applicativi che supportano la navigazione offline, come il sopracitato Big Planet Tracks e piu’ di altri 20 tra Android, Windows Mobile e navigatori GPS.

I passi dettagliati da seguire sono riportati in questa pagina wiki:

  1. Install the Java Runtime Environment (JRE or JDK, at least JRE v1.6.0_14 or later).
  2. Download and decompress Mobile_Atlas_Creator_1.7_SQLite.zip (Official Edition + SQLite Libs + Settings for “BigPlanet SQLite” format).
  3. Copy the libsqlite_jni corresponding to your OS platform to the MOBAC folder (which Mobile_Atlas_Creator.jar is located).
  4. Double click the Mobile Atlas Creator.exe on Windows (Run start.sh on Linux).
  5. Use the left mouse button to select the download area and right mouse button to move the map after executing the MOBAC.
  6. Click the "Add selection" button after selecting the multiple "Zoom Levels" of the map.
  7. Confirm the "Map Source" to be "Google Maps" (default value, you can choose another types).
  8. Confirm the "Format" of "Atlas settings" to be "BigPlanet SQLite" (default value).
  9. Start downloading the map after clicking the "Create atlas" button.
  10. After the download is finished, please click the "Open Atlas Folder" button to get the database named BigPlanet_maps.sqlitedb.
  11. Copy BigPlanet_maps.sqlitedb to Android phone’s SD card whose folder is "/sdcard/RMaps/maps/BigPlanetTracks.sqlitedb" (You can use any filename as long as you use the same filename extension above).
  12. Make sure to enable Android phone’s My Location setting (check "Use wireless networks" and/or "Use GPS satellites").
  13. Finally, please execute Big Planet Tracks or RMaps, the map will be moving to your location (if you successfully receive the latitude and longitude coordinates from Internet or GPS satellites).

Continue reading ‘Consultare le mappe di Google Maps offline su Android’ »

Windows Phone 7, impressioni a caldo

Dopo un primo contatto al Mobile World Congress e qualche sporadica apparizione in vari eventi milanesi, ieri sera alla Wp7 Pizza ho finalmente tenuto tra le mani un device con Windows Phone 7, il nuovo sistema operativo di casa Microsoft. Quelle che seguono sono le mie impressioni a caldo di una ventina di minuti di utilizzo, con una doverosa precisazione: il sistema provato era una versione intermedia non definitiva, quindi da qui alla data ufficiale di rilascio potrebbe cambiare potenzialmente tutto.

Partiamo dall’hardware: confrontando il primo device equipaggiato con WP7, un telefono LG, con il nuovo Samsung Taylor, tutta la user experience e’ migliorata: schermo dai colori piu’ vivi, notevole sensibilita’ al tocco e una maggiore responsivita’ dell’ambiente. Fattori che la rendono paragonabile con quella del Nexus One. Non male, dato che sul primo modello era davvero a livelli medio-bassi! Non sono stato in grado, ovviamente, di stabilire la durata della batteria, ma suppongo rientrera’ nella media degli altri smartphone, attorno alla giornata con un utilizzo non intensivo.

Per quanto riguarda la parte software, segnalo la recensione di Engadget che copre molto di questo comparto, lasciando qui spazio solo alle mie impressioni. Partendo dall’Homescreen, ho notato che modularita’ e alta capacita’ di personalizzazione hanno la loro comodita’, sopratutto quando si hanno dei contatti o delle applicazioni con cui si interagisce piu’ spesso. Non so se oltre al calendario ed email in arrivo altre informazioni potranno essere rese disponibili direttamente nella schermata di stand-by, ma questa “accessibilita’ al primo sguardo” non e’ male per niente.

Tra le applicazioni di sistema il Calendario mi sembra la piu’ ben fatta, anche rispetto alla concorrenza: una visione mensile e giornaliera degli appuntamenti, con quest’ultima che, grazie allo scrolling verticale, passa ai giorni precedenti e successivi senza interruzioni, permettendo un rapido ed efficace colpo d’occhio sugli impegni che ci aspettano. Possibilita’ di aggiungere piu’ calendari (Google, Exchange ecc), ognugno con un colore diverso. Non ho trovato l’agenda settimanale, ma per quanto dicevo prima, non ne ho sentito minimamente la mancanza.

Apprezzabile il comparto riservato alla Gestione della posta. Diverse viste predefinite, una con tutte le ultime email, una solo con le email ancora da leggere. Non so se e’ possibile definire dei filtri ed associarli poi ad una vista, ad esempio tutte le email ricevute e spedite tra ieri ed oggi, oppure le conversazioni con un certo contatto. Anche qui posso gestire piu’ account di posta: Exchange, Hotmail, Google, oppure un generico server di cui specificare i parametri di connessione.

Continue reading ‘Windows Phone 7, impressioni a caldo’ »

Android free menu icons

Ho faticato parecchio per trovare icone aggiuntive da usare con i menu’ di Android. Ecco una selezione di quello che alla fine ho tenuto.


Dezinerfolio ha rilasciato questo pack con 30 icone in PSD, scaricabile direttamente dal loro post.

Androidicons ha creato altre 30 icone, rilasciandole con licenza Creative Commons Attribution-Share Alike.

Continue reading ‘Android free menu icons’ »

Android e Skype, matrimonio impossibile?

Skype e Android. Sembra impossibile, ma all’oggi non esiste un client Skype per questa piattaforma. Nonostante ci siano quelli ufficiali per iPhone, Symbian e Windows Mobile, il sistema operativo made-in-Google sembra proprio essere stato dimenticato. Fino a poco tempo fa, se ci si accontentava di chattare e chiamare solo i propri contatti (quindi niente SkypeOut), si poteva usare l’ottimo Fring. Ma poi Skype ha deciso che questa cosa non le garbava piu’, evitando di proporre soluzioni alternative.

Unica eccezione per alcuni telefoni dell’operatore Verizon, in cui c’e’ preinstallato il client Skype Mobile, ma con un funzionamento ben diverso rispetto a quello a cui siamo abituati. Direttamente dal forum ufficiale:
“There IS a Skype app for Android but it is strictly available to select Verizon Wireless phones and only on Verizon service and only through Verizon’s voice connection, not data. It won’t even run if you aren’t on Verizon’s network should you manage to get the app installed anyway.”
Quindi niente chiamate col wi-fi, niente chiamate su connessione 3G, ma solo attraverso una strana connessione supportata da Verizon e Hutchinson ’3′ in alcuni paesi europei. Ammettendo di riuscire ad avere il pacchetto di installazione, risulta comunque inutilizzabile fuori da questi vincoli!

Inutile dire che nei forum gli utenti Android sono molto piu’ che amareggiati, e anche io personalmente non riesco a trovare una motivazione plausibile per una tale mancanza. Ormai sono due anni che Android e’ in giro, la sua diffusione cresce sempre di piu’, cosa c’e’ che mi sfugge? Una soluzione intermedia, comunque, esiste e si chiama Skype Lite per Android.

Continue reading ‘Android e Skype, matrimonio impossibile?’ »

Comparazione performance iPhone 2G/3G/3GS/4

Lungi dall’essere esaustivo, questo interessante video mette a confronto la velocita’ di tutti i modelli di iPhone fino ad oggi prodotti.

La mia conclusione personale: se mai dovessi comprare un iPhone, mi prenderei un 3Gs di seconda mano, dato che la differenza negli esempi visti non sembra cosi’ sostanziale rispetto al 4, mentre il costo assolutamente si: 20% in meno di performance, 50% in menu sul prezzo ;)

Avevo qualche dubbio sulle prestazioni, pensando che potessero dipendere dal tipo di sistema operativo installato sui device, ma e’ stato fugato subito da un commento degli autori del video: “The original iPhone was running 3.1.3, the 3G 3.1.2, the 3GS 4.01 and the iPhone4 was running 4.0. Running 4.0 on the 3G would have most likely made the result even worse.”

Android e Intent filters per registrare un’applicazione tra quelle per mandare SMS

Un aspetto che mi piace molto della piattaforma Android e’ quello degli Intent filters: un metodo rapido e veloce per esporre al resto del sistema cosa e’ in grado di fare un’applicazione, i tipi di dati che e’ in grado di gestire e le azioni che e’ in grado di compiere. Oltre a quelli definibili dall’utente, ce ne sono tutta una serie che riguardano operazioni standard, come spedire una mail, visualizzare un’immagine, aprire un link ecc. Si ottiene quindi un modo facile e veloce per aggiungere “nuovi pezzi” al sistema oppure estendere quelli esistenti con qualcosa di personalizzato, magari anche migliore, in maniera trasparente all’utente finale e molto facile per il programmatore, che non deve far altro che specificare nel Manifest.xml dell’applicazione quali intent filters le singole activity sono in grado di gestire.

Ad esempio, per fare in modo che la propria applicazione appaia tra la lista di quelle disponibili per mandare un sms oppure per condividere del testo, ecco i passi da eseguire.

Poniamo che l’activity ActSendSms sia in grado di mandare sms. Va aggiunto nel Manifest.xml questo blocco di codice:

<!-- Defines also the app name in the Android menu -->
<activity
android:name="it.rainbowbreeze.smsforfree.ui.ActSendSms"
android:label="@string/common_appName"
>
<!-- Sends sms for someone -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.SENDTO" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
</intent-filter>

<!-- Sends text to someone -->
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>

Nei commenti e’ indicato a cosa servono nello specifico i due filtri.

Continue reading ‘Android e Intent filters per registrare un’applicazione tra quelle per mandare SMS’ »

Sviluppo per mobile, l’evento che ora esiste!

E’ passato giusto un mese da quando, con un post, palesavo la mia visione e la mia voglia di organizzare in Italia un evento dedicato allo sviluppo in campo mobile. Ebbene, ora quell’evento e’ realta’: Si chiama Whymca Spring 2010 e si terra’ il 21 Maggio 2010, Politecnico di Milano, Campus Bovisa!

Non pensavo di scatenare tante reazioni ed interesse ad un’iniziativa del genere. Si vede che i tempi erano ancora piu’ pronti di quello che pensavo. E non posso far altro che ringraziare tutte le persone che hanno da subito offerto la loro disponibilita’ ad aiutarmi in questa impresa un po’ pazza, se non altro perche’ mai e’ stato fatto qualcosa di simile in Italia. Scusatemi se in questo mese non mi sono fatto piu’ sentire, ma volevo farlo con qualcosa di concreto tra le mani, non solo con chiacchiere e distintivo… ;)

Ho avuto la fortuna di ricevere una mano dai ragazzi (Andrea, Danilo, Gabriele, Marco, Paolo, Riccardo)  che a Dicembre organizzarono l’evento “Whymca  – il barcamp sulle Mobile Community” a Cremona. Quell’occasione era piu’ orientata all’aspetto marketing/commeciale del mondo mobile, ma non sono mancati buoni spunti e, soprattutto, e’ stata la miccia scatenante per arrivare a tutto questo. Stavolta l’evento sara’ totalmente per sviluppatori, ci saranno palate di codice da masticare, ho gia’ in mano delle proposte per qualche sessione troooopo interessante, e spero che i contributi arrivano copiosi anche dal Call for Paper. E poi speriamo che il tempo sia clemente con noi e si possa organizzare qualche bella partita a frisbee nel campus dell’uni, perche’ non c’e’ community senza qualche sana risata condivisa. Gestiremo le sessioni in modo da garantire sia un percorso per principianti, con qualcosa di introduttivo un po’ su tutto, sia la presenza di argomenti intermedi-avanzati per tornare a casa soddisfatti del tempo speso. E non trascureremo neanche gli openspace,  per le idee dell’ultimo secondo.

La scelta della data non e’ stata facile: Maggio e’ un mese gia’ denso e ricco di eventi, uno a settimana praticamente: si inizia con il 5-6 con Better Software, dove tra l’altro saro’ blogger ufficiale, poi abbiamo il 13-14-15 il phpDay, poi ci siamo poi il 21 con il Whymca Spring 2010 – Mobile Developer Conference e si continua con il Frontier of Interaction il 3-4 di Giugno. Pero’ abbiamo scelto cosi’, cogliendo anche quella ventata di interesse da parte di grandi nomi per gli sviluppatori mobile, come mi sono reso conto ritornando dall’MWC.

Continue reading ‘Sviluppo per mobile, l’evento che ora esiste!’ »

Le mie riflessioni sul Mobile World Congress

(Riprendo un post che ho scritto per OneMobile, ampliandone pero’ alcune parti)

Quest’anno ho avuto la fortuna di poter partecipare al Mobile World Congress, evento per il mondo del mobile che ritengo il piu’ importante dell’emisfero occidentale. Riporto qualche considerazione a caldo fatta durante il viaggio di ritorno, sempre ottimo strumento per fermarsi e tirare qualche linea.

Una delle cose che mi ha maggiormente colpito e’ stata una nuova forma di dualismo marchio – piattaforma emersa da molti degli stand di operatori e produttori di dispositivi: Samsung – WaveGSMA – OpenAPI, Sony Ericsson – Developer World, Nokia+Intel – MeeGo, Vodafone – 360, solo per citare i primi che mi vengono in mente. Lo spazio espositivo del “big player” era quasi totalmente occupato da diversi showcase di prodotti realizzati da aziende terze mediante l’uso della loro piattaforma. Messaggistica integrati nella rubrica, servizi di remote banking, mobile social gaming e giochi 3d, applicazioni di social geotagging, nuovi concept di interfacce, client per l’integrazione con altri servizi che sfruttano le peculiarita’ del telefono. Strumenti per fare un po’ di tutto insomma.
Ritengo che la spiegazione di questo orientamento e’ nella ricerca di nuovi clienti e sottrazione di quelli dei competitor non piu’ solo grazie ai telefoni, alle tariffe, ai servizi offerti o al massimo alla possibilita’ di leggerci la posta, ma grazie alle applicazioni. Oggi la domanda “cosa ci posso fare” inizia ad acquisire il suo peso in una scelta che prima era quasi esclusivamente basata sul gusto estetico personale o sul costo della tariffa. Per questo sia i costruttori che gli operatori hanno interesse ad offrire piattaforme di sviluppo che possano fornire i mattoni per costruire killer application procacciatrici di clienti. Clienti che, una volta entrati in questo wallet garden fatto di tecnologie non interoperabili tra loro, difficilmente ne usciranno.
Se i riflettori sono finalmente puntati su chi sviluppa, la situazione per quest’ultimi non poteva essere peggiore: tante piattaforme, che fanno cose molto simili ma che richiedono ognuna uno sviluppo particolare e personalizzato, a partire dal linguaggio e dalle librerie da usare: C++, JavaScript, Java o altro. In pratica, riscrivere la stessa applicazione quasi da capo per ogni sistema su cui si vuol far girare. Se prima l’interoperabilita’ poteva essere una speranza, dato che nell’immobilita’ generale qualcosa di positivo sarebbe anche potuto succedere, ora che tutti si muovono in senso opposto, credo che non sara’ mai raggiungibile.

Davvero carini i tablet presenti nello stand NVidia, piccoli e “stilosi” dispositivi basati sulla nuova scheda Tegra e equipaggiati con Android. Un ampio schermo touchscreen (dai 10 pollici in su), supporto HDMI, automonia di diverse ore in modalita’ riproduzione video, spazio a tutti i tipi di connettivita’ possibile. Anni fa Microsoft lancio’ Origami, ma il costo proibitivo dei device, un sistema operativo non adatto all’uso touch e, soprattutto, una cultura ancora non pronta, ne decretarono il fallimento. A qualche anno di distanza, dopo gli smartphone, dopo i netbook, dopo i riproduttori mp3 portatili, dopo i mediacenter, dopo le interfacce touch, dopo un uso di Internet e del mezzo informatico sempre piu’ “popolare” e ormai lontano dal solo ambito tecnico/lavorativo, mi sembra che finalmente ci siano tutti gli ingredienti per questo nuovo tipo di fruizione piu’ “da divano” e quasi per nulla “davanti alla scrivania” dell’informatica. Azzardo una previsione che vede, nel giro di qualche anno, molti di questi tablet rimpiazzare i computer in tutte quelle case dove quest’ultimo non verra’ usato per lavoro o per passione, ma dove saranno predominanti email, navigazione, multimedia e altre applicazioni di questo nuovo mondo. Senza neanche il problema di uno schermo piccolo: bastera’ attaccare il proprio tablet alla televisione e usarlo come touchpad e tastiera, non avendo bisogno di altro. Questa volta il marketing Apple dovra’ fare miracoli per promuovere un sistema cosi’ chiuso e proprietario con l’iPad.

Android, dopo di anni di promesse, finalmente ha saputo trovare il suo spazio. Presente in molti nuovi smartphone, tv-box, tablet e altri dispositivi in tantissimi stand, soprattutto in quello HTC dove il Desire, antagonista del Nexus One, faceva bella mostra di se’. Seppur tutte, ma proprio tutte, le applicazioni che ho visto giravano anche su iPhone, il secondo piu’ ampio supporto era fornito al sistema operativo della Open Handset Alliance. Diversi gli application store alternativi all’Android Market, mentre nuovi concept phone erano mossi per la maggior parte da un cuore Android. Se l’annuncio della patnership tra Nokia e Intel con la creazione di MeeGo non portera’ con se’ qualcosa di rivoluzionario, temo che ormai i giochi siano fatti e non ci sara’ piu’ spazio per la diffusione su larga scala di altri sistemi operativi nel mondo del mobile.

Continue reading ‘Le mie riflessioni sul Mobile World Congress’ »

Sviluppo per mobile, l’evento che vorrei, e che tentero’ di fare

E’ un po’ che giro e partecipo ad eventi divulgativi legati allo sviluppo: BarCamp, LinuxDay, OverTheAir, UGIAlt.Net Conf, JavaDay, AgileDay, i workshop del DotNetMarche e diversi altri. Mosso dalla passione che ho per lo sviluppo sul mobile e grazie all’esperienza e ai contatti raccolti in queste occasioni, ho deciso di lanciare a me stesso una sfida: organizzare, entro l’autunno-inverno del 2010, un evento sul mondo del mobile dedicato agli sviluppatori.

Per prima cosa pero’, occorre definire un’idea, un taglio con cui plasmarlo. Raccolgo quindi in questo post le mie personali riflessioni sul come lo vorrei, allo scopo di confrontarsi per arricchire questo pensiero e trovare un orientamento finale da perseguire.

  1. I contenuti dell’evento saranno prodotti da tecnici del settore e rivolti ad altri tecnici. Ci sara’ spazio per tutti i livelli, dall’introduttivo all’avanzato.
  2. I topic verteranno su Android, iPhone, Blackberry, Symbian, Windows Phone, Maemo, Java ME e quanto altro gli speaker vorranno proporre, relativamente al mondo dello sviluppo per mobile.
  3. Vince la creativita’: occasioni come questa sono soprattutto una raccolta di spunti da cogliere e riportarsi a casa. Sfruttare la serendipita’, non temerla. Sara’ poi l’innato spirito di curiosita’ insito in ogni sviluppatore a fare il resto…
  4. Spazio al networking: sessioni parallele di almeno un’ora che lascino tempo per domande e confronti sul tema trattato e almeno un paio di openspace. Immagino che, tra i partecipanti, molti si porranno in atteggiamento di ascolto, ma se volessero interagire, devono avere il tempo e il modo per farlo. Non siamo in molti in Italia a dedicarsi a questo campo, se non abbiamo modo di conoscerci e scambiare 2 chiacchiere su una materia che ci appassiona, perderemmo sicuramente un’importante occasione di formazione personale e professionale.
  5. Tutti gli interventi saranno registrati e i video pubblicati online per future consultazioni. Track parallele possono portare alla sovrapposizione di contenuti interessanti, e i partecipanti non devono preoccuparsi di perdere qualcosa se hanno piu’ piacere nel seguire un’altra sessione o nel prendere parte ad un’openspace.
  6. La partecipazione all’evento e’ gratuita, e la raccolta della maggior parte dei fondi verra’ fatta attraverso donazioni volontarie. Niente e’ gratis e le spese per questi eventi non sono irrisorie, ma l’AgileDay e la UGIAlt.Net Conf hanno confermato che con un piccolo sforzo da parte di ognuno si possono ottenere ottimi risultati per tutti.
  7. Continue reading ‘Sviluppo per mobile, l’evento che vorrei, e che tentero’ di fare’ »

Native Android Applications Development alla UgiALT.NET Conf

Giornata intensa e ricca quella della V UgiALT.Net Conference, che mi ha anche visto tra gli speaker a parlare un po’ di Android e, come ha detto Diego, a sentirmi un po’ una mosca bianca con una macchina equipaggiata con GNU/Linux + Eclipse in mezzo ai tanti Windows e Mac…

Ecco le slide dell’intervento che ho fatto:

Continue reading ‘Native Android Applications Development alla UgiALT.NET Conf’ »