Android 安卓:通过身体发送短信并返回。
我试图通过一个意向发送短信,我想在短信中添加一个正文。用户按Android 安卓:通过身体发送短信并返回。,android,android-intent,Android,Android Intent,我试图通过一个意向发送短信,我想在短信中添加一个正文。用户按send后,我想返回应用程序。我添加了额外的内容,如sms\u body和exit\u on\u sent。但当我使用它们时,两条短信都会在没有身体的情况下出现。如果我不使用发送的exit\uextra,一切正常 Intent sendIntent = new Intent(Intent.ACTION_VIEW); sendIntent.setData(Uri.parse("smsto:" + phon
send
后,我想返回应用程序。我添加了额外的内容,如sms\u body
和exit\u on\u sent
。但当我使用它们时,两条短信都会在没有身体的情况下出现。如果我不使用发送的exit\u
extra,一切正常
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);
你可以尝试使用
startActivityForResult(sendIntent, SOME_REQUEST_CODE)
但根据我的经验,它在大多数情况下都不起作用。
我建议改为使用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);
}
根据您的应用程序,您可以在发送MY_ACTION_INTENT(指示消息已实际发送)或sendTextMessage(…)返回后立即执行其余处理
在API级别19中,您可能会发现一些有趣的功能非常有用
希望有帮助。使用SmsManager我必须添加权限,我不想这样做。为什么不使用startActivityForResult?@KanwaljitSingh它不起作用,它不会返回到以前的活动。