mercredi 12 décembre 2007

eclipse netbeans et j2me


Parlons un peu des outils de développement sous Windows, on peut citer deux environnements de développement Netbeans et Eclipse, avant de se pencher sur les outils de développement, nous allons nous intéresser aux pré-requis nécessaires pour commencer tout développement J2ME.

I. Pré-requis:

1. JDK:


Veillez d'abord à bien installé le dernier JDK (Java Development Kit) de chez sun. http://java.sun.com/j2se/1.4.2/download.html

Télécharger le SDK, non le JRE.

2. Java Wireless Toolkit :

Le java wireless toolkit de chez sun offre quelques outils rudimentaires de configuration et de gestion du code. Mais surtout il comprend des émulateurs de terminaux mobiles.
http://java.sun.com/products/sjwtoolkit/download-2_2.html .

Une fois Le JDK et le Java wireless Toolkit installé nous allons nous pencher sur les outils de développement.


II. Outils de développement :


1. Eclipse :

est un environnement de développement libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant potentiellement de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. Eclipse IDE est principalement écrit en Java.

pour télécharger Eclipse c'est ici : Eclipse

1.1 EclipseMe :

C'est le plug-in propre à eclipse qui permet le développement d'applications J2ME reposant sur MIDP en utilisant un Wireless Toolkit.

Les fonctionnalités proposées par ce plug-in sont :

  • Le support de plusieurs Wireless Toolkit
  • Un assistant de création de projets de type Midlet Suite
  • Un assistant de création de Midlets
  • Un éditeur pour les fichiers .jad
  • Une compilation incrémentale avec pré-vérification
  • Le débogage du code des Midlets
  • L'exécution dans les émulateurs fournis avec le WirelessToolkit
  • La création d'un package pour les applications J2ME
  • La création d'un package obscurci avec Proguard
  • Le support du mode « Over The Air »

Le site officiel de ce plug-in est à l'url : http://eclipseme.org/

1.2 Installation :

Une fois le pack eclipseMe télécharger il suffit alors de suivre les étapes suivantes :
  • Utilisez l'option « Mise à jour de logiciels/Rechercher et installer » du menu Aide.
  • Sélectionnez « Rechercher les nouveaux dispositifs à installer » et cliquez sur le bouton « Suivant ».
  • Cliquez sur le bouton « Nouveau site archivé »
  • Sélectionnez le fichier et cliquez sur « Ouvrir »
  • Dans l'arborescence des sites, sélectionnez eclipseme.feature_x.x.x_site.zip et cliquez sur le bouton « Suivant »
  • Sélectionnez les dispositifs « EclipseMe » et « eclipseme.features.siemens »
  • Lisez la licence et si vous l'acceptez cliquez sur « J'accepte les termes du contrat » et cliquez sur le bouton « Suivant »
  • Cliquez sur le bouton « Fin »
  • Lors de l'affichage de la boîte de dialogue « Vérification du dispositif », cliquez sur le bouton « Installer »
  • Acceptez de relancer le plan de travail.
Voilà vous disposer maintenant d'un environnement de développement J2me sous Eclipse.

2. Netbeans :

Netbeans est un environnement de développment pour java, placé en open source par Sun sous licence CDDL . En plus de Java, NetBeans permet également de supporter différents autres langages.
Il comprend toutes les caractéristiques d'un IDE moderne (éditeur en couleur, projets multi-langage, refactoring, éditeur graphique d'interfaces et de pages web).

NetBeans est lui-même développé en Java, ce qui peut le rendre assez lent et gourmand en ressources mémoires.

Pour télécharger Netbeans c'est ici : http://www.netbeans.info/downloads/index.php


2.1 Mobility Pack :

C'est le plug-in propre à Netbeans qui permet le développement d'applications J2ME reposant sur MIDP en utilisant un Wireless Toolkit .

Pour télécharger le Mobility Pack c'est ici : http://www.netbeans.org/kb/50/mobility.html

samedi 1 décembre 2007

MicroEmulateur emulateur J2me en ligne


MicroEmulateur est une implémentation de J2me en J2SE, MicroEmulator est sous licence LGPL .

1- Exemples d'utilisations :

* Démonstration de votre MIDlet dans le navigateur Web grâce à l'applet d'émulation.

* MicroEmulateur offre un soutien aux plates-formes de développement où aucun émulateur n'est disponible.

2- Il Offre :

