Blog

Search by tag: Android

Ho il tempo per un post veloce, dopo aver passato un pomeriggio ad aggiornare la mia app myChatDroid for Facebook alla versione 4.3.0.

Per la precisione ho impiegato 1 ora tra l’aggiornamento del SDK di Facebook per Android (che rende deprecato il permesso “offline_access”), la traduzione dell’interfaccia in lingua italiana (prima era solo in inglese) e altri fix minori. Altre 3 ORE le ho passate per capire il motivo per cui, dopo l’invio del pacchetto aggiornato a Google Play (ex Android Market), l’aggiornamento sul dispositivo falliva restituendo un errore abbastanza assurdo, dal mio punto di vista:

File pacchetto non firmato correttamente


o in inglese…

Package file not signed correctly


… l’assurdità stava nel fatto che, al contrario di quanto sosteneva il mio dispositivo Android, il pacchetto APK era stato compilato e firmato utilizzando esattamente la stessa procedura, con lo stesso keystore di sempre e la stessa password. E, tra l’altro, il pacchetto era stato accettato dal pannello sviluppatori di Google Play, il quale invece, in caso di errore del certificato, dovrebbe impedire il caricamento del pacchetto APK.

Bene, dopo tanti sbattimenti ho scoperto che l’aggiornamento del JDK (Java Development Kit) da Sun JDK 6 a Oracle JDK 7 sul mio portatile ha cambiato il funzionamento di qualcosa, probabilmente del programma jarsigner, che a quanto pare firma i pacchetti in modo diverso dalla versione precedente, non permettendo ad Android di riconoscere la firma.

Il problema non riguarda soltanto gli aggiornamenti, per i quali poteva tradursi in un difetto di firma “diversa” da quella del pacchetto già installato, ma anche le nuove installazioni delle app… il tool di JDK 7 genera dei pacchetti non validi e quindi è completamente inutilizzabile!!

Credo che questo problema dovrebbe essere quanto meno documentato nel manuale di Android…

La sostituzione di JDK 7 con JDK 6 ha risolto il problema e, dopo aver ricompilato e ripubblicato myChatDroid, adesso l’app si riesce a scaricare correttamente su tutti i dispositivi :)

Un ringraziamento a @GeekMike per aver pubblicato il post che mi ha messo sulla giusta strada!

UPDATE: da un’indagine più approfondita è emerso che la causa del problema è il diverso algoritmo “digest” di default tra le JDK; Java 6 utilizza SHA1, mentre Java 7 utilizza SHA-256.
L’attuale SDK Android r18 non supporta ne’ questo algoritmo, ne’ l’impostazione di un algoritmo diverso da quello di default, ma a partire dalla r20 tutto ciò dovrebbe essere gestito correttamente. E’ già possibile scaricare una preview della r20 dal sito tools.android.com.

Link al bug tracker ufficiale


htc wildfire root cyanogenDopo un’attesa interminabile, è finalmente possibile bypassare i nuovi sistemi di sicurezza di HTC, introdotti con l’aggiornamento ad Android Froyo 2.2, ed ottenere i permessi di root sui terminali protetti da HBOOT 1.01, tra i quali Wildfire, Aria, Incredible S e Desire.

Il merito per questa “rivoluzione” va soprattutto al team AlphaRev, che con il software AlphaRev X è riuscito dove tutti si erano bloccati per mesi, esattamente da Dicembre 2010.

Questo ci da la possibilità di installare ROM personalizzate, abilitare l’overclocking e tanto altro… adesso possiamo diventare i veri padroni del nostro smartphone! :)

Personalmente, mi sono deciso a fare questo grande passo dopo aver capito che non ci sarebbero stati ulteriori aggiornamenti per il mio Wildfire da parte di HTC, la quale si giustifica dicendo che i terminali in questione non hanno un hardware sufficiente a reggere l’ultima versione di Android, nome in codice Gingerbread.
Beh, le possibili verità sono due: o i programmatori di HTC sono VERAMENTE scarsi (volendo credere alla buona fede di HTC), oppure la strategia commerciale dell’azienda cinese punta a non aggiornare i terminali per spingere gli utenti ad acquistarne altri più nuovi.

