9

我为我的 iOS 应用程序开发了一个 iCloud Drive 导出功能,它可以工作。我可以在 Mac OS X 10.11 上的 iCloud Drive 文件夹中的公共 AppContainerFolder 中看到导出的文档。

但在 iOS 上,我只能在 iCloud Drive 应用程序中看到 AppContainerFolder。它已被禁用,我无法打开该文件夹,也无法查看其中的文档。

iOS iCloud Drive 应用中禁用文件夹的图像

从 iCloud Drive 设置中,我可以看到我导出的文件在 iCloud Drive 的那个 AppContainerFolder 中。

iCloud 设置中 AppContainerFolder 的图像

有人对 iCloud Drive 有过这样的问题吗?

我在我的应用程序中使用了两个应用程序容器,一个具有“iCloud.com ...”标识符用于导出,另一个具有“TeamIdentifier.com ...”标识符用于 Ensembles-CoreData 同步。我使用以下方法明确使用容器的 URL:

[[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:@"iCloud.com..."]

我已经尝试只使用 TeamIdentifier-Container,但 AppContainerFolder 的可见性没有变化。

我试图提高 BundleVersion,我使用了 Info.plist NSUbiquitousContainers 设置。我还通过 TestFlight 向外部测试人员提供了 Build,看看它是否与开发设备有关。

我还没有做的唯一一件事是向 AppStore 发布一个带有新 BundleVersion 的新版本,看看它是否与生产性应用程序与开发中的应用程序有关。

欢迎任何提示和提示。

4

2 回答 2

7

经过 Apple Developer Technical Support 的澄清后,我现在能够解决这个问题。

我的应用程序声明了两个导出的 UTI(自己的备份文件),因此当这些 UTI 之外的其他文件保存到该文件夹​​中时,iCloud 容器将默认为未启用(或灰显)。我们的应用程序能够创建 PDF 和 CSV,但这些文件类型未在 info.plist 中声明为“文档类型”,因为我们的应用程序无法显示它们。

将 PDF 和 CSV 文档类型添加到 info.plist 时,iCloud 容器会立即在 iCloud Drive 应用程序中可见。

供您参考,这里是 info.plist 的摘录:

...
<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeIconFiles</key>
        <array/>
        <key>CFBundleTypeName</key>
        <string>Adobe PDF</string>
        <key>CFBundleTypeRole</key>
        <string>Viewer</string>
        <key>LSHandlerRank</key>
        <string>Alternative</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>com.adobe.pdf</string>
        </array>
    </dict>
    <dict>
        <key>CFBundleTypeIconFiles</key>
        <array/>
        <key>CFBundleTypeName</key>
        <string>CSV</string>
        <key>CFBundleTypeRole</key>
        <string>Viewer</string>
        <key>LSHandlerRank</key>
        <string>Alternative</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>public.comma-separated-values-text</string>
        </array>
    </dict>
</array>
...
于 2015-11-06T13:26:32.330 回答
1

为什么我的应用程序未显示在 iCloud Drive 文件夹中的帖子似乎表明您的应用程序需要在公共 iCloud 文件夹完全运行之前获得批准和发布。

于 2015-10-15T09:53:44.673 回答