* Un support pour MIDP 2.0 .
* Un support de la MMAPI (JSR 135) .
* Un support de la FileConnection API (JSR 75) .
* Un support pour Nokia API .
* Un support aux API Siemens .
* Interface Skinnable et configurable .
* Fonctionne avec différentes bibliothèques graphiques; actuellement avec Swing et SWT
* Plate-forme indépendante: Windows, Linux, OSX.

Exemple de L'emulateur

site officiel : www.microemu.org






lundi 19 novembre 2007

Envoyer un sms en j2me


Voici une Midlet qui permet l'envoi et la réception de sms.

import javax.microedition.midlet.*;
import javax.microedition.io.*;
import javax.microedition.lcdui.*;
import javax.wireless.messaging.*;
import java.io.IOException;

public class SMSMIDlet
extends MIDlet
implements CommandListener, Runnable {
private Sender mSender = null;
private Thread mReceiver = null;
private Command mExitCommand = new Command("Exit", Command.EXIT, 2);
private Command mRedCommand = new Command("Send Red", Command.SCREEN, 1);
private Command mBlueCommand = new Command("Send Blue", Command.SCREEN, 1);
private Display mDisplay = null;
protected ImageItem mColorSquare = null;
protected Image [] mImages = new Image[2];
protected Image waitImage = null;
private String mPort = "1234";
private TextField mNumberEntry= null;
private Form mForm = null;
private String mSenderAddress = null;
public SMSMIDlet() {
mSender = Sender.getInstance();
}
public void commandAction(javax.microedition.lcdui.Command c,
javax.microedition.lcdui.Displayable d) {
if (c == mExitCommand) {
if (!mSender.isSending()) {
destroyApp(true);
notifyDestroyed();
}
} else if (c == mRedCommand) {
String dest = mNumberEntry.getString();
if (dest.length() > 0)
mSender.sendMsg(dest, mPort, "red");
} else if (c == mBlueCommand) {
String dest = mNumberEntry.getString();
if (dest.length() > 0)
mSender.sendMsg(dest, mPort, "blue");
}
}

protected void destroyApp(boolean param) {
try {
mEndNow = true;
conn.close();
} catch (IOException ex) {
System.out.println("destroyApp caught: ");
ex.printStackTrace();
}
}
protected void pauseApp() {
}
protected void startApp() {
if (mForm == null) {
mForm = new Form("SMSMIDlet");
mNumberEntry = new TextField("Connect to:",
null, 256, TextField.PHONENUMBER);
try {
mImages[0] = Image.createImage("/red.png");
mImages[1] = Image.createImage("/blue.png");
waitImage = Image.createImage("/wait.png");
} catch (Exception ex) {
System.out.println("startApp caught: ");
ex.printStackTrace();
}
mColorSquare = new ImageItem(null, waitImage,ImageItem.
LAYOUT_DEFAULT, "colored square");
mForm.append(mNumberEntry);
mForm.append(mColorSquare);
mForm.addCommand(mExitCommand);
mForm.addCommand(mRedCommand);
mForm.addCommand(mBlueCommand);
mForm.setCommandListener(this);
}
Display.getDisplay(this).setCurrent(mForm);
startReceive();
}
private void startReceive() {
if (mReceiver != null)
return;

// Start receive thread
mReceiver = new Thread(this);
mReceiver.start();
}
private boolean mEndNow = false;
private MessageConnection conn = null;
public void run() {
Message msg = null;
String msgReceived = null;
conn = null;
mEndNow = false;
/** Check for sms connection. */
try {
conn = (MessageConnection) Connector.open("sms://:" + mPort);
msg = conn.receive();
while ((msg != null) && (!mEndNow)) {
if (msg instanceof TextMessage) {
msgReceived = ((TextMessage)msg).getPayloadText();
if (msgReceived.equals("red")) {
Display.getDisplay(this).callSerially(new SetRed());
} else if (msgReceived.equals("blue")) {
Display.getDisplay(this).callSerially(new SetBlue());
}
}
msg = conn.receive();
}
} catch (IOException e) {
// Normal exit when connection is closed
}
}
class SetRed implements Runnable {
Display disp = null;
public void run() {
mColorSquare.setImage(mImages[0]);
}
}
class SetBlue implements Runnable {
public void run() {
mColorSquare.setImage(mImages[1]);
}
}
}

Comment tester l'envoi de SMS :


Vous pouvez facilement tester SMSMIDlet, ou toute application SMS, à l'aide d'un utilitaire appelé le WMA présent dans WTK 2.x. .Pour accéder à la console de WMA, sélectionnez "files" puis "utilities" . Cliquez ensuite la console WMA, puis sélectionnez "launch".

