【问题标题】:Custom file types with iOS Document Interaction Programming使用 iOS 文档交互编程自定义文件类型
【发布时间】:2012-01-25 05:56:20
【问题描述】:

我了解文档交互编程和 UIDocumentInteractionController 的基础知识,并且已经在我的应用程序中使用它。但是,我在使用自定义文件类型的具体细节方面遇到了麻烦。我在任何地方的 Apple 文档中都找不到这个问题。

我的应用使用它自己的文件类型和独特的扩展名。文件本身只是 plists (xml),但我希望设备将文件视为只能在我的应用程序中打开。最初我实现了 Document Interaction 的东西,以便在我让它工作时将它们视为 XML,但现在我希望它把它们视为需要移交给我的应用程序的二进制文件。

目前,如果您在电子邮件附件中有我的一个文件,iOS 会首先显示 QuickLook(它只是将 xml 的所有文本内容喷出),然后您才能选择打开方式。同样,如果我的一个文件是用 Safari 打开的,Safari 只会显示 XML,根本不给你在我的应用程序中显示它的选项。

那么如何让 iOS 不将我的文件视为 XML?我已经更改了 info.plist 中的“Conforms to UTI”值和“public.mime-type”值,但似乎没有任何效果。

非常感谢任何提示。

【问题讨论】:

    标签: ios uidocumentinteraction


    【解决方案1】:

    据我了解 Apple 的 UIT 概念,您不能仅仅更改文件扩展名来更改文件的潜在 UIT。如果文件包含 XML 数据,其他应用程序以及内部应用程序可能会识别您的内容并将其在内部显示为 XML。

    尝试使用 NSPropertyListSerialization NSPropertyListBinaryFormat_v1_0 存储您的 Plist(然后您可以读取 XML)

    当你这样做没有成功时,为什么不试试这个:

    1. 之后使用 zlib 将 XML plist 压缩为压缩文件。
    2. 制作一个“独特”的文件扩展名 (<file>.myappname)

    这应该“隐藏”其他应用和快速查看。

    告诉我其中一种方法是否对你有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多