为什么电子邮件中的某些嵌入图像无法加载到iPhone/iPad/iOS上?

gpnt7bae  于 2023-04-08  发布在  iOS
关注(0)|答案(3)|浏览(749)

bounty已结束,回答此问题可获得+50声望奖励,奖励宽限期9小时后结束,bvwidt希望引起更多关注此问题。

我有一个发送HTML电子邮件的应用程序。这些电子邮件包含嵌入的图像(.jpg文件)。图像加载并立即显示在各种电子邮件客户端(Gmail,质子,Outlook(桌面和网络))没有任何问题。
不幸的是,在iPhone/iPad上的邮件应用程序中,图像并不总是加载的。首先,没有图像的指示是可见的,几分钟后,带有问号的正方形是可见的。一些图像被加载,一些没有。我无法识别任何模式。
我试图改变图像并缩小它们的尺寸。
生成的HTML看起来像这样:

[...]

<table id="foo" class="section" width="100%" style="border-spacing: 0; margin: 0; width: 100%" border="0" cellpadding="0">
  <tbody>
    <tr>
      <td class="superTitle" id="-1714697250">
        foo
        <a name="-1714697250"></a>
      </td>
    </tr>
    <tr>
      <td class="image">
        <a href="https://any-url.com/home/link_click.aspx?LinkKey=BTVJg29&amp;i=HiV4d2bjr8MA" target="_blank">
          <img width="100%" alt="" src="https://any-url.com/download/NewsletterItem/1/11050_40863_box.jpg">
        </a>
      </td>
    </tr>

    [...]

  </tbody>
</table>

[...]

我在构建HTML电子邮件方面没有经验,也不是iPhone/iPad开发人员。

enxuqcxy

enxuqcxy1#

最常见的原因是智能手机上的设置被设置为默认禁止下载电子邮件图像。在大多数手机上,默认行为是,如果他们想查看附加到特定电子邮件的图像,他们必须手动下载图像,通常是通过电子邮件客户端中的按钮或设置。
然而,移动的设备上的HTML电子邮件中不显示图像可能还有其他原因。例如,某些电子邮件客户端可能不支持某些图像格式或可能有大小限制3。
希望这对你有帮助:)

blpfk2vs

blpfk2vs2#

电子邮件客户端对HTML和嵌入式图像有不同级别的支持。您可以做的最好的事情就是尝试遵循这些最佳实践。但是,建议在不同的设备上进行测试。
1 -请将电子邮件大小保持在最小值2 -使用base64编码在电子邮件中嵌入图像3 -您的图像应托管在https而不是http站点上

6ioyuze2

6ioyuze23#

Apple Mail通常(通常?)设置为在打开电子邮件时不下载远程图像。这是为了防止垃圾邮件发送者验证您是否具有有效的电子邮件地址并已阅读他们的邮件(他们可以通过嵌入一个带有唯一URL的不可见图像来实现这一点,然后在从服务器检索时记录)。
如果你的电子邮件足够吸引人,用户会习惯点击“加载远程图像”来查看他们缺少的内容,但如果他们不感兴趣,那么你现在的设置就不走运了。
一种解决方法是将图像嵌入到电子邮件中,而不是引用服务器上的图像。这可以通过将图像直接编码为img标记中的base64数据来实现,也可以通过编写具有多部分正文的电子邮件,其中包含图像作为可以从html引用的附加对象(对不起,我不知道这样做的标准,但你可以通过在电子邮件上使用“查看消息源”来解决这个问题,该邮件成功地将图像包含在消息本身中)。

相关问题