我有和app需要发送带附件的电子邮件。 这个程序包含很多活动。在一项活动中,我使用以下意图发送电子邮件: startActivityForResult(Intent.createChooser(emailIntent," Email"),EMAIL_REQUEST);
这很好用。电子邮件已发送。 (注意:永远不会调用onActivityResult。我可以忍受这个,它并不重要)
问题:
发送电子邮件后,应用程序会加载/转到启动/初始活动,而不是发送电子邮件的活动。
如何返回发送电子邮件的活动?
一些观察: 我在启动/初始活动的onRestart,onPause和onCreate方法中添加了一些Toast。发送电子邮件后,将显示启动活动,但不会调用任何事件。
答案 0 :(得分:0)
如果您要发送电子邮件,然后返回堆叠中的上一个活动,则只需在完成发送电子邮件后拨打finish();
即可。这将完成当前Activity
,并返回堆栈中的第二个顶部Activity
。
更新:
在发送电子邮件后添加此代码
Intent intent = new Intent(this, YourActivity.class);
startActivity(intent);
答案 1 :(得分:0)
我有完全相同的问题。在我的案例中发生的事情是,当我从我的活动中调用电子邮件Intent时,正在调用活动OnPause
。问题是在OnPause函数代码的末尾我有finish()
,导致活动被破坏!
删除finish()
修复了问题,虽然我认为我还有一些工作要做,因为我认为我正在调用finish()
将包信息传递回调用活动。我以后必须要看看......