Pour tester SMSMIDlet, d'abord démarrer une instance dans l' émulateur.
Quand il démarre. Notez que sur la barre de titre de l'émulateur un numéro de téléphone apparait, ce dernier commence par Un "+" , Par défaut, c'est le +5550000, C'est le numéro de l'émulateur.
Maintenant, lancez la console de WMA, Sélectionnez le numéro de l'émulateur, cliquez sur le bouton "send SMS".

mercredi 14 novembre 2007

Charger un TiledLayer en J2me


Un TiledLayer est un élément visuel composé d'une grille de cellules qui peuvent être remplis d'un ensemble de parties d'images.
Cette technique est couramment utilisée pour la réalisation de jeux java 2D sur téléphone .

Le code source suivant est celui de la classe DemoCanvas.java, pour pouvoir tester cet exemple et le faire fonctionner il faudra penser à créer une midlet qui fera appel à cette classe, je suppose que c'est assez simple donc nous n'allons pas en parler ici.

Code source J2me :



package exemple2;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
import java.io.IOException;
/**
*
* @author java-Mobile
*/
public class DemoCanvas extends GameCanvas {

/** Creates a new instance of DemoCanvas */
protected DemoCanvas() {
super(true);
initLayer();
drawBackground();
}

public void initLayer() {

int backgroundWidth = 10;
int backgroundHeight = 10;
int tileWidth = 32;
int tileHeight = 32;
Image tilesImage = null;
try {
tilesImage = Image.createImage("/exemple2/modele.png");
} catch (IOException ex) {
throw new RuntimeException ("Unable to load Image - "+ex);
}
TiledLayer tiledLayer = new TiledLayer(
backgroundWidth, backgroundHeight,
tilesImage, tileWidth, tileHeight);

int[] map = {
1 , 5 , 5 , 5 , 5 , 5 , 5 , 4 , 4 , 4 ,
4 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 5 , 4 ,
4 , 5 , 5 , 5 , 2 , 2 , 5 , 5 , 5 , 4 ,
4 , 5 , 5 , 5 , 2 , 2 , 5 , 5 , 5 , 4 ,
4 , 4 , 5 , 5 , 2 , 2 , 5 , 5 , 5 , 4 ,
4 , 4 , 4 , 5 , 5 , 2 , 2 , 2 , 5 , 4 ,
1 , 1 , 3 , 3 , 5 , 5 , 2 , 2 , 5 , 4 ,
3 , 1 , 3 , 3 , 3 , 5 , 5 , 5 , 5 , 4 ,
3 , 1 , 1 , 3 , 3 , 3 , 5 , 5 , 1 , 1 ,
3 , 3 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 3 ,
3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 , 3 };
for (int y=0; y
for (int x=0; x
tiledLayer.setCell(y, x, map[y*backgroundWidth+x]);
}
}

setTiledLayer(tiledLayer);
}

public void drawBackground() {

// Get off-screen buffer
Graphics g = getGraphics();

// Clear the background
g.setColor(BACKGROUND_COLOR);
g.fillRect(0, 0, getWidth(), getHeight());

// Paint the tiled layer
TiledLayer tiledLayer = getTiledLayer();
if(tiledLayer != null) {
tiledLayer.paint(g);
}
}

public TiledLayer getTiledLayer() {
return tiledLayer;
}


public void setTiledLayer(TiledLayer tiledLayer) {
this.tiledLayer = tiledLayer;
}


private TiledLayer tiledLayer;

public static final int BACKGROUND_COLOR = 0x00000000;

}

Plus d'infos sur la Class TiledLayer

mardi 13 novembre 2007

J2me comment afficher une image?

Voici le code source d'une Midlet qui permet l'affichage d'une image, l'exemple est assez simple à comprendre.

package exemple1;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.*;
import java.io.IOException;

public class Affiche extends MIDlet {
private Display _display;
private Moteur _moteur;

public Affiche()
{
_moteur = new Moteur();
_display = Display.getDisplay(this);
}

class Moteur extends Canvas
{
private int _height,_zoneH;
private int _width,_zoneW;

public Moteur()
{
_height = getHeight();
_width = getWidth();
_zoneW = _width -5 ;
_zoneH = _height -5;

}

protected void paint(Graphics g)
{
//g.setColor(0);
g.fillRect(0, 0, _width, _height);
Image source;
try
{
source = Image.createImage("/exemple1/tux2.png");
}
catch (IOException e)
{
throw new RuntimeException ("Unable to load Image - "+e);
}
g.drawImage(source, _height/2, _width/2, Graphics.VCENTER|Graphics.HCENTER);

}



}

protected void keyPressed(int keyCode)
{

}

protected void keyReleased(int keyCode)
{

}
public void startApp() {
_display.setCurrent(_moteur);
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}
}

