Opera Mini per Android

Android Opera è un browser web prodotto da Opera Software, disponibile sia per ambienti desktop che per terminali “mobile” con la versione denominata mini.


Con la nuova release di Opera mini, é stato aggiunto il supporto per il sistema operativo Android.
Opera è nato da un progetto di ricerca della compagnia telefonica norvegese Telenor e si è separato da essa con la nascita, nel 1995, della società Opera Software dedicata esclusivamente al suo sviluppo.
Opera Mini promette di velocizzare il download delle pagine web e di rendere più entusiasmante la navigazione tramite funzionalità appositamente studiate per gli schermi di ridotte dimensioni.
Il browser per aumentare la velocità di download delle pagine utilizza una tecnica sofisticata di compressione, i siti piu’ utilizzati vengono infatti compressi da appositi server remote e serviti successivamente al browser che ne fà richiesta.

Nel video é possibile vedere il browser in azione sul G1, viene inoltre mostrato come scaricare il software utilizzando Android Market(lo store di casa google)

Share/Save/Bookmark

Android G1 e il multi-touch segreto

G1 é capace di gestire l’input multi-touch, i fans IPhone rimprovono spesso al G1 questo limite a questo dispositivo. Il multi-touch è una tecnologia di schermo tattile che rappresenta una evoluzione di quella touch-screen. Si differenzia da essa per il fatto che è sensibile al tocco in più punti diversi della superficie contemporaneamente(wikipedia).

Un abile sviluppatore è riuscito a scovare alcune righe di codice commentato nel driver del touch-screen del G1, lo sviluppatore una volta scommentato il codice ha ricompilato il kernel rimpiazzando il file boot.img

Nel video è possibile vedere il multi-touch in azione sul terminale Android G1.

HTC nelle specifiche del terminale, indica che il G1 ha touch-screen singolo, alcune fonti attribuiscono questa auto-limitazione dovuta al brevetto di cui Apple detiene i diritti.

Per chi volesse maggiori dettagli tecnici, consiglio la lettura di questo post.

Share/Save/Bookmark

Android database

Android utilizza SQLite come database, SQLite è una libreria che implementa un database engine transazionale, questo database ha una serie di caratteristiche che lo rendono particolarmente adatto all’utilizzo su dispositivi di tipo “embedded”.

Self-contained
si definisce self-contained in quanto richiede un supporto minimale alle librerie esterne e al sistema operativo

servless

Generalmente un database tradizionale è implementato come un processo server che viene utilizzato tipicamente tramite un protocollo come TCP/IP, SQLite non lavora in questo modo, il processo utilizzatore del servizio accede direttamente sia in scrittura che in lettura ai file presenti sul disco, non esiste infatti un processo intermediario.

Questa modalità operativa consente di utilizzare questo database senza la necessità di installare e configurare nessun processo sul sistema operativo ospitante, il rovescio della medaglia è quello di avere un minor controllo in generale sulle attività dell’utilizzatore(client) e una minore sicurezza in termini di robustezza e corruzione dei dati

zero-configuration
SQLite come dicevamo non richiede una fase d’installazione ne una procedura di setup

Share/Save/Bookmark

Android, modellare il layout

DroidDraw è un tool(gpl2) per costruire l’interfaccia grafica di Android, un progetto molto interessante che in soli 2 mesi ha avuto più di 6000 download.

Disegnata l’interfaccia è possibile generare l’XML necessario da utilizzare nel progetto Android.

Il tool eseguibile anche tramite Applet, consente di selezionare i vari componenti e posizionarli sopra il canvas.

Il tutorial fornisce alcuni esempi ed è una valida guida per comprendere lo sviluppo della GUI di Android.

Share/Save/Bookmark

Android anche per il mercato italiano !!

La notizia è ufficiale!! Android Mobile è disponibile sullo smartphone open source OpenMoko.

OpenMoko di FreeRunner è un smart phone con touch screen basato su sistema operativo GNU/Linux, anche se esteticamente discutibile vanta un hardware di tutto rispetto, di seguito alcune caratteristiche:

OpenMoko’s specifications:

  • 400/500 MHz Samsung 2442B Processor/SOC
  • 256MB NAND Flash MCP package.
  • 128 MB SDRAM total, 64 MB CPU internal, 64 MB external
  • Topploy VGA, 16 bit color depth, 480 x 640 pixels, 2.84″ diagonal screen size
  • WiFi 802.11 b/g
  • A-GPS or GPS
  • GSM/GPRS
  • 3 axis sensing accelerometer
  • Touch screen over LCD is primary data entry mechanism
  • Bluetooth (CSR BC4 or later solutions)
  • Weight: ~133 grams with battery.
  • 4-in-1 laser pen
  • 512MB microSD Card (SanDisk/Transcend)
  • 1x USB cable Standard A to mini-B connector
  • 120.7 x 62.0 x 18.5 mm (4.752 x 2.441 x 0.728 inch)

Il prezzo indicativo è di circa 399$ per il momento lo smartphone è acquistabile solamente online.

Interessante l’articolo di luglio 2008 del Corriere, unico neo da segnalare per il momento è che la wi-fi non sembra funzionare con questa versione(rivista) di Android.

Share/Save/Bookmark

Sviluppare in Android- Seconda parte

Nel precedente articolo abbiamo visto come definire il menu, procediamo con il codice necessario per agganciare delle azioni alle diverse voci del menu precedentemente creato.
Sempre nella classe LunarLander.java è presente un altro metodo onOptionsItemSelected(MenuItem item)
questo metodo ridefinito dalla classe padre Activity viene richiamato quando l’utente seleziona una qualsiasi voce del menu.
Vediamo in dettaglio il comportamento della prima voce di menu’

switch (item.getItemId()) {
case MENU_START:
mLunarThread.doStart();
return true;

tramite uno switch sull’id selezionato, viene richiamata l’azione corrispondente, in questo caso viene avviato il gioco, vedremo più avanti il comportamento in dettaglio, per il momento procediamo analizzando il primo metodo richiamato della classe LunarLander quando l’activity viene creata, stiamo parlando del metodo
onCreate(Bundle savedInstanceState).


Il primo metodo(requestWindowFeature) serve a disabilitare il titolo della finestra.
Il secondo metodo setContentView, indica al sistema di utilizzare il layout definito a livello XML, anche in questo caso la risorsa viene recuperata con la classe “speciale” R.
Il Layout
Android ha la possibilità di sfruttare due modalità per la definizione dell’interfaccia, la prima mediante codice java, in uno stile simile alle librerie Swing di Java Sdk e l’altro decisamente più semplice ed intuitivo mediante tag xml.


Nella definizione XML del Layout, possiamo notare un ViewGroup(FrameLayout ) che definisce
il contenitore principale degli elementi grafici. Il contenitore principale può al suo interno contenere altri contenitori o elementi grafici.
Per assegnare un ID ad un elemento si utilizza la sintassi @+id/nome_del_id,
questo ID assegnato sarà recuperabile successivamente tramite la classe R.
In questo caso specifico, viene utilizzata una classe LunarView per la rappresentazione a video del gioco vero e proprio.
Tornando al metodo onCreate, tramite la chiamata R.id.lunar, siamo in grado di prendere il riferimento alla classe LunarView.
Successivamente prendiamo dalla classe il riferimento
al thread che si occuperà dell’esecuzione del gioco, settiamo infine uno stato al thread.

Tornando al menu vediamo che per far partire il gioco viene
richiamata una funzione proprio su questo thread recuperato(mLunarThread.doStart();)

Share/Save/Bookmark