我们有两个服务器应用程序(一个.NET / ASP Web应用程序,另一个是本地Windows应用程序)生成PDF,然后通过电子邮件发送给Exchange 2010上的用户。应用程序通过SMTP将电子邮件发送到Exchange服务器,而我们的iPhone / iPad用户通过activesync接收他们的电子邮件。
几乎所有由networking应用程序生成的PDF以及Windows应用程序生成的许多PDF无法在iPhone或iPad上打开。 点击附件会显示屏幕上方显示的PDF文件的名称在顶部,但屏幕底部是完全灰色的。
我发现的一件事是,iPad上的附件是uuencoded。 将附件转发到另一个电子邮件地址显示uuencoded格式。 这里是一个示例:
begin 600 unknown M)5!$1BTQ+C0-)>+CS],-"C8@,"!O8FH\/"](6S8U-B`Q-#A=+TQI;F5A<FEZ M960@,2]%(#DQ-#8O3"`Q,S`Q.2].(#$O3R`Y+U0@,3(X-3,^/@UE;F1O8FH- ---snip--- M,C8T,"`P,#`P,"!N#0IT<F%I;&5R#0H\/"]3:7IE(#8^/@T*<W1A<G1X<F5F .#0HQ,38-"B4E14]�H` ` end
而正常版本的文件看起来像一个正常的PDF:
%PDF-1.4 %âãÏÓ 6 0 obj<</H[656 147]/Linearized 1/E 9698/L 13571/N 1/O 9/T 13405>> ---snip--- trailer <</Size 6>> startxref 116 %%EOF
所以我认为问题在于附件在某处被双重编码,或者iPhone无法识别该附件是否被解码并且不解码。
从哪里开始解决这个问题的任何build议?
iPhone和iPad似乎不支持uuencoded附件。