un portage de Java sur l'iPhone ??



La communauté Java open source espère qu'Apple introduira la version phoneME de Java ME dans le SDK (kit de développement logiciel) de l'iPhone attendu pour le début 2008, c'est ce que sous entend Terrence Barr "évangéliste technique" pour la Java mobiles et systémes embarqués, de chez apple.
Source : web2linux

dimanche 11 novembre 2007

Un kit de développement pour l'iphone


Un kit de développement logiciel devrait finalement être présenté lors du Macworld, en janvier. Le report de la date de mise à disposition de ce kit pourrait bien être due à un certain Leopard...

William Hurley adore son iPhone. Mais il l'aimerait encore plus s'il pouvait créer pour lui des logiciels sur mesure. Et il n'est pas le seul. Des centaines de programmeurs ont pointé leur nez à un événement iPhone organisé par William Hurley, cadre dirigeant de l'éditeur de logiciel BMC, bien qu'Apple n'ait pas encore révélé le code source dont tous ces programmeurs ont besoin pour exploiter l'appareil. C'était en juillet, et depuis, les critiques soulevées par le refus d'Apple d'ouvrir l'iPhone restent vives.

Il semble toutefois qu'Apple leur donnera bientôt satisfaction. Selon des sources informées de la stratégie de l'entreprise, un kit de développement logiciel pour l'iPhone sortira au début de l'année 2008, permettant ainsi aux programmeurs de créer des jeux, des logiciels de gestion, ainsi qu'un nombre infini d'applications diverses et variées pour cet appareil. On ignore les détails, mais d'après nos sources, une annonce sera faite en janvier, probablement le 15, lors de l'allocution du pdg d'Apple, Steve Jobs, à la Macworld Expo de San Francisco.

Pourquoi cette attente ? Selon certains analystes, ce retard ne vise pas à frustrer les éditeurs. Il n'est pas dû non plus à la crainte de voir des logiciels tiers provoquer des bugs susceptibles de mettre en danger les réseaux de téléphonie portable. Il semblerait plutôt qu'Apple ait souhaité attendre au moins jusqu'au lancement du nouveau système d'exploitation des ordinateurs Macintosh. Connu sous le nom de code Leopard , ce système devait être dévoilé en juin 2007, mais il est sorti fin octobre. L'iPhone ayant été créé sur la base de la version Mac OS actuelle, les nouvelles possibilités offertes par Leopard permettront également d'intégrer à l'iPhone des fonctionnalités plus musclées.

Source : http://www.lepoint.fr

Création de la Premiére Midlet


Une fois votre environnement de développement correctement installé (si ce n'est pas le cas faites un petit tour ICI ), on peut procéder à la création de notre premier application Java mobile (Midlet).

Comme tout débutant on va commencer par la création de la Midlet hello world .

Voici la procédure sous eclipse, c'est à peu prés le méme principe que sous Netbeans :

- Tout d'abord commencer par créer un nouveau projet de type
« J2ME/J2ME Midlet Suite ».
- Cliquez sur le bouton « Suivant ».
- Donner un nom à votre projet puis cliquez sur le bouton « Suivant ».
- Sélectionnez la plate-forme et cliquez sur le bouton « Suivant ».
- Cliquez sur le bouton « Fin » pour créer le projet.

- Ensuite il faudra ajouter une midlet en créant une nouvelle entité de type
« J2ME/J2ME Midlet ».
- Cliquez sur le bouton « Suivant ».
- Là on spécifie le dossier source, le nom du package ainsi que le nom de notre Midlet genre BonjourMidlet.

Tout ce qui est écrit en noir est générée par le compilateur, le reste ce qui est écrit en vert est le code à taper.

package test; 
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class BonjourMidlet extends MIDlet {
private Display display;
private TextBox textbox;
public BonjourMidlet() {
super();
display = Display.getDisplay(this);
textbox = new TextBox("", "Bonjour", 20, 0);
}

/* (non-Javadoc)
* @see javax.microedition.midlet.MIDlet#startApp()
*/
protected void startApp() throws MIDletStateChangeException {
display.setCurrent(textbox);
}

/* (non-Javadoc)
* @see javax.microedition.midlet.MIDlet#pauseApp()
*/
protected void pauseApp() {
// TODO Raccord de méthode auto-généré
}

/* (non-Javadoc)
* @see javax.microedition.midlet.MIDlet#destroyApp(boolean)
*/
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Raccord de méthode auto-généré
}
}
Pour compiler la midlet et l'exécuter il suffit alors de sélectionner « Emulated J2ME Midlet » sous Eclipse ou faire un "Build" suivi d'un "run" sous Netbeans, pour lancer l'application dans l'émulateur.


