当前位置: 技术问答>java相关
重新问一次,关于手机收到短信的问题
来源: 互联网 发布时间:2015-10-18
本文导语: 我在手机上开发了一些AP,现在我想启动AP以后,可以在当前的AP中监视收到短信以后及时查看短信,以下是我的程序,我在网关上发送的是:2233120 public class MainStart extends MIDlet { public static MainStart mainstart; ...
我在手机上开发了一些AP,现在我想启动AP以后,可以在当前的AP中监视收到短信以后及时查看短信,以下是我的程序,我在网关上发送的是:2233120
public class MainStart extends MIDlet
{
public static MainStart mainstart;
public SMSConnection smsConnection;
public MainStart()
{
mainstart = this;
String phoneNumber = getAppProperty("SMSAddress");
//SMSAddress 我在jad中写的是2233120:1
//1代表的是AP我自己设的port,我现在怀疑是这个的问题,我不知道siemens的手机
//哪些port是开放的,而自己开发的j2me的application重多少开始可以用??
if (phoneNumber == null)
{
phoneNumber = "+00000000000";
}
smsConnection = new SMSConnection(this, phoneNumber);
}
//以下是MIDlet的一些其他步骤
}
import javax.microedition.io.*;
import java.io.*;
import javax.microedition.lcdui.*;
public class SMSConnection implements Runnable
{
private DatagramConnection c;
private MainStart mainstart;
public SMSConnection (MainStart mainstart, String number)
{
try
{
this.mainstart = mainstart;
String address = "sms://" + number; c = (DatagramConnection)Connector.open(address, Connector.READ_WRITE);
new Thread(this).start();
}
catch (Exception e)
{
}
}
public void close()
{
try
{
c.close();
}
catch (Exception e)
{
}
}
private void receive ()
{
try
{
//测试用
Datagram datagram = c.newDatagram( c.getMaximumLength() );
c.receive( datagram );
Alert alert = new Alert(null,"",null,AlertType.INFO);
alert.setTimeout(2000);
alert.setString("接收短信成功");
Display.getDisplay(MainStart.mainstart).setCurrent(alert);
}
catch (Exception e)
{
//测试用
Alert alert = new Alert(null,"",null,AlertType.INFO);
alert.setTimeout(2000);
alert.setString("接收短信失败");
Display.getDisplay(MainStart.mainstart).setCurrent(alert);
}
}
public void run()
{
while (true)
{
receive();
}
}
}
有谁有这方面的经验,救救我吧,昨天整了一天了
public class MainStart extends MIDlet
{
public static MainStart mainstart;
public SMSConnection smsConnection;
public MainStart()
{
mainstart = this;
String phoneNumber = getAppProperty("SMSAddress");
//SMSAddress 我在jad中写的是2233120:1
//1代表的是AP我自己设的port,我现在怀疑是这个的问题,我不知道siemens的手机
//哪些port是开放的,而自己开发的j2me的application重多少开始可以用??
if (phoneNumber == null)
{
phoneNumber = "+00000000000";
}
smsConnection = new SMSConnection(this, phoneNumber);
}
//以下是MIDlet的一些其他步骤
}
import javax.microedition.io.*;
import java.io.*;
import javax.microedition.lcdui.*;
public class SMSConnection implements Runnable
{
private DatagramConnection c;
private MainStart mainstart;
public SMSConnection (MainStart mainstart, String number)
{
try
{
this.mainstart = mainstart;
String address = "sms://" + number; c = (DatagramConnection)Connector.open(address, Connector.READ_WRITE);
new Thread(this).start();
}
catch (Exception e)
{
}
}
public void close()
{
try
{
c.close();
}
catch (Exception e)
{
}
}
private void receive ()
{
try
{
//测试用
Datagram datagram = c.newDatagram( c.getMaximumLength() );
c.receive( datagram );
Alert alert = new Alert(null,"",null,AlertType.INFO);
alert.setTimeout(2000);
alert.setString("接收短信成功");
Display.getDisplay(MainStart.mainstart).setCurrent(alert);
}
catch (Exception e)
{
//测试用
Alert alert = new Alert(null,"",null,AlertType.INFO);
alert.setTimeout(2000);
alert.setString("接收短信失败");
Display.getDisplay(MainStart.mainstart).setCurrent(alert);
}
}
public void run()
{
while (true)
{
receive();
}
}
}
有谁有这方面的经验,救救我吧,昨天整了一天了
|
我觉你应该用connectionlistener来监听并处理接受到的短信.
|
see
see
!!!!!!
see
!!!!!!
|
你用的是siemens什么型号的.
|
weimenren(愚人碼頭):
你好,请问你的这个程序是不是要手机拨号上网后通过因特网才能发的?
我也是个初学者,找了一上午这方面的资料,没找到。不知道你有没有?
oicq:17229780,交流交流
你好,请问你的这个程序是不是要手机拨号上网后通过因特网才能发的?
我也是个初学者,找了一上午这方面的资料,没找到。不知道你有没有?
oicq:17229780,交流交流
|
你好厉害啊。
俺看不懂啊。
俺看不懂啊。