【问题标题】:iOS - Change iCloud container nameiOS - 更改 iCloud 容器名称
【发布时间】:2019-08-01 00:18:26
【问题描述】:

在我的开发阶段,我一直在使用 iCloud 容器,没有任何问题。 到目前为止,容器应用程序有一个默认的 NSUbiquitousContainerName,使用应用程序的捆绑包。

现在我想为 iCloud Drive 中出现的文件夹取一个更友好的名称,因此我将 NSUbiquitousContainerName 值更改为我的应用程序名称。

<key>NSUbiquitousContainers</key>
<dict>
    <key>container-id</key>
    <dict>
        <key>NSUbiquitousContainerIsDocumentScopePublic</key>
        <true/>
        <key>NSUbiquitousContainerName</key>
        <string>AppName</string>
        <key>NSUbiquitousContainerSupportedFolderLevels</key>
        <string>Any</string>
    </dict>
</dict>

然后我修改了内部版本号,并运行了该应用程序。 我使用以下文件夹导出文档:

FileManager.default.url(forUbiquityContainerIdentifier: nil)?.appendingPathComponent("Documents")

文档仍然导出到旧文件夹,而不是新文件夹。 如何重命名容器的文件夹?

【问题讨论】:

    标签: ios icloud icloud-drive


    【解决方案1】:

    我在使用 iOS 13 时遇到了同样的问题。旧文件夹名称似乎已被缓存(就像应用程序图标图像用作 iCloud 文件夹图标上的叠加层一样)。

    在 plist 中更改 NSUbiquitousContainerName 在使用我已经使用旧容器名称的 iCloud 帐户时没有影响,但是在使用 iCloud 帐户时我得到了新的文件夹名称(和新的应用程序图标)以前从未连接到应用程序。

    即使在新设备上运行应用程序并从 iCloud 中删除旧文件夹时,这种缓存也会持续存在。

    【讨论】:

    • 欢迎您,@Mike Kaufman 在 StackOverflow 上,非常感谢您提供信息。但是,您的回答并不能解决问题。如果您发布答案,那就太好了。更多详情请访问stackoverflow.com/help/how-to-answer
    【解决方案2】:

    如果更改容器名称,则应增加内部版本号。

    【讨论】:

      【解决方案3】:

      我设法解决了创建新容器并使用该容器而不是默认容器的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-09-23
        • 1970-01-01
        • 2023-03-06
        • 1970-01-01
        • 2022-06-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多