Case History
Speciale Gprs

Speciale Umts
Speciale Wi-Fi
Newsletter
Area Riservata

Tim - Telecom W
Tlc Europa-Italia
Settore televisivo
MLS in Giappone
RFId
Push To Talk
Scenari 2003
Sms Premium
mobile data
Pricing Mms

Archivio 2002
Servizi più scelti
WiFi: prima fase
MIDP a Java Conf

MicroJava-J2ME
Vincoli sviluppo
Sondaggi
VoIP: disservizi
Previsioni MMS

 AREA RISERVATA

Sms Gateway
J2ME MIDP


Archivio 2001

Tim e-business
MobilityWorld

DoCoMO e 3G
Prezzi e sconti
Internet e Sim

Archivio 2000
Quanta Banda?
Servizi Ussd
Gprs di Omnitel
Nuovi operatori

Data Center
Arpu e 3G
M-cases
Localizzazione
Dossier Carrier
Wap: primi usi
Liste Sms
Costi i-mode
Voice-on-the-net

Carte servizi
Trend ARPU
Vams

Mobile pay

Portali wireless
Trading wireless
Bilancio OPI
In Giappone

Archivio 1999
PersonalNumber
Call Center Tim
Servizi&Carrier
Mobile data

Wap Tim
Omnitel
Tim
Urbane
Acquisizioni


RICERCHE ON-LINE
 

MicroJava per il mondo mobile

oDefinizioni

J2ME (Java 2 Mobile Edition) è un particolare subset di Java (deriva da Java 2 Standard Edition J2SE), ottimizzato e "leggero" per girare su cellulari e Pda. Si affianca quindi a J2EE - Java 2 Enterprise Edition, dedicato alle applicazioni server.

Consente di scaricare un'applicazione "MIDlet" di pochi kbyte (alcuni terminali permettono ad esempio applicazioni di max 10KB ciascuna, ed 50 applicazioni totali sul terminale): tali applicazioni vengono installate "in automatico" sul device e possono essere utilizzate anche off-line.

Oltre che per le limitazioni di memoria e di potenza di elaborazione, J2ME deve adattarsi anche a display particolarmente ridotti, ad esempio un piccolo telefono cellulare può disporre di 12.288 pixel (96 ×128), oppure un PDA di 20.000.

Il tutto si basa una Java Virtual Machine, presente nei terminali, che interpreta ed esegue l'applicazione. Nello schema seguente sono evidenziati in particolare le aree J2ME, che comprendono due livelli di configurazione (CDC e CLDC) ed inoltre il livello "Profile" MIDP.

schema Java - J2ME - MIDP
Schema delle edizioni Java [Tratto da the Basics of J2ME - Practice Hall PTR]

Le due configurazioni sono legate a differenti scenari, e comunque sono in forte evoluzione:

Connected Device Configuration (CDC)
Per dispositivi "things that you plug into a wall”, cioè collegati in rete, possibilmente always on e ad alta banda, ad es. i palmari
•512 kB minimo di memoria per l'applicazione Java (codice)
•256 kB minimo di memoria "runtime", allocata dall'applicazione
Su tali dispositivi può ad esempio essere incluso PersonalJava.


Connected Limited Device Configuration (CLDC)
Per dispositivi mobili, "things that you hold in your hand", caratterizzati da connettività wireless, ridotta banda e accesso discontinuo
•128 kB di memoria per Java
•32 kB di memoria "runtime"
•interfaccia utente ridotta
•bassi consumi, alimentazione a batteria

Il profilo MIDP - Mobile Information Device Profile - è una estensione, una serie di librerie che aiutano a sviluppare applicazioni tramite API predefinite per interfacciarsi con il terminale (modalità di input, gestione degli eventi, memoria persistente, timer, interfaccia video...).
Oltre a MIDP, sullo strato CLDC, si appoggiano anche KJava e EmbeddedJava.

pacmanKVM è la Java Virtual Machine che viene installata sui terminali, caratterizzata da un ridotto fabbisogno di memoria (40/80 kB + 20/40 kB dinamica) e ridotte potenze di elaborazione (processori 16bit a 25MHz).

I vantaggi rispetto a modalità preesistenti come il Wap e Sim Toolkit, risiedono in tre punti principali:

  • la possibilità di sfruttare le applicazioni in locale, residenti e funzionanti anche off-line
  • la capacità elaborativa
  • la flessibilità nell'installazione di nuove applicazioni

