我正在尝试启动Intent来发送电子邮件.所有这一切都有效,但当我尝试实际发送电子邮件时,会发生一些"奇怪"的事情.
这是代码
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("image/jpeg");
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Photo");
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://sdcard/dcim/Camera/filename.jpg"));
sendIntent.putExtra(Intent.EXTRA_TEXT, "Enjoy the photo");
startActivity(Intent.createChooser(sendIntent, "Email:"));
Run Code Online (Sandbox Code Playgroud)
因此,如果我使用Gmail菜单上下文启动它会显示附件,让我输入电子邮件的来源,并编辑正文和主题.没什么大不了.我点击发送,它发送.唯一的事情是附件不会被发送.
所以.我想,为什么不尝试使用电子邮件菜单上下文(对于我手机上的备份电子邮件帐户).它显示附件,但在身体或主体中根本没有文字.当我发送它时,附件发送正确.这会让我相信一些事情是错误的.我是否需要在Manifest发布中获得新的权限才能发送带附件的电子邮件?我究竟做错了什么?
我试图在Android手机上使用本机电子邮件客户端发送电子邮件.
我试过以下方法为邮件添加附件...
方法 - 1
Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("image/jpeg");
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://sdcard/abc.jpg"));
Run Code Online (Sandbox Code Playgroud)
方法2
将图像作为正文内容发送---
sendIntent.putExtra(Intent.EXTRA_TEXT, "<HTML><BODY><b><IMG**SRC=
\"data:image/jpeg;base64," + <imagepath> + "\"**alt = \"**pleaseview this
image\"/></b></BODY></HTML>");
Run Code Online (Sandbox Code Playgroud)
我可以手动成功附加图像,但当我尝试附加并以编程方式发送它时,邮件是在没有附件的情况下发送的.
如果有办法使用电子邮件客户端以编程方式发送附件,请告诉我