我试图在发送电子邮件后开始新的活动 我使用以下内容来调用默认的电子邮件客户端
this.startActivity(Intent
.createChooser(emailIntent, "Send mail..."));
这样可以正常工作,当您发送邮件时,它会启动电子邮件应用程序,并将其重新发送给它开始的活动
然后我想开始一个新活动(主屏幕),然后关闭前一个活动
我插入了以下内容
Intent myIntent = new Intent(view.getContext(), Activity1.class);
startActivityForResult(myIntent, 0);
finish();
这样可行,但电子邮件屏幕隐藏在新活动后面,我必须退出应用程序才能发送电子邮件
有没有办法在发送电子邮件后启动活动?
我使用gmail作为客户端
任何帮助表示赞赏
标记
答案 0 :(得分:0)
不幸的是,我没有找到任何信息,当您使用starActivityForResult()
启动电子邮件客户端时,它会返回一些结果代码,无论用户是发送电子邮件还是取消该操作。 Gmail已发送活动已在您的活动堆栈中启动,因此您最终将开始两项活动,gmail app将作为第二个活动。
答案 1 :(得分:0)
希望这会对你有所帮助
Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL,new String[] { "tony@mail.com"});
email.putExtra(Intent.EXTRA_SUBJECT,"Test");
email.putExtra(Intent.EXTRA_TEXT,"sent a message using for testing ");
email.setType("message/rfc822");
startActivityForResult(Intent.createChooser(email, "Choose an Email client:"),
1);
你需要像下面的onActivityResult方法
protected void onActivityResult(int requestCode,int resultCode,Intent data){
if(requestCode == MY_REQUEST_CODE) { if(resultCode == RESULT_OK) { } else { Intent ingoHome = new Intent(current.this, newclass.class); startActivity(ingoHome); } } finish();
}