Ensuite pour tester la Midlet sur votre téléphone mobile aller récupérer le .jar et .jad qui se situent dans votre espace de travail dans le répertoire "dist" (si vous utilisrr Netbeans).

si vous êtes sous Eclipse faites un click droit sur votre projet puis exporter jar et laisser vous guider.

une fois le .jad et .jar générer consulter la page ICI pour savoir comment transférer votre application sur votre téléphone mobile.

Transférer jeux et applications java sur votre mobile


Une question revient souvent comment télécharger mon jeu java ou ma midlet (application java) sur mon téléphone mobile ?

Tout d'abord pour déployer une application ou un jeu que vous venez de développer vous devez avant générer le .jad et .jar.

Une fois le .jad et .jar générer, plusieurs possibilités de déploiement s'offre à nous mais ceci dépend du modèle du téléphone :

1.1 Transfert bluetooth :

- Cas problématique d'un téléphone Samsung:

Une fois que vous avez fini de télécharger l'application ou le jeu sur votre téléphone mobile vérifier qu'il est bien présent dans votre répertoire "other files", si c'est le cas, il nous faut accéder au menu secret de Samsung pour installer le jeu ou la midlet pour ceci taper *#9998*5282# puis 3 pour accéder au formulaire "install midlet" ensuite taper le code secret 235282 .


1.2 Transfert Par Internet (wap) :


Une solution fort intéressante, utile et pratique est le déploiement par internet (wap), en effet plusieurs sites offre la possibilité d'uploader votre .jad et .jar.

On peut citer:

http://www.plogg.net/ploggwallet.php

- Une fois l'upload fait, le site en question fournit un lien et un identifiant + un code.
- Avec le navigateur wap du téléphone mobile vous accéder au lien, puis vous entrez les identifiant et voilà comme par magie le jeu ou l'application commence à se télécharger et le téléphone l'installe automatiquement.

Ce type de déploiement est utile pour les modèles Samasung ou autres modèles qui interdisent les autres types de déploiement.

Outils de Développement


Dans cet article on va traiter des outils de développement sous Windows, on peut citer deux environnements de développement Netbeans et Eclipse, avant de se pencher sur les outils de développement, nous allons nous intéresser aux pré-requis nécessaires pour commencer tout développement J2ME.

I. Pré-requis:

1. JDK:


Veillez d'abord à bien installé le dernier JDK (Java Development Kit) de chez sun. http://java.sun.com/j2se/1.4.2/download.html

Télécharger le SDK, non le JRE.

2. Java Wireless Toolkit :

Le java wireless toolkit de chez sun offre quelques outils rudimentaires de configuration et de gestion du code. Mais surtout il comprend des émulateurs de terminaux mobiles.
http://java.sun.com/products/sjwtoolkit/download-2_2.html .

Une fois Le JDK et le Java wireless Toolkit installé nous allons nous pencher sur les outils de développement.


II. Outils de développement :


1. Eclipse :

est un environnement de développement libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant potentiellement de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. Eclipse IDE est principalement écrit en Java.

pour télécharger Eclipse c'est ici : Eclipse

1.1 EclipseMe :

C'est le plug-in propre à eclipse qui permet le développement d'applications J2ME reposant sur MIDP en utilisant un Wireless Toolkit.

Les fonctionnalités proposées par ce plug-in sont :

  • Le support de plusieurs Wireless Toolkit
  • Un assistant de création de projets de type Midlet Suite
  • Un assistant de création de Midlets
  • Un éditeur pour les fichiers .jad
  • Une compilation incrémentale avec pré-vérification
  • Le débogage du code des Midlets
  • L'exécution dans les émulateurs fournis avec le WirelessToolkit
  • La création d'un package pour les applications J2ME
  • La création d'un package obscurci avec Proguard
  • Le support du mode « Over The Air »

Le site officiel de ce plug-in est à l'url : http://eclipseme.org/

1.2 Installation :

