以下代码应在从设备发送短信时打印出一条消息。我在模拟器上试了几次但是当我发送短信时没有打印出来。我究竟做错了什么?为什么应用程序不会发送短信已发送。
public class BackGroundApp extends UiApplication implements OutboundMessageListener, javax.wireless.messaging.MessageListener {
private MessageConnection messageConnection;
public static void main(String args[])
{
BackGroundApp theApp = new BackGroundApp();
theApp.enterEventDispatcher();
}
public BackGroundApp(){
try {
MessageConnection _mc = (MessageConnection)Connector.open("sms://");
_mc.setMessageListener(this);
} catch (IOException e) {}
}
public void notifyIncomingMessage(MessageConnection messageconnection){
}
public void notifyOutgoingMessage(javax.wireless.messaging.Message message) {
System.out.println("SMS just sent from your device!");
}
}
答案 0 :(得分:2)
您需要根据API documentation使用MessageConnection注册您的侦听器。
模拟器无法真正发送短信,因此您可能需要在设备上执行此操作。