Category: symbian labs

Symbian – Autostart di un applicazione su serie 9

symbian_logoTempo fa in questo post ho scritto come realizzare un programma starter per Symbian serie 8, cioè un launcher di un’applicazione al boot del cellulare. Oggi invece volevo farvi vedere l’analogo su serie 9, la nuova serie di Symbian installata su molti dei cellulari Nokia attualmente in commercio. Premesso che al momento del post precedente la documentazione sull’argomento non era molta, oggi invece esistono molti siti dove è possibile trovare informazioni sull’argomenti, a partire dallo wiki della nokia dove c’è praticamente tutto, per finire sulla pagine di google ;) .
Ma siccome le risorse in italiano non sono mai abbastanza allora volevo illustrare comunque la soluzione

A differenza della precedente versione con Symbian 9 è possibile realizzare l’autostart di un’applicazione usando il meccanismo dello "Startup Management List API" consultabile qui. L’idea di base di questa gestione consiste nel definire un file di risorse attribuendogli come nome l’UID del package che contiene l’applicazione. Tale file conterrà al suo interno alcuni dati di configurazione al fine di poter eseguire l’applicazione indicata all’avvio del programma. Vediamo in cosa consistono questi dati di configurazione:
 

1
2
3
4
5
6
#include <startupitem.rh> 
RESOURCE STARTUP_ITEM_INFO devme 
{ 
    executable_name = "!:\\sys\\bin\\devme.exe"; 
    recovery = EStartupItemExPolicyNone; 
}

Bene. Subito una piccola precisazione. Come vedete il valore di executable_name coincide con un path, quello di installazione dell’applicazione. Ha all’inizio un punto esclamativo che sta ad indicare la destinazione intesa come unità di installazione. Chi ha installato un’applicazione per symbian sa che ad un certo punto viene chiesto di indicare la destinazione su cui installare il programma, se la memoria del telefono o eventuali memorie esterne. Ecco il ! riferisce quella destinazione. Se si vuole, ad esempio, imporre l’installazione sulla memoria del telefono il ! verrà sostituito con C. 
Come vedete i dati di configurazione sono pochi e il commento viene da se.

Prossimo step consiste nell’aggiungere il riferimento del file appena creato all’interno del file di configurazione .mmp.

1
2
START RESOURCE ..\DATA\APP_UID.rss
END

Ed infine aggiungere le informazioni di configurazione nel file .pkg.

1
"$(EPOCROOT)Epoc32\data\z\private\101f875a\import\apps\APP_UID.rsc" -"c:\private\101f875a\import\[APP_UID].rsc"

Dove la prima parte della riga di configurazione indica il percorso delle SDK che si stanno utilizzando per la build corrente. Nel mio caso siccome sto usando Carbide come IDE posso utilizzare le variabili d’ambiente che mette a disposizione. Da notare che, mentre per un qualunque altro programma posso usare il ! per indicare la destinazione, per quanto riguarda l’autostart su serie 9 devo indicare C come destinazione…non solo, in aggiunta l’intero percorso dove vengono memorizzati questi tipi di file "C:\private\101f875a\import\".
Stay tuned, a presto.

NFC: tecnologia in un touch !

NFC2Pochi giorni fa, sul sito del corriere dell sera ho letto un articolo interessante, in cui il CEO della Nokia, ovvero il numero uno della compagnia finlandese Mr Kallasvuo, affermava che la competizione con gli attuali smartphone, Apple, Blackberry, etc, lì spingerà oltre la telefonia. In futuro si potranno effettuare pagamenti di bollette, acquisti in genere utilizzando il proprio telefonino.
E in effetti, poco tempo prima di leggere l’articolo, avevo esplorato il mondo dei nuovi telefonini Nokia che integrano una nuova tecnologia chiamata NFC.

Near Field Communication (NFC) è una tecnologia che fornisce connettività wireless bidirezionale a corto raggio (fino ad un massimo di 10 cm). La tecnologia NFC si è evoluta da una combinazione di identificazione senza contatto o RFID (Radio Frequency Identification – IDentificazione a Radio Frequenza) e altre tecnologie di connettività. NFC, contrariamente ai più semplici dispositivi RFID, permette una comunicazione bidirezionale: quando due apparecchi NFC (l’Initiator e il Target) vengono accostati entro un raggio di 4 cm, viene creata una rete peer-to-peer tra i due ed entrambi possono inviare e ricevere informazioni (fonte wikipedia). Al momento l’unico cellulare dotato di funzionalità NFC è il Nokia 6131.

