我试图在AsyncTask
中使用doInBackground
在我的Android应用程序中以编程方式发送短信我有一个我要发送短信的收件人列表,问题是我是否将它们发送到{{1}循环它有一个不稳定的行为有时候应用程序崩溃一段时间没有发送消息...我使用for
来确保消息离开设备,
PendingIntent
我可以实现某种机制,只有在收到第一个短信 smsManager.sendTextMessage("Mobile_NUmber",null, "MessageText", sentPI, null);
Broadcast
之后我才能发送下一个短信
答案 0 :(得分:1)
请参阅我对此问题的回答:Send SMS until it is successful
要发送到多个接收器,只需将方法startMessageServiceIntent更改为:
private void startMessageServiceIntent(String message, String[] receivers) {
Intent i = new Intent(context, SMSSender.class);
i.putExtra(SMSSender.EXTRA_MESSAGE, message);
i.putExtra(SMSSender.EXTRA_RECEIVERS, receivers);
startService(i)
}
我记得花了很长时间来实现这个实现并回想起遇到一些不太明显的问题,例如需要应用ID参数(即使文档声称它没有被使用)并且必须指定PendingIntent.FLAG_CANCEL_CURRENT
尽管如此,希望这可以帮助您实现目标。