Le motivazioni per effettuare il rooting del proprio dispositivo possono essere molteplici:

  • La possibilità di installare una ROM personalizzata, magari senza l’interfaccia Sense, che riduce le prestazioni, la durata della batteria e lo spazio sulla memoria interna (io ho guadagnato ben 50MB!);
  • L’ overclocking, cioè la possibilità di spingere la CPU oltre i limiti imposti dal costruttore, che spesso sono limitazioni imposte senza criterio;
  • Aggiornamenti regolari: installando una ROM tra le più supportate, come CyanogenMod o WildPuzzle, non ci sarà mai la preoccupazione di rimanere con un software obsoleto, in quanto c’è una comunità di sviluppatori che lavora costantemente per portare le ultime novità sui nostri smartphone;
  • La libertà di accedere e modificare tutti i dati presenti sul dispositivo, che apre le possibilità per configurazioni personalizzate e soprattutto consente di effettuare un backup completo di dati e applicazioni, in modo da poterle ripristinare successivamente (ed essendoci un’ampia scelta di ROM da provare, il backup risulta utilissimo).

C’è da dire che la procedura descritta invalida la garanzia, quindi seguitela solo se ne siete consapevoli e decidete di assumervi tutti i rischi del caso.
NON PROVATECI SE NON SAPETE ESATTAMENTE QUELLO CHE STATE FACENDO!

ATTENZIONE! LA GUIDA CHE SEGUE E’ ORMAI VECCHIA!
Leggendo attentamente il post ed i commenti, e magari con un po’ di inventiva, probabilmente riuscirete ad effettuare tutti i passaggi anche con gli strumenti più “moderni” usciti di recente. Però se non siete esperti vi consiglio di cercare un’altra guida, altrimenti rischiate di fare qualche danno al vostro smartphone :)

Andiamo alla procedura, che presuppone un po’ di dimestichezza con l’utilizzo del computer e fa uso di diversi tool reperibili gratuitamente su Internet:

  1. Driver ADB (solo se si usa Windows);
  2. AlphaRev X;
  3. ClockworkMod Recovery;
  4. Una versione modificata di su;
  5. CyanogenMod 7.1-RC1 (per ora non c’è bisogno di scaricarla).

Il prerequisito fondamentale perchè la procedura possa essere avviata è il funzionamento dello smartphone in modalità Debug, attivabile navigando nel menù

Impostazioni > Applicazioni > Sviluppo > Debug USB
Per far sì che lo smartphone sia riconosciuto dal computer come un dispositivo Android, bisognerà installare i Driver ADB se si usa Windows, oppure impostare correttamente Linux (guida).

Un altro prerequisito è che la scheda SD inserita nel telefono sia formattata con il filesystem FAT32. La mia era formattata con FAT16, quindi ho dovuto effettuare un backup di tutti i file presenti sulla SD e riformattarla dal computer (suppongo non ci sia bisogno di spiegazioni).

Iniziamo!

htc wildfire root alpharevxIl primo tool, AlphaRev X, è ancora in versione beta, ma sul mio Wildfire ha funzionato perfettamente. Serve per eliminare la protezione del bootloader e fargli accettare pacchetti di aggiornamento non “firmati” da HTC… tecnicamente questo è il passaggio dalla modalità S-ON alla modalità S-OFF.
Per scaricare AlphaRev X è necessario seguire la procedura sul sito ufficiale, che prevede l’inserimento del numero seriale dello smartphone per ottenere una chiave di sicurezza (beta key); potete trovare questo codice sul retro della confezione (dove c’è scritto S/N: …).
Una volta scaricato l’archivio, basterà scompattarlo, avviare l’eseguibile e seguire la semplice procedura mostrata a video, che richiederà di inserire la chiave di sicurezza ottenuta precedentemente.
Andate avanti nella procedura… e dopo qualche istante di adrenalina, vi ritroverete con il telefono sbloccato (ma non ancora rootato)! :)

