似乎当您发送带有附件的电子邮件时,其中的所有内容都被包装为多部分/混合消息,并且所有内容都编码为Base64,包括邮件正文和签名!所以它看起来像……
Content-Type: multipart/mixed;
boundary="_003_81E0DB72B1F643FBAA40D9BCB66A11E4_"
--_003_81E0DB72B1F643FBAA40D9BCB66A11E4_
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
SGkgTW9tIQ==
(那是“嗨妈妈!”编码为Base64)
--_003_81E0DB72B1F643FBAA40D9BCB66A11E4_
Content-Type: application/octet-stream; name="MyAttachment.xlsx"
Content-Description: MyAttachment.xlsx
Content-Disposition: attachment; filename="MyAttachment.xlsx"; size=15262
Content-Transfer-Encoding: base64
UEsDBBQABgAIAAAAIQA3Mb2RgAEAAIQFAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAAC
SNIP
AF81AABkb2NQcm9wcy9hcHAueG1sUEsFBgAAAAANAA0AaAMAACA4AAAAAA==
--_003_81E0DB72B1F643FBAA40D9BCB66A11E4_
Content-Type: text/html; name="ATT00001.htm"
Content-Description: ATT00001.htm
Content-Disposition: attachment; filename="ATT00001.htm"; size=91
Content-Transfer-Encoding: base64
PGh0bWw+PGJvZHkgYmdjb2xvcj0iI0ZGRkZGRiI+PGRpdj48L2Rpdj48ZGl2Pjxicj48YnI+U2VudCBmcm9tIG15IGlQYWQ8L2Rpdj48L2JvZHk+PC9odG1sPg==
(那是
< html>< body bgcolor =“#FFFFFF”>< div>< / div>< div>< br>< br>从我的iPad发送< / div>< / body>< ; / HTML>
作为Base64)
--_003_81E0DB72B1F643FBAA40D9BCB66A11E4_--
即使您转到设置>>邮件,通讯录,日历和删除签名,您仍然会附加一个空的HTML文档.
正确的长期答案可能是将此作为错误提交给Apple并等待.与此同时,如果这真的是一个showstopper bug,我建议你自己生成整个多部分/混合电子邮件正文,没有签名,看看是否愚弄MFMailComposeViewController认为电子邮件没有附件.就个人而言,我想我只是想告诉我的顾客. 🙂