当我将文件保存到iCloud时,当应用程序关闭时,该文件不再存在。
这是我的代码,在应用程序关闭之前,打印结果会在打印语句旁边显示注释:
FileManager.default.createFile(atPath: saveToURL.path, contents: dataImage, attributes: nil)
print("??? \(saveToURL.path) imagePicker file exists=", FileManager.default.fileExists(atPath: saveToURL.path)) // ??? /private/var/mobile/Library/Mobile Documents/iCloud~us~gnolaum~TrialVisionBoard/12BF0AB3-C0EB-4D13-A37E-7853839225BD.jpg cellForRowAt file exists= false
请注意,当代码在创建文件后检查文件是否存在时,会检出true。
以下是应用程序再次启动后的代码:
print("??? \(mediaURL.path) cellForRowAt file exists=", FileManager.default.fileExists(atPath: mediaURL.path)) // ??? /private/var/mobile/Library/Mobile Documents/iCloud~us~gnolaum~TrialVisionBoard/12BF0AB3-C0EB-4D13-A37E-7853839225BD.jpg cellForRowAt file exists= false
请注意,URL路径与应用程序关闭前的路径相同,但应用程序重启后的文件不存在。
我怀疑我需要为我创建的文件设置正确的属性。有人知道我到底该怎么做才能使文件保存在iCloud中吗?
其他内容:
当我在iPhone 5 Simulator上运行该项目时,我注意到我没有这个问题。当我在iPhone 5设备上运行项目时,会发生问题。
答案 0 :(得分:0)
我完全错过了这个问题。我发现我需要按照本文档的指示采用完全不同的方法来处理iCloud存储: