Android:通过意图与身体发送短信并返回.

RCB*_*RCB 8 android android-intent

我试图通过意图发送短信,我想在消息中添加一个正文.用户按下后send我想返回应用程序.我添加了额外的sms_bodyexit_on_sent.但是当我使用它们时,短信出现时没有身体.如果我不使用exit_on_sent额外的一切工作正常.

    Intent sendIntent = new Intent(Intent.ACTION_VIEW);         
    sendIntent.setData(Uri.parse("smsto:" + phoneNumber));
    sendIntent.putExtra("sms_body", "some text");
    sendIntent.putExtra("exit_on_sent", true);
    context.startActivity(sendIntent);
Run Code Online (Sandbox Code Playgroud)

Jun*_*dge 1

你可以尝试使用

startActivityForResult(sendIntent, SOME_REQUEST_CODE) 
Run Code Online (Sandbox Code Playgroud)

但根据我的经验,大多数时候它不起作用。我建议使用 SmsManager。

SmsManager smsMgr = SmsManager.getDefault();
if(smsMgr != null){
  PendingIntent sentIntent = PendingIntent.getBroadcast(
      getActivity().getApplicationContext(), 0,
      new Intent(MY_ACTION_INTENT_SENT), 0);
  smsMgr.sendTextMessage(phone, null, message, sentIntent, null);
}
Run Code Online (Sandbox Code Playgroud)

根据您的应用程序,您可以在发送 MY_ACTION_INTENT 时(指示消息已实际发送)或在 sendTextMessage(...) 返回后立即执行其余处理。

从 API 级别 19 开始,您可能会发现一些有用的有趣功能http://developer.android.com/reference/android/provider/Telephony.html

希望能帮助到你。