2009-05-15 14 views
4

Kann mir jemand mit Code helfen, SMS mit J2ME zu senden?Code zum Senden von SMS mit J2ME

Dank

+1

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

+0

[Senden und Empfangen von SMS auf J2ME-Gerät] (http://www.java-tips.org/java-me-tips/midp/sending-receiving-sms-on-j2me-device-3.html) – TheTXI

Antwort

3

diesen Thread starten SMS-Geräte

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 senden Alarm nicht zeigen System, wenn die Nachricht von J2ME gesendet wird. Wenn Sie also Alarm anzeigen möchten, müssen Sie ein eigenes PopUp erstellen und anzeigen.

4

Sie können den Code unten versuchen, dies implementieren:

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 speziell Port ":port_no" indem einfach angeben können nach:

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