Premesso che non mi interessa fare pubblicità del cellulare (non sono ancora sul libro paga della Nokia), al contrario voglio farvi vedere come la tecnologia (forse) cambierà i nostri modi di fare quelle cose che al momento sono scontate. Vediamo quali potrebbero essere:

paymenttouch-to-pay: avvicinando il cellulare sarà possibile utilizzarlo come una carta di credito. Le informazioni sensibili della carta sono memorizzate al suo interno in un elemento chiamato secure element. In sostanza funziona come una carta di credito senza contatto.E’ possibile visualizzare le informazioni informative classiche delle proprie transazioni.  

ticketingIl cellulare funziona come un biglietto senza il contatto. Basterà avvicinarlo ad un altro dispositivo capace di leggerlo per effettuare la validazione. Le informazioni sul biglietto o travel card sono memorizzate all’interno del secure element. Sarà ossibile ricaricare la propria travel card da dovunque ed in un qualunque momento e visionare la storia delle proprie validazioni.

serviceOvviamente non poteva mancare un servizio capace di far fruire di contenuti interattivi semplicemente avvicinando il cellulare ai dispositivi capaci di rendere tali servizi. Si pensi ad esempio a servizi di marketing interattivo che vengono attivati senza il contatto.

 

Ma c’è da fidarsi ?
E se dovessi perdere il cellulare ?
Ma soprattutto, cos’è questo secure element ?
Come ogni dispositivo tecnologico nuovo, secondo me, bisognerà aspettare prima di vedere una diffusione non dico capillare ma degna di nota. Non dimentichiamo, che in particolare il nostro paese, è un pò restio all’utilizzo di dispositivi o mezzi del genere per effettuare pagamenti. Molta gente preferisce il buon vecchio contante. Ciò nonostante sono fiducioso, dopo un’attenta campagna di marketing probabilmente qualcosa comincierà a muoversi. Chiaro che tutto dipende molto anche dalla diffusione dei cellulari che integrano funzionalità NFC, poco tempo fa la Sony Ericsson ha annunciato che dal 2010 tutti i suoi nuovi cellulari includeranno tali funzionalità, a dimostrazione che anche loro ci credono molto.
Il caso in cui si dovesse perdere il cellulare credo che sia molto simile al caso in cui si dovesse smarrire la carta di credito, in cui chiamando il numero verde si blocca la carta. Analogamente credo che chiamando il numero verde dell’operatore si provvederà al blocco del cellulare….sempre che ce né accorgiamo in tempo :P .

Infine vediamo in che modo i dati sensibili della carta di credito vengono memorizzati. Come già detto i dati vengono memorizzati all’interno del secure element un componente hardware che è integrato all’interno del cellulare. La dimensione della memoria dell’elemento è di 72Kb, in cui una certa dimensione è riservata per le applicazioni specifiche del cellulare. Mentre la memoria disponibile per le applicaizoni nella Java Card è di 65Kb.

secure

Il Secure Element è governato da regole e procedure di sicurezza molto stringenti. Si trova in uno stato SICURO dal momento dell’acquisto del cellulare. Ci sono 2 differenti chiavi di autenticazione per accedere al secure element, una per l’accesso alla Java Card e l’altra per l’accesso alla Mifare 4k. Java Card soddisfa requisiti di sicurezza molto alti derivanti direttamente dal life-cycle dell’elemento stesso. A partire dal silicio usato per la costruzione del chip, al sistema operativo, al processo di costruzione e trasferimento dei dati al suo interno. Quando si acquista un cellulare il secure element contiene solo il dato segreto della chiave specifica del dispositivo.

Bene per ora direi che può bastare. L’argomento mi interessa molto, procedo con le mie esplorazioni di implementazione di applicazioni di prova, così da condividerle con chi, di passaggio o non, si troverà sulle pagine del mio blog. A presto…yo.

WordPress Themes