Dopo aver avviato Android, che al momento non presenterà cambiamenti evidenti, bisognerà collegarlo al computer e copiare sulla SD il file PC49IMG.zip.

Successivamente bisognerà spegnere lo smartphone e riaccenderlo tenendo premuto il tasto Volume-Giù ed il tasto di accensione. Questa combinazione di tasti avvierà il bootloader, che dopo qualche secondo vi chiederà se volete avviare l’aggiornamento utilizzando il file PC49IMG.zip. Rispondendo “Yes” sarà installata la ClockworkMod Recovery, indispensabile per installare qualsiasi cosa all’interno del filesystem dello smartphone.

Riavviate il telefono, rimuovete il file PC49IMG.zip dalla SD e copiatevi il file su-2.3.6.1-ef-signed.zip.

Di nuovo, spegnete il telefono e riavviatelo tenendo premuto il tasto Volume-Giù ed il tasto di accensione. Questa volta, quando si sarà avviato il bootloader, selezionate la voce RECOVERY premendo il tasto Volume-Giù e successivamente premete il tasto accensione per avviare ClockworkMod Recovery.
Una volta all’interno della modalità recovery, selezionare la voce “Install Zip from SDCard” (quì ci si muove con la trackpad ottica, non con i tasti Volume) e “Choose Zip from SD Card”, selezionando infine il file che avete copiato sulla SD, su-2.3.6.1-ef-signed.zip.

Alla fine dell’aggiornamento… il vostro smartphone sarà rootato! :)

Potete fermarvi qui, se volete semplicemente utilizzare Android con i permessi di root, oppure andate avanti, per sostituire il sistema operativo “stock” di HTC con una ROM personalizzata.

Qualora vogliate provare la CyanogenMod 7, o qualsiasi altra ROM, tenete in conto che perderete tutti i dati presenti sulla memoria interna dello smartphone, come i contatti (se non li avete sincronizzati con l’account Google), gli SMS e ovviamente tutte le applicazioni scaricate con i dati ad esse associati.
Per eliminare il problema, basta scaricare dal Market l’app Titanium Backup e creare un backup completo di app e dati sulla scheda SD, da ripristinare dopo aver installato la ROM.

Per installare CyanogenMod 7, il mio consiglio è quello di utilizzare la procedura più comoda, ovvero scaricare dal market l’app ROM Manager e, dopo averla avviata:

  1. aggiornare ClockworkMod Recovery alla versione 2.5.x (IMPORTANTE!);
  2. effettuare un backup della ROM attuale (indispensabile nel caso in cui si volesse tornare indietro);
  3. scaricare CyanogenMod 7.1-RC1 con il pacchetto aggiuntivo Google Apps (che include il Market);
  4. al momento dell’installazione della ROM, selezionare le opzioni “Backup Existing ROM” e “Wipe Data and Cache”;
  5. attendere il riavvio dello smartphone e l’installazione della ROM

Se tutto è andato per il verso giusto, non vi resta che godervi la vostra nuova esperienza con Android! :)

Dopo l’installazione della CyanogenMod 7 vi ritroverete con un’ampia scelta di applicazioni utilissime, scaricabili normalmente dal Market Android, ma che funzionano soltanto su dispositivi con i permessi di root sbloccati.

Ecco qualche esempio:

  • Titanium Backup, già citata ma importantissima;
  • BatteryCalibration, da far girare ogni volta che si cambia ROM per ricalibrare la batteria;
  • Market Enabler, per poter scaricare le applicazioni non disponibili nel mercato italiano (es. Pandora);
  • Orbot, per connettere il proprio smartphone alla rete Tor e navigare anonimamente e senza restrizioni.

