0
我已经实现发送消息的字符长度是500,所以分成160个字符消息。SmsManager无法发送一些消息
但是,它跳过一些消息,所以我加入异步任务,但仍连续的问题,能不能帮我解决
这里是我的代码,
public class SendMessage
{
public static void SendSMS(Activity activity, String Msg)
{
try {
SmsSendTask mAuthTask=null;
mAuthTask = new SmsSendTask(Msg);
mAuthTask.execute((Void) null);
} catch (Exception e) {
Toast.makeText(activity, "SMS failed, please try again.", Toast.LENGTH_LONG).show();
System.out.println(e.toString()+"<<e>>>");
e.printStackTrace();
}
}
public static class SmsSendTask extends AsyncTask<Void, Void, Boolean> {
private final String _msg;
SmsSendTask(String msg) {
_msg = msg;
}
@Override
protected Boolean doInBackground(Void... params) {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
return false;
}
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage("9246591931", null, _msg, null, null);
return true;
}
@Override
protected void onPostExecute(final Boolean success) {
if (success) {
} else {
}
}
@Override
protected void onCancelled() {
}
}
}
你可以得到您的答案在此链接http://stackoverflow.com/a/6590782/1896677 – bhavikkumar
可能重复的[如何发送超过160个字符的短信?](http://stackoverflow.com/questions/6580675/how-to - 发送最SMS-更比160个字符) – kawashita86