Android 以对话框形式发送电子邮件

Android 以对话框形式发送电子邮件,android,android-intent,gmail,Android,Android Intent,Gmail,我正在开发一个带有电子邮件共享的应用程序。我用来启动intent的代码是标准的Android ie: Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, title); emailIntent.setType("application/octet-stream"); emailIntent.pu

我正在开发一个带有电子邮件共享的应用程序。我用来启动intent的代码是标准的Android ie:

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, title);
emailIntent.setType("application/octet-stream");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Hello");

context.startActivity(emailIntent);
问题是,这会全屏启动Gmail应用程序,这是我不想要的。我可以把它变成一个类似于下面iOS的对话框吗?如果没有,它是否已经写好了,或者我需要自己写吗


谢谢

您无法使用发送的操作。通过发送这个意图,你告诉系统自己启动Gmail。您可以在填写一些有用数据的意图中传递“extras”。这是一项功能,你允许用户在可以处理动作发送的应用程序中进行选择,而不是强迫他们使用Gmail


如果您想要一个对话框,您必须先自己编写,然后将收集到的值传递给用户选择的电子邮件程序。

通过触发Intent,您正在启动另一个应用程序。没有mailer(afair)支持任何类型的嵌入,因此您需要编写图片活动本身,然后,一旦用户输入完,抓取其中的内容并执行
ACTION\u SEND
。但是,我建议不要这样做,除非您的用户开始抱怨(我认为这不会发生)。

您可以创建一个具有此布局的对话框,从用户那里获取数据,并使用avaMail API发送实际电子邮件,如本文所示


A好的,答案是:不。你不能改变对外国意图的解释。这就是我所怀疑的,谢谢你的确认。在这种情况下,您将如何将数据从自定义意图传递到电子邮件客户端。您是否不需要再次使用ACTION_SEND,从而形成相同的圆圈?谢谢,这似乎是最接近我需要的