相关疑难解决方法(0)

使用Intent的Android多个电子邮件附件

我一直在研究Android程序,使用Intent发送包含附件(图像文件,音频文件等)的电子邮件ACTION_SEND.电子邮件只有一个附件时,该程序正在运行.我曾经Intent.putExtra(android.content.Intent.EXTRA_STREAM, uri)将指定的图像文件附加到邮件中,并且工作正常,邮件可以通过Gmail传送.但是,当我尝试通过Intent.putExtra(android.content.Intent.EXTRA_STREAM, uri)多次调用将多个图像附加到同一邮件时,它无法正常工作.电子邮件中没有显示任何附件.

我搜索了SDK文档和Android编程用户组关于电子邮件附件但找不到任何相关信息.但是,我发现有另一个意图常量ACTION_SEND_MULTIPLE(自API级别4起可用)可能符合我的要求.基于SDK文档,它只是声明它向其他人提供多个数据,它的工作方式类似ACTION_SEND,除了数据是多个.但我还是无法弄清楚这个命令的正确用法.我试图声明意图ACTION_SEND_MULTIPLE,然后putExtra(EXTRA_STREAM, uri)多次调用以附加多个图像,但我得到了与之前相同的错误结果,没有任何附件显示在电子邮件中.

有没有人试过ACTION_SEND_MULTIPLE并使用多个电子邮件附件?

email android attachment android-intent

97
推荐指数
4
解决办法
7万
查看次数

如何在电子邮件正文中显示图像?

注意:我不想将图像附加到电子邮件中

我想在电子邮件正文中显示图片,

我已经尝试了HTML图像标记<img src=\"http://url/to/the/image.jpg\">",我得到了输出,你可以在我的问题中看到如何在电子邮件正文中添加图像,所以我累了Html.ImageGetter.

它对我不起作用,它也给了我相同的输出,所以我怀疑是否可以这样做,

我的代码

Intent i = new Intent(Intent.ACTION_SEND);
i.putExtra(Intent.EXTRA_EMAIL,new String[] {"abc@gmail.com"}); 
i.putExtra(Intent.EXTRA_TEXT,
    Html.fromHtml("Hi <img src='http://url/to/the/image.jpg'>",
    imgGetter,
    null));

i.setType("image/png");
startActivity(Intent.createChooser(i,"Email:"));


private ImageGetter imgGetter = new ImageGetter() {

    public Drawable getDrawable(String source) {
        Drawable drawable = null;
            try {
                drawable = getResources().getDrawable(R.drawable.icon);
                drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),
                    drawable.getIntrinsicHeight());
            } catch (Exception e) {
                e.printStackTrace();
                Log.d("Exception thrown",e.getMessage());
            } 
            return drawable;
    }
};
Run Code Online (Sandbox Code Playgroud)

更新1:如果我使用ImageGetter代码TextView我能够获取文本和图像,但我无法在电子邮件正文中看到图像

这是我的代码:

TextView t = null;
t = (TextView)findViewById(R.id.textviewdemo); …
Run Code Online (Sandbox Code Playgroud)

java email android image inline-images

23
推荐指数
1
解决办法
1万
查看次数

base64不显示在android中的电子邮件的图像标记中

我有一个html显示图像为base64:

    <html><body>hello<br/><img style='display:block; width:100px;height:50px;' id='base64image' src='data:image/png;base64,<!-base 64 string-->' /></body></html>
Run Code Online (Sandbox Code Playgroud)

结果是这样的:

在此输入图像描述

但是当我在电子邮件中使用这个时:

Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[]{to});
email.putExtra(Intent.EXTRA_SUBJECT, subject);
email.setType("text/html");
String body = new String("<html><body>hello<br/><img style='display:block; width:100px;height:50px;' id='base64image' src='data:image/png;base64,<!-base 64 string-->' /></body></html>");
email.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(body));
startActivity(Intent.createChooser(email,"Choose an Email client :"));
Run Code Online (Sandbox Code Playgroud)

结果如下:

在此输入图像描述

图像不显示在邮件中.有什么我在这里失踪的.是否有任何限制传递base64数据或其他问题在这里?

email android android-intent

6
推荐指数
1
解决办法
1005
查看次数

如何在Android中发送电子邮件?

如何在Android上以代码形式发送简单的电子邮件?

email android

4
推荐指数
1
解决办法
2万
查看次数