【问题标题】:email: Which are Intent.ACTION_SEND return values?电子邮件: Intent.ACTION_SEND 返回值是什么?
【发布时间】:2017-02-24 08:24:16
【问题描述】:
当我启动时
startActivity(new Intent(Intent.ACTION_SEND))
用于发送电子邮件,这是我可以在
中测试的返回值
onActivityResult(){...}
?
因为(例如):
- 如果用户点击su“取消”退出邮件客户端,我想执行methodX(...)
- 否则我将执行methodY(...)
但要执行此操作,我需要知道 Intent 返回的值。有可能吗?
【问题讨论】:
标签:
android
email
android-intent
return-value
【解决方案1】:
我不认为这是指定的。
您无法确定最终哪个 Activity 会处理您的意图,并且每个 Activity 可能会针对相同的逻辑结果返回不同的 resultCode。
在我的测试中,无论结果如何,模拟器中的短信应用都返回零。
【解决方案2】:
我知道这有点麻烦,但为什么不使用 H-API(人类应用程序编程接口)来确定它是否已发送。弹出一个对话框并询问他们“您发送电子邮件了吗?”或“电子邮件发送正常吗?”。或者在呼叫视图“已发送电子邮件?”中添加一个必需的复选框。并确保在允许用户继续之前对其进行检查。
我们试图“拯救”用户,使其免于尽可能多地进行交互,但我不相信这一定是他们想要的。并非所有解决方案都必须通过技术变通方法来解决。开发人员有时会忘记这一点。