Affichage des articles dont le libellé est jwtoolkit. Afficher tous les articles
Affichage des articles dont le libellé est jwtoolkit. Afficher tous les articles

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".

dimanche 11 novembre 2007

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

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Best Web Hosting