4 Stimmen

Code zum Senden von SMS mit J2ME

Ich bin auf der Suche nach einem Code zum Senden von SMS mit J2ME.

0 Stimmen

1 Stimmen

Gibt es etwas Bestimmtes, das Sie in der JSR-120- oder JSR-205-Spezifikation oder im Beispielcode des JavaME-SDK nicht verstehen?

4voto

Nilesh Punkte 167

Sie können den nachstehenden Code ausprobieren, um dies umzusetzen:

private boolean SendSMS(String sPhoneNo, String sMessage) {
    boolean result = true;

    try {
        String addr = "sms://" + sPhoneNo;
        MessageConnection conn = (MessageConnection) Connector.open(addr);
        TextMessage msg = (TextMessage) 
            conn.newMessage(MessageConnection.TEXT_MESSAGE);
        msg.setPayloadText(sMessage);
        conn.send(msg);
        conn.close();
    } 

    catch (SecurityException se) {
        result = false;
    } 

    catch (Exception e) {
        result = false;
    }

    return result;
}  

Sie können jeden speziellen Anschluss angeben, indem Sie einfach ":port_no" nach:

"String addr = "sms://" + sPhoneNo"

3voto

abbas.aniefa Punkte 2771

Starten Sie diesen Thread, um SMS zu versenden

public class SendSMS extends Thread {

private String receiver;
private String receivedMsg;
private HomeScreen home;
private boolean bool = false;
private boolean notsent;

public SendSMS(HomeScreen gen, String msg, String number) {
    this.home = gen;
    this.receiver = number;
    this.receivedMsg = msg;
}

public void run() {
    while (!bool) {
        SendMessage();
    }
}

/**
 * Send the mesage using WMA api.
 */
private void SendMessage() { 
    String s = "sms://" + receiver;
    send(s);
}

private void send(String url) {
    MessageConnection messageconnection = null;
    try {
        messageconnection = (MessageConnection) Connector.open(url);
        TextMessage textmessage = (TextMessage) messageconnection.newMessage(MessageConnection.TEXT_MESSAGE);
        textmessage.setAddress(url);
        textmessage.setPayloadText(receivedMsg);
        messageconnection.send(textmessage);
    } catch (Exception throwable) {
        notsent = true;
        home.genericObject.setSmsStatus(false);
        if (!home.isNokia()) {
            new PopUp("Message not sent"); // not sent
        }
        bool = true;
        try {
            messageconnection.close();
        } catch (Exception e) {
        }
    }

    if (messageconnection != null) {
        try {
            messageconnection.close();
            if (!notsent) {
                home.genericObject.setSmsStatus(false);
                if (!home.isNokia()) {
                    new PopUp("Message Sent"); // sent
                }
            }
            bool = true;
        } catch (Exception ie) {
            ie.printStackTrace();
        }
    }
  }
}

Nokia-Geräte zeigen keine Systemwarnung an, wenn eine Nachricht von j2me gesendet wird. Wenn Sie also eine Warnung anzeigen möchten, müssen Sie ein eigenes PopUp erstellen und anzeigen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X