Sending HTML email intents without having &#

2020-07-02 11:26发布

Note: I know there are a lot of similar questions on SO. However, I am not trying to inline these images, I just want the html to stay as is.

It seems like the normal way to send html emails through an intent is to use Html.fromHtml(String)

For example:

Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("text/html");
intent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
intent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml(htmlString));
startActivity(intent);

However, as it states in its documentation, it replaces all tags with a special character for use with an ImageGetter.

I do not want to inline and attach these images. I just want the img tags to stay as is in the html. I do not need to attach the images.

For example, I want: <img src="http://www.somedomain.com/somewebsite/someimage.jpg" /> to stay that way.

Is this possible?

Thanks

2条回答
SAY GOODBYE
2楼-- · 2020-07-02 11:37

Standard Compliant eMail Clients will always strip img tags, until the user grants permission otherwise.

Images in emails can identify your computer on the server from they are being requested from, thus its a security measure and will stay like that until a new, better system is created.

查看更多
▲ chillily
3楼-- · 2020-07-02 11:58

Are you sure you don't just want the following?

intent.putExtra(android.content.Intent.EXTRA_TEXT, htmlString);

Seems odd to attach a Spanned to the intent rather than just handing over the HTML itself.

查看更多
登录 后发表回答