2016-03-30 21 views
0

我为一家公司开发了一款应用程序。该应用程序生成施工现场报告,可以导出并通过电子邮件发送。一切都很好,但他们刚刚回到我说,一旦附加的pdf变得相当大(> 10mb),电子邮件将不会从某些设备发送,而是保存到发件箱,并显示错误“被服务器拒绝”。带有pdf附件的iOS电子邮件'被服务器拒绝'

我似乎无法自己重现此错误,它适用于我尝试过的所有设备/模拟器。

产生错误的设备都是安装了最新iOS版本的iPad Air 1(9.3)。

有关此错误的解决方案和原因的任何想法?

他们需要用他们的电子邮件更正一些设置吗?

在此先感谢。

回答

0

经过大量研究和失败尝试,我终于解决了这个问题。

我把我的图像从核心数据放入html中,图像以二进制数据形式存储。这些数据被转换为base64字符串,因此可以将其添加到html中,转换为pdf并通过电子邮件发送/打印。

阅读了关于图像和核心数据之后,我发现将二进制数据存储在核心数据中并不是一个推荐的想法,更好的解决方案是将图像本地保存到应用程序中并存储对图像的引用在核心数据即文件路径中。这解决了问题,现在报告没有问题地发送。

0

我认为它是相当安全的假设它只是某些收件人的邮件系统的情况下拒绝一定大小的附件。我建议手动发送附件大于10MB的电子邮件到受影响的电子邮件地址可能有助于明确它不是应用程序本身固有的问题。

或者,如果可能的话,发送较小的PDF文件当然是有意义的。如果PDF包含JPEGS,则试验图像大小和压缩比以尝试保持低于10MB是有意义的。

+0

感谢@Markus,但无论您发送的是什么电子邮件,它是hotmail,gmail等都无所谓 –

+1

在这些情况下,它可能是传出邮件服务器的问题吗? –

+0

我在想,作为一种可能性,但不知道要寻找什么来找出问题。有任何想法吗? –