Lo sviluppo in Java, inoltre, è facilmente derivabile dallo sviluppo in C++, si possono cioè riconvertire risorse e applicazioni agevolmente. Inoltre l'interfacciamento con le piattaforme web - soprattutto se derivate da Apache, come IBM WebSphere e iAnyware - è pressochè immediato. Probabilmente è proprio su questa seconda parte che vi sono più possibilità di business, non tanto quindi sull'applicazione residente sul device.

oLimiti

Sebbene si tratti di uno standard aperto, non mancano alcune peculiarità che possono causare problemi di interoperatività tra terminali differenti. Siemens, ad esempio, ha definito una serie di librerie proprietarie che risiedono solo sui propri terminali, e che permettono di controllare alcune funzionalità del telefono (ad esempio la vibrazione).

Oltre alle librerie proprietarie legate al terminale, vi è la disponbilità di differenti Virtual Machine (gli interpreti delle applicazioni Java), se ne citano due a titolo di esempio:

  • Aplix JBlend, diffuso in Giappone, non solo sui telefonini ma anche su Pda e videocamere (Sony, Sharp, Toshiba, Casio...)
  • PersonalJava, legato alla piattaforma Symbian e appoggiato su CDC.

Le capacità multimediali sono attualmente limitate, infatti non è prevista ad esempio la possibilità di riprodurre file audio.
Al momento non è possibile, soprattuto per ragioni di sicurezza, permettere ad applicazioni MIDlet J2ME l'accesso alle informazioni sulla alla Sim o sui parametri di configurazione del terminale.

oApplicazioni

foglio elettronicoPer far fronte ad applicazioni che richiedono l'appoggio di uno o più database, esistono due possibilità:

  1. utilizzare il terminale come semplice interfaccia client - quindi come un browser - verso un sistema server remoto dove risiedono i dati. Uno dei vantaggi, in questo caso, è il ridotto impegno nell'aggiornamento del software sul device. Non risulta inoltre critica una evenutale rottura o sostituzione del terminale, per questo può essere adatta a personale ad elevata mobilità sul territorio, come trasportatori o addetti alla riparazioni.
  2. disporre di applicazioni - ad esempio su Pda - che lavorano su un database locale, sincronizzato con quello remoto. In questo caso sono disponibili versioni ridotte di DB, come l'UltraLight di Sybase o DB tool di IBM, che in pochi KB raccolgono le funzionalità principali. In questo caso è importante che la suite di sviluppo SDK preveda una serie di librerie pronte per l'interfacciamento con tali DB.

DoomApplicazioni meno complesse, per l'utilità personale e di taglio consumer, già si possono trovare in internet, in versione beta, free o shareware. Esempi di questi software in Java per mobile - rappresentati nelle varie figure presenti nel testo - sono:

  • applicazioni: gestione password, calcolatrice, gestione portafoglio, dieta, orologio internet, cronometro, orologio analogico, bioritmi, blocknotes, disegno...
  • networking: browser html, client telnet, gestione email...
  • grafica: screensaver, effetti vari, animazioni, frattali...
  • giochi: scacchi, pacman, dama, arkanoid, F1..
  • utility: test del sistema (memoria, versione), tastiera a video, test dei colori...

Motorola AccomplioTerminali

I produttori in prima linea sono: Casio, Danger, Mitsubishi, Fujitsu, nec, Matsushita/Panasonic, Sony, Hitachi, Toshiba, Kyocera, LG, Motorola (Accompli e prossimamente anche V60 e V66), Nokia (con il 7650 e il Communicator), Samsung, Sendo (con lo Z100) , Siemens (modello SL45).

oReti

Le reti di trasporto sono le più varie: GSM, GPRS, CDMA, CDMA ONE, CDMA2000 1X, PDC, IDEN, W-CDMA.

oLink di approfondimento

-> Consulta anche: i vincoli per le applicazioni mobile



Desidero rimanere aggiornato e approfondire questi argomenti

Voglio segnalare un link su questi temi:

Voglio esprimere un commento:

Nome:
Cognome:
Società:
e-mail:

Nel caso di problemi nell'invio delle risposte, è possibile inviarle via e-mail (copia e incolla) all'indirizzo: info@pec-forum.com. Tutti i dati verranno trattati nel rispetto della legge 675/96 sulla tutela dei dati personali: non saranno comunicati o diffusi a terzi. Potrai inoltre richiederne l'aggiornamento o la cancellazione scrivendo a: info@pec-forum.com