我想为用户填充 SMS Intent,然后启动 Intent 并在 SMS 发送后返回我的应用程序以继续执行代码。到目前为止,我使用它来设置 Intent:
Uri uri = Uri.parse("smsto:" + cellNumberEditText.getText().toString());
Intent smsIntent = new Intent(Intent.ACTION_SENDTO, uri);
smsIntent.putExtra("sms_body", smsMessageEditText.getText().toString());
smsIntent.putExtra("exit_on_sent", true);
startActivityForResult(smsIntent,1);
注意我将 Extraexit_on_sent
参数添加到意图中。
然后我当然会抓住onActivityResult
:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1)
{
//Do some post sending work
}
}
问题是,在调试之后,我注意到一旦意图启动,onActivityResult
就会立即触发,而不是在意图关闭之后。此外,即使设置了参数,短信应用程序在发送后也不会关闭。我什至添加android:launchMode="singleInstance"
到我的 Manifest.xml 中。我错过了什么?