概括:
邮件在发送时似乎将文档包展平。
背景:
我正在使用子类 UIDocument 和 FileWrappers 来提供一个文档包,用于存储我的文档的元数据、数据和缩略图预览。我已经做了必要的 UTI 咒语,以使文档包在本地工作。
我通过 UIActivityViewController 添加了共享支持。我正在使用其 fileURL 发送文档。在使用往返测试我的文档包时,一切似乎都运行良好:导出和导入运行良好......几乎。
问题:
使用邮件附件,文档包以半展平状态到达(导入不再将其视为文档包)。在检查文档时(在我的 Mac 上的 TextWrangler 中),仍然有目录结构,我可以看到元数据、数据、缩略图,但 FileManager 看不到它。
在发送电子邮件之前,我尝试将邮件附件共享回我的应用程序(通过复制到应用程序),并且效果很好。
问题:
跨邮件服务器移动文档包时,Mail 是否有异常行为?
我希望最终支持 Open in Place 和 Files 所以我真的不想将共享文档包装在 Data blob 等中。有谁知道这里发生了什么以及如何在将我的文档保存为包的同时处理它?
更新: 我已经确认 Apple Mail 正在压缩包,但没有更改扩展名。所以收到的文件是原始文件的 zip。我如何确保 Apple Mail 将其视为一个包裹并且不会压缩?而且,如果我不能,我如何识别正在导入的文件是没有 zip 扩展名的 zip?