Une fois le pack eclipseMe télécharger il suffit alors de suivre les étapes suivantes :
  • Utilisez l'option « Mise à jour de logiciels/Rechercher et installer » du menu Aide.
  • Sélectionnez « Rechercher les nouveaux dispositifs à installer » et cliquez sur le bouton « Suivant ».
  • Cliquez sur le bouton « Nouveau site archivé »
  • Sélectionnez le fichier et cliquez sur « Ouvrir »
  • Dans l'arborescence des sites, sélectionnez eclipseme.feature_x.x.x_site.zip et cliquez sur le bouton « Suivant »
  • Sélectionnez les dispositifs « EclipseMe » et « eclipseme.features.siemens »
  • Lisez la licence et si vous l'acceptez cliquez sur « J'accepte les termes du contrat » et cliquez sur le bouton « Suivant »
  • Cliquez sur le bouton « Fin »
  • Lors de l'affichage de la boîte de dialogue « Vérification du dispositif », cliquez sur le bouton « Installer »
  • Acceptez de relancer le plan de travail.
Voilà vous disposer maintenant d'un environnement de développement J2me sous Eclipse.

2. Netbeans :

Netbeans est un environnement de développment pour java, placé en open source par Sun sous licence CDDL . En plus de Java, NetBeans permet également de supporter différents autres langages.
Il comprend toutes les caractéristiques d'un IDE moderne (éditeur en couleur, projets multi-langage, refactoring, éditeur graphique d'interfaces et de pages web).

NetBeans est lui-même développé en Java, ce qui peut le rendre assez lent et gourmand en ressources mémoires.

Pour télécharger Netbeans c'est ici : http://www.netbeans.info/downloads/index.php


2.1 Mobility Pack :

C'est le plug-in propre à Netbeans qui permet le développement d'applications J2ME reposant sur MIDP en utilisant un Wireless Toolkit .

Pour télécharger le Mobility Pack c'est ici : http://www.netbeans.org/kb/50/mobility.html

Java Mobile Information


Introduction :

La plateforme Java 2 Micro Edition (J2ME) a été créée pour le marché de consommateur d'équipement à ressources limitées de mémoire et de processeur tels que : téléphones portables, smart cartes, palms, organizers et mini-ordinateurs.

Java Mobile (J2ME) permet de lancer Java sur l'équipement ayant des ressources limitées. Pour cet objectif, J2ME adapte la technologie de Java qui existe. Voyons 3 points de J2ME : la configuration, les profiles et le Midlet. L'information détailler vous pouvez trouver sur le site officiel de Sun Microsystems: http://java.sun.com/j2me/

1. La configuration

Elle détermine le milieu d'exécution de J2ME. Elle inclut une machine virtuelle limitée par rapport à VM standard et d'un nombre des classes principales, en général, empruntées à J2SE.Actuellement, il y a 2 configurations déterminées : configuration des mobiles de communication à ressources limitées (Connected Limited Device Configuration, CLDC) et configuration des mobiles de communication (Connected Device Configuration, CDC). La première configuration est orientée vers le mini mobile équipé de processeurs à 16/32 bits dont le mémoire est de 128 KB minimum.

Le point avantageux de J2ME CLDC consiste en une machine virtuelle K Virtuel Machine (KMV), mise au point spécialement pour les interfaces de réseau à mémoire et ressources limitées. La deuxième configuration de J2ME CDC est orientée vers les modèles électroniques prévues à être montés à l'intérieur, plus compliqués tels que : smart communicateurs, pagers, PDA, (Sony PlayStation, XBox, etc.). Normalement, les mobiles pareils inclus les processeurs à 32 bits fonctionnant comme contrôleur et de mémoire de plus de 2 Mb utilisé pour sauvegarder la machine virtuelle et la bibliothèque. CDC met en marche la machine virtuelle C Virtuel Machine (CVM).

CDC est composé de toutes les classes de CLDC et contient encore plus de classes de J2SE. La différence principale entre CDC et CLDC est ce que CDC VM maintient toutes les possibilités de J2SE VM y compris native programming interfaces.

2. Profile

Le profile élargit la configuration en ajoutant des classes spécifiques au nombre de classes générales, définies dans leur configuration. Autrement dit, le profile assure la fonctionnalité indispensable qui manque dans la configuration générale. Cela peut être une interface d'utilisateur, un mécanisme de sauvegarde, etc. A part MIDP profile ( Mobile Information Device Profile) il en existe d'autres.

annuaire blogscreer blog gratuit