我试图通过意图发送短信,我想在消息中添加一个正文.用户按发送后我想返回应用程序.我添加了额外的sms_body和exit_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);
解决方法
你可以尝试使用
startActivityForResult(sendIntent,SOME_REQUEST_CODE)
但根据我的经验,它大部分时间都不起作用.
我建议改为使用SmsManager.
SmsManager smsMgr = SmsManager.getDefault(); if(smsMgr != null){ PendingIntent sentIntent = PendingIntent.getBroadcast( getActivity().getApplicationContext(),new Intent(MY_ACTION_INTENT_SENT),0); smsMgr.sendTextMessage(phone,null,message,sentIntent,null); }
根据您的应用程序,您可以在发送MY_ACTION_INTENT(指示实际已发送消息)时或在sendTextMessage(…)返回后立即执行剩余的处理.
从API Level 19开始,您可能会发现一些有用的功能http://developer.android.com/reference/android/provider/Telephony.html
希望能帮助到你.