我正在尝试从我的申请中发送紧急短信.我必须确保SMS已成功发送.
在Android系统启动后以及在进行检查之后发送SMS.
所以我有一个处理BOOT_COMPLETED intent-filter的服务类.这个类进行检查,如果有的话,那么它会尝试通过"扩展服务"的另一个类发送一条SMS消息
在确保成功发送短信之后,两个服务(处理引导调用的服务和发送短信的服务)必须退出.
问题1:如何使用短信调用我的短信发送功能而不会使应用程序无响应消息?目前我正在使用它(我不知道它是否是正确的方法,虽然它有效):
Timer mTimer = new Timer();
//wait a small timeout prior to sending the message.
mTimer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
this.cancel(); //I don't want to run the timer more than once
sms_sender sms = new sms_sender();
sms.sendSMS(phoneNumber, messageText);
}
}, 30000, 30000); //run sendSMS() after 30 seconds
Run Code Online (Sandbox Code Playgroud)
问题2:如何实现sendSMS功能,以便在意识到上次尝试失败后每30秒重试一次?
问题3:在我意识到SMS已成功发送后,如何停止这两项服务?
这是我的代码不起作用:
public class sms_sender extends Service {
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null; …Run Code Online (Sandbox Code Playgroud)