0

我正在尝试完成以下任务:

  1. 从使用 Mac 放置的 iCloud 驱动器中读取 .csv 文件。这适用于 UIDocumentPickerViewController。
  2. 在 iOS 中处理文件 - 这工作正常
  3. 在 iCloud 驱动器中为我的应用程序创建文档目录,使其在 Mac 上可见 - 不工作
  4. 将处理后的文件写入/保存到 UbiquityContainer 中,使其在 Mac 上可见。- 不工作。

我有这个设置来创建文档目录。

    override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view, typically from a nib.
    if let iCloudDocumentsURL = FileManager.default.url(forUbiquityContainerIdentifier: nil)?.appendingPathComponent("Documents") {
        if (!FileManager.default.fileExists(atPath: iCloudDocumentsURL.path, isDirectory: nil)) {
            do {
                try FileManager.default.createDirectory(at: iCloudDocumentsURL, withIntermediateDirectories: true, attributes: nil)
                print("Created Directory at \(iCloudDocumentsURL)")
            } catch {
                print("Error Creating Directory: \(error)")
            }
        }
        print("\(#function):\(#line) iCloudDocumentsURL =\n\(iCloudDocumentsURL)")
        self.iCloudDocumentsURL = iCloudDocumentsURL
    }

我打开了权利和一个 plist 条目,如下所示:

<dict>
<key>iCloud.com.mycompany.SubLunch</key>
<dict>
    <key>NSUbiquitousContainerIsDocumentScopePublic</key>
    <true/>
    <key>NSUbiquitousContainerName</key>
    <string>SubLunch</string>
    <key>NSUbiquitousContainerSupportedFolderLevels</key>
    <string>One</string>
</dict>

我可以看到文件被写在这里:

file:///private/var/mobile/Library/Mobile%20Documents/iCloud~com~mycompany~SubLunch/Documents/LRA%20Order%20Detail%20Results.csv

但是我的 Mac 上的 iCloud Drive 上没有任何变化。

我曾经brctl log --wait --shorten查看活动,我可以看到输出。

我在这里做错了什么?

提前致谢

4

1 回答 1

0

我找到了答案,完成修改后,您需要将文件导出到服务器。然后,您将获得文档选择器,以允许您选择将其存储在 iCould Drive 中的位置。

于 2016-08-19T03:01:18.370 回答