如何在黑莓中编写短信应用程序?

Kum*_*mar 9 sms networking blackberry

任何人都可以帮我编写应用程序来发送和接收黑莓中的短信.如果你能提供给我一些代码片段.

Ash*_*hir 13

要发送短信:

import net.rim.device.api.io.*;
import net.rim.device.api.system.*;
import javax.microedition.io.*;
import java.util.*;
import java.io.*;
public class SendSms extends Application
{
     private static final int MAX_PHONE_NUMBER_LENGTH = 32;
     private String addr = "15191112222";
     private String msg = "This is a test message.";
     private DatagramConnection _dc = null;
     private static String _openString = "sms://";
     public static void main(String[] args)
     {
          new SendSms().enterEventDispatcher();
     }
     public SendSms()
     {
          try {
               _dc = (DatagramConnection)Connector.open(_openString);
               byte[] data = msg.getBytes();
               Datagram d = _dc.newDatagram(_dc.getMaximumLength());
               d.setAddress("//" + addr);
               _dc.send(d);
          } catch ( IOException e) {}
          System.exit(0);
     }
}
Run Code Online (Sandbox Code Playgroud)

收到短信:

import net.rim.device.api.io.*;
import net.rim.device.api.system.*;
import javax.microedition.io.*;
import java.util.*;
import java.io.*;
public class ReceiveSms extends Application {
     private ListeningThread _listener;
     public static void main(String[] args)
     {
          new ReceiveSms().enterEventDispatcher();
     }
     ReceiveSms() {
          _listener = new ListeningThread();
          _listener.start();
     }
     private class ListeningThread extends Thread
     {
          private boolean _stop = false;
          private DatagramConnection _dc;
          public synchronized void stop()
          {
               _stop = true;
               try {
                    _dc.close();
               } catch (IOException e) {
                    System.err.println(e.toString());
               }
          }
          public void run()
          {
               try {
                    _dc = (DatagramConnection)Connector.open("sms://");
                    for(;;)
                    {
                         if ( _stop ) {
                              return;
                         }
                         Datagram d = _dc.newDatagram(_dc.getMaximumLength());
                         _dc.receive(d);
                         String address = new String(d.getData());
                         String msg = new String(d.getData());
                         System.out.println("Message received: " + msg);
                         System.out.println("From: " + address);
                         System.exit(0);
                    }
               } catch (IOException e) {
                    System.err.println(e.toString());
               }
          }
     }
}
Run Code Online (Sandbox Code Playgroud)