Programming Tutorials

(追記) (追記ここまで)

UDP Datagram sample in J2ME

By: Fazal in J2ME Tutorials on 2007年09月17日 [フレーム]

Here's an example program that demonstrates how to use UDP Datagram in J2ME:

import javax.microedition.io.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class UDPDatagramExample extends MIDlet implements CommandListener, Runnable {
 
 private Display display;
 private Form form;
 private Command sendCommand, exitCommand;
 private TextField textField;
 private Thread thread;
 
 private DatagramConnection connection;
 private Datagram datagram;
 private final int PORT = 1234;
 private final String IP = "127.0.0.1";
 public void startApp() {
 display = Display.getDisplay(this);
 
 // initialize the form
 form = new Form("UDP Datagram Example");
 textField = new TextField("Type a message:", "", 30, TextField.ANY);
 form.append(textField);
 sendCommand = new Command("Send", Command.OK, 0);
 exitCommand = new Command("Exit", Command.EXIT, 0);
 form.addCommand(sendCommand);
 form.addCommand(exitCommand);
 form.setCommandListener(this);
 
 display.setCurrent(form);
 
 // create the datagram connection
 try {
 connection = (DatagramConnection) Connector.open("datagram://" + IP + ":" + PORT);
 datagram = connection.newDatagram(connection.getMaximumLength());
 } catch (Exception e) {
 e.printStackTrace();
 }
 }
 
 public void pauseApp() {}
 
 public void destroyApp(boolean unconditional) {
 try {
 connection.close();
 } catch (Exception e) {}
 }
 public void commandAction(Command c, Displayable s) {
 if (c == sendCommand) {
 thread = new Thread(this);
 thread.start();
 } else if (c == exitCommand) {
 destroyApp(false);
 notifyDestroyed();
 }
 }
 
 public void run() {
 try {
 String message = textField.getString();
 datagram.reset();
 datagram.setData(message.getBytes(), 0, message.length());
 connection.send(datagram);
 } catch (Exception e) {
 e.printStackTrace();
 }
 }
}

In this example, a new DatagramConnection is created using the Connector.open() method with the protocol and IP address/port number specified. The Datagram object is then created using the newDatagram() method of the connection, with the maximum length of the datagram. The send() method of the connection is called with the datagram to send the data to the specified IP address and port number.

The run() method is called when the Send command is pressed, and it gets the message from the text field, sets the data of the datagram with the message, and sends the datagram using the connection.

Note that this example is for demonstration purposes only, and the actual IP address and port number used in the DatagramConnection may differ depending on the network configuration.




(追記) (追記ここまで)


Add Comment

JavaScript must be enabled for certain features to work
* Required information
1000

Comments

No comments yet. Be the first!
(追記) (追記ここまで)
(追記) (追記ここまで)

AltStyle によって変換されたページ (->オリジナル) /