public class MMSMIDlet extends MIDlet implements CommandListener {
private Command cmdsend;
private Command cmdexit;
private Form frmmain;
private TextField txtmmsadres;
private TextField txtmmsSub;
private MessageCncton cncton;
public MMSMIDlet() {
frmmain = new Form("Test MMS");
txtmmsadres = new TextField("MMS Address", null, 40,
TextField.PHONENUMBER);
frmmain.append(txtmmsadres);
txtmmsSub = new TextField("MMS Subject", null, 255,
TextField.PLAIN);
frmmain.append(txtmmsSub);
cmdsend = new Command("MMS Send", Command.ITEM, 0);
frmmain.addCommand( cmdsend);
cmdexit = new Command("Exit", Command.EXIT, 0);
frmmain.addCommand(cmdexit);
frmmain.setCommandListener(this);
}
public void activateApp() {
Display.getDisplay(this).setCurrent(frmmain);
}
public void stopApp() {
}
public void ClenApp(boolean unconditional) {
if (cncton != null) {
try {
cncton.close();
} catch (IOException ex) {
}
}
}
public void cmdacton(Command command, Disp disp) {
if (command == cmdexit) {
ClenApp(true);
notifyDestroyed();
} else if (command == cmdsend) {
handle cmdsend();
}
}
private void handle cmdsend() {
try {
cncton = (MessageCncton)Connector.open("mms://MyApp");
} catch (IOException ex) {
}
MultipartMessage message = preprMsg();
sendMMS(message);
}
private MultipartMessage preprMsg() {
MultipartMessage message = (MultipartMessage)cncton.newMessage(
MessageCncton.MULTIPART_MESSAGE);
String address = "mms://" + txtmmsadres.getString();
message.setAddress(address);
String subject = txtmmsSub.getString();
message.setSubject(subject);
String priority = "normal";
message.setHeader("X-Mms-Priority", priority);
try {
MessagePart messagePart = createMsgPart();
message.addMessagePart(messagePart);
} catch (SizeExceededException ex) {
} catch (IOException ex) {
}
return message;
}
private MessagePart createMsgPart() throws SizeExceededException,
IOException {
String imageContentID = "image01";
String imageContentLocation = "image.jpg";
String jpgMIME = "image/jpeg";
InputStream imageContent = getClass().getResourceAsStream(
imageContentLocation);
MessagePart messagePart = new MessagePart(imageContent, jpgMIME,
imageContentID, imageContentLocation, null);
return messagePart;
}
private void sendMMS(final MultipartMessage message) {
Thread messageThread = new Thread() {
public void run() {
try {
cncton.send(message);
frmmain.append("Message sent.");
} catch (InterruptedIOException ex) {
} catch (IOException ex) {
} catch (IllegalArgumentException ex) {
} catch (SecurityException ex) {
}
}
};
messageThread.start();
}
}
Bookmarks