我正在尝试完成以下任务:
- 从使用 Mac 放置的 iCloud 驱动器中读取 .csv 文件。这适用于 UIDocumentPickerViewController。
- 在 iOS 中处理文件 - 这工作正常
- 在 iCloud 驱动器中为我的应用程序创建文档目录,使其在 Mac 上可见 - 不工作
- 将处理后的文件写入/保存到 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
查看活动,我可以看到输出。
我在这里做错了什么?
提前致谢