打开主应用程序以从文件扩展名预览

时间:2019-04-22 09:11:39

标签: ios swift ios-extensions files-app

我正在开发带有文件应用程序扩展名的基于文档的应用程序。在我的应用程序中,我正在预览自定义文件,因此在文档类型和导出的UTI中都注册了我的自定义UTI。

DocumentType:

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeIconFiles</key>
        <array/>
        <key>CFBundleTypeName</key>
        <string>Ink file</string>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>com.inkedfile.ink</string>
        </array>
    </dict>
<array>

和导出的UTI:

<key>UTExportedTypeDeclarations</key>
<array>
    <dict>
        <key>UTTypeConformsTo</key>
        <array>
            <string>public.data</string>
        </array>
        <key>UTTypeDescription</key>
        <string>Ink file</string>
        <key>UTTypeIconFiles</key>
        <array/>
        <key>UTTypeIdentifier</key>
        <string>com.inkedfile.ink</string>
        <key>UTTypeTagSpecification</key>
        <dict>
            <key>public.filename-extension</key>
            <array>
                <string>ink</string>
            </array>
        </dict>
    </dict>
  <array>

但是当我选择自定义文件时,在本机文件应用程序上 func urlForItem(withPersistentIdentifier identifier: NSFileProviderItemIdentifier) -> URL?被呼叫,但是由于func startProvidingItem(at url: URL, completionHandler: @escaping (Error?) -> ())没有被呼叫,我无法显示预览。

注意:当我尝试使用PDF文件时,两者都可以正常工作(已知的UTI可以正常工作)

0 个答案:

没有答案