Affichage des articles dont le libellé est mobile. Afficher tous les articles
Affichage des articles dont le libellé est mobile. 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".

mardi 13 novembre 2007

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.

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