June 04, 2013

Kirim dan Terima SMS dengan J2ME

Seperti pada postingan disini, saya akan membahas tentang pembuatan aplikasi kirim dan terima SMS dengan Java yang dapat Anda masukkan ke dalam handphone Anda.
 
Disini saya menggunakan 2 buah program. Pertama kirimSMS.java untuk si pengirim SMS dan terimaSMS.java untuk si penerima SMS.

Kode program kirimSMS.java
import javax.microedition.io.Connector;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.wireless.messaging.MessageConnection;
import javax.wireless.messaging.TextMessage;
public class kirimSMS extends MIDlet implements CommandListener,Runnable
{
private Form sendMessageForm;
private TextField number, msg;
private Command cmdOK,cmdExit;
private String telpNum, isiPesan = "";
public kirimSMS(){
cmdExit = new Command("Back", Command.EXIT, 2);
cmdOK = new Command("Send", Command.SCREEN, 2);
sendMessageForm = new Form("Send Message");
msg = new TextField("Message:", null, 50, TextField.ANY);
number = new TextField("Telepon:", null, 15, TextField.PHONENUMBER);
sendMessageForm.append(number);
sendMessageForm.append(msg);
sendMessageForm.addCommand(cmdOK);
sendMessageForm.addCommand(cmdExit);
sendMessageForm.setCommandListener(this);
}
protected void destroyApp(boolean arg0) {
notifyDestroyed();
}
protected void pauseApp() {
}
protected void startApp() throws MIDletStateChangeException {
Display.getDisplay(this).setCurrent(sendMessageForm);
}
public void commandAction(Command arg0, Displayable arg1) {
if(arg0==cmdOK){
telpNum = number.getString();
isiPesan = msg.getString();
new Thread(this).start();
number.setString("");
msg.setString("");
Display.getDisplay(this).setCurrent(sendMessageForm);
}else if(arg0==cmdExit){

destroyApp(true);
}
}
public void run() {
try{
String nomorTelp = "sms://" + telpNum + ":1234";
MessageConnection conn =
(MessageConnection)Connector.open(nomorTelp);
TextMessage msg = (TextMessage)
conn.newMessage(MessageConnection.TEXT_MESSAGE);
msg.setPayloadText(isiPesan);
conn.send(msg);
conn.close();
}catch(Exception e){
e.printStackTrace();
}
}
}

Kode program terimaSMS.java
import javax.microedition.io.Connector;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.TextBox;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.wireless.messaging.Message;
import javax.wireless.messaging.MessageConnection;
import javax.wireless.messaging.TextMessage;
public class terimaSMS extends MIDlet implements Runnable,
CommandListener {
private TextBox tb;
private String text = "Menunggu pesan...";
private Command okComand;
public terimaSMS() {
tb = new TextBox("Hello MIDlet", text, 150, 0);
}
protected void destroyApp(boolean arg0) throws
MIDletStateChangeException {
}

protected void pauseApp() {
}
protected void startApp() throws MIDletStateChangeException {
Display.getDisplay(this).setCurrent(tb);
new Thread(this).start();
}
public void changeScreen() {
tb = new TextBox("SMS MIDlet", text, 150, 0);
Display.getDisplay(this).setCurrent(tb);
}
public void addConfirmation(String msg) {
tb = new TextBox("SMS MIDlet", text, 150, 0);
tb.setString(msg);
okComand = new Command("OK",Command.OK,1);
tb.addCommand(okComand);
tb.setCommandListener(this);
Display.getDisplay(this).setCurrent(tb);
}
public void run() {
try {
MessageConnection rconn = (MessageConnection) Connector
.open("sms://:1234");
while (true) {
Message msg = rconn.receive();
if (msg instanceof TextMessage) {
TextMessage tmsg = (TextMessage) msg;
String msgOut = tmsg.getPayloadText();
addConfirmation(msgOut);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void commandAction(Command arg0, Displayable arg1) {
}
}
 
Untuk mengurangi panjangnya halaman postingan saya kali ini, Anda bisa mendownload modul Kirim dan Terima SMS dengan J2ME yang dapat Anda pelajari lebih rinci.
Inilah hasil simulasi pembuatan aplikasi kirim dan terima SMS dengan Sun Java Wireless Toolkit.

Sekian pembahasan tentang aplikasi kirim dan terima SMS ini. :)
 

0 comments:

:a: :b: :c: :d: :e: :f: :g: :h: :i: :j: :k: :l: :m: :n:

Post a Comment