Обратите внимание, что использование data:
URI не будет работать для всех почтовых клиентов. Те, кто использует IE в качестве движка рендеринга, вообще не поддерживают его, если не установлен IE8, и даже тогда согласно Википедии , data:
URI ограничены максимум 32 КБ.
Самый простой способ заставить это работать - поместить изображение на ваш собственный сервер и сослаться на него, используя полный http: // URI. Если по какой-то причине вы не можете этого сделать (возможно, изображение создается как часть использования вашего приложения), то вы можете попробовать присоединить изображение в качестве части MIME и сослаться на него из HTML.
Мой почтовый клиент не загружает удаленные изображения автоматически, но в спаме все еще есть изображения, когда я его открываю. Вот как это работает:
Прикрепите изображение к вашей почте, как предложено Йонелем. Каким-то образом вам нужно также добавить заголовок Content-ID:
к этой части. Содержимое этого заголовка затем используется в качестве атрибута src
на вашем изображении. Мое спам-сообщение выглядит так в HTML:
<img src="cid:image001.jpg@01CACC43.7035CE50">
Подставка вложения выглядит так:
Content-Type: image/jpeg;
name="image001.jpg"
Content-Transfer-Encoding: base64
Content-ID: <image001.jpg@01CACC43.7035CE50>
Глядя на документацию для addAttachmentData:mimeType:fileName:
, я предполагаю, что вы не сможете заставить это работать, и вам придется рассмотреть возможность отправки электронной почты с использованием необработанного SMTP.