【问题标题】:how to open an apple unsupported file in our ipad app如何在我们的 ipad 应用程序中打开苹果不支持的文件
【发布时间】:2012-05-09 06:51:04
【问题描述】:

我需要使用“打开方式”功能在我的 ipad 应用程序中打开 Apple 不受支持的文件。 ".lasso" 中的文件扩展名。我说该文件不受 Apple 支持,因为我在 Apple System-Declared Uniform Type Identifiers. 中找不到它的描述

我试图在 info.plist 中使用CFBundleDocumentTypes 来解决这个问题,但我仍然无法打开它。我在我的 plist 中写了这个:

但是当我尝试从其他应用打开 .lasso 文件时,总是会显示“无法在其他应用中打开此文件”的警报。

有人知道怎么解决吗?

【问题讨论】:

    标签: objective-c ipad info.plist uti


    【解决方案1】:

    您需要为您的文件类型创建自己的 UTI,例如 com.yourcompany.lasso。您的 Info.plist 声称要导出当然已经存在的 public.plain-text UTI。您还将列出您的新 UTI 符合的预先存在的 UTI。您没有在屏幕截图中显示“符合 UTI”键下的内容,但如果 .lasso 文件确实是纯文本,它显然应该是 public.plain-text 。 (如果 .lasso 文件有特定的编码,例如 UTF-8,您应该考虑更具体的编码,例如 public.utf8-plain-text。)

    此外,您应该有一个自定义 MIME 类型,或者根本不使用一个。您不想重新定义“文本”MIME 类型以暗示该类型的所有数据流都是套索文件,是吗?

    为什么要为“LASSO”使用全大写。我假设,在实际使用中,文件将具有小写的扩展名,如“.lasso”。对吧?

    【讨论】:

    • 是的,它.lasso 我会改变它,但.lasso 不是我的,它是另一个应用程序或语言扩展,如果我使用我自己的 UTI,它会找到吗?我找到fileinfo.com/extension/lasso,关于套索
    • 如果扩展名不是您的,那么您不是在导出 UTI,而是在导入一个。理想情况下,您会从原始应用程序中复制导出,然后将其从导出更改为导入。嗯,我浏览了 LassoSoft 的网站。原件是服务器而不是应用程序,因此不会导出 UTI。你可能只是弥补一个。使用您自己的反向域标识符。您无权在 com.lassosoft 下定义一个,如果您这样做了,您可能会与他们现在或将来定义的一个冲突。
    猜你喜欢
    • 2011-09-06
    • 2011-05-25
    • 2011-02-27
    • 1970-01-01
    • 2013-03-11
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    • 1970-01-01
    相关资源
    最近更新 更多