Altre app molto utili, per chi era abituato alle app di HTC, potrebbero essere:

  • GO SMS Pro, per la messaggistica SMS/MMS;
  • OnePunch Notes, per avere i widget stile Post-It sul desktop;
  • QuickPic, come rimpiazzo alla Galleria predefinita di Android;
  • Simple Calendar Widget, per inserire sul desktop un gradevole widget con il calendario.

… e c’è ancora tanto altro da scoprire! Buon divertimento!! :)

Fonte: Android.AppStorm.


ExploroE’ stata da poco rilasciata la versione 2.0 dell’applicazione ufficiale di Exploro!

Exploro è un sistema multipiattaforma, che attraverso una facile e veloce applicazione mobile, un sito web ricco di notizie e approfondimenti e un circuito di totem touchscreen, offre informazioni e servizi geolocalizzati.

Effettuata la registrazione e scaricata gratuitamente l’applicazione sul proprio dispositivo mobile, l’utente visualizzerà la propria posizione geografica e tutte le informazioni sui luoghi e le attrazioni più e meno vicine. Attraverso un sistema di geolocalizzazione satellitare, l’utente potrà condividere con il proprio network, luoghi, eventi e promozioni del territorio selezionato, pubblicando commenti, recensioni e percorsi personalizzati sulla piattaforma Exploro.it.

Exploro permette agli utenti di consultare in tempo reale luoghi gli eventi e le offerte promossi dalle aziende e dagli enti del territorio che si desidera esplorare scambiando commenti e messaggi con gli altri membri della community.

A partire dalla versione 2.0, l’applicazione ufficiale per dispositivi Android è sviluppata dal sottoscritto, all’interno di RPS Consulting S.p.A.! :)

Ecco qualche schermata…

Exploro schermata 1 Exploro schermata 2 Exploro schermata 3

Per scaricare l’app, cliccate su uno dei seguenti link:


Il 24 maggio 2011 (domani), dalle 15 alle 18, presso l’ITIS Vittorio Emanuele III (Via Duca Della Verdura, 48 – Palermo) si svolgerà l’evento “Novità da Google I/O 2011”, organizzato dal Google Technology User Group (GTUG) di Palermo; durante questa occasione saranno illustrate le ultime tecnologie presentate da Google il 10 e l’11 maggio 2011 a San Francisco.

Il main speaker è il siciliano Claudio Cherubino, Developer Programs Engineer presso gli uffici di Google a Londra, lavora sulle Google Apps API e sul Google Apps Marketplace.

In precedenza ha lavorato come software developer, technology evangelist, community manager, consultant, technical translator ed ha contribuito a diversi progetti open-source, inclusi MySQL, PHP, Wordpress, Songbird e Project Voldemort.

La notiziona è che avrò anch’io un mio spazietto all’interno dell’evento, in cui presenterò le mie applicazioni Android! :)

Per i dettagli: Novità da Google I/O 2011.


CheckItOut! Google Checkout per Android
Android

Ho appena rilasciato la mia terza applicazione per Android! :)

CheckItOut! è nata da una mia personalissima esigenza: controllare le vendite delle mie app senza utilizzare lo scomodissimo sito di Google Checkout, per il quale non esiste ancora una versione mobile.

E siccome per me non c’è goduria più grande di fabbricare con le mie manine ciò che mi serve… detto fatto! Ecco CheckItOut!, l’applicazione per visualizzare l’elenco degli ordini e lo storico dei guadagni di Google Checkout in modo semplice e veloce!

CheckItOut! permette la visualizzazione delle seguenti sezioni di Google Checkout:

  • Ordini
  • Archivio
  • Pagamenti

Spero che la piacevole esperienza di BPOnline si possa ripetere, questa volta a livello mondiale: aspetto tanti commenti, suggerimenti o anche critiche (spero poche)!

Per scaricare CheckItOut! seguite uno di questi link:
Market (versione web)
Market (dispositivi Android)

E per finire… la pagina ufficiale di CheckItOut!.