Ios 迅捷可以';看不到保存到iCloud驱动器的文件
我正在尝试将应用程序中的文件发送到iCloud Drive中的目录。我的代码出现了 正在工作,因为我可以写文件和读取文件,但我看不到文件 在我的云硬盘里。我一定错过了一些基本的东西 创建url:Ios 迅捷可以';看不到保存到iCloud驱动器的文件,ios,xcode,icloud,Ios,Xcode,Icloud,我正在尝试将应用程序中的文件发送到iCloud Drive中的目录。我的代码出现了 正在工作,因为我可以写文件和读取文件,但我看不到文件 在我的云硬盘里。我一定错过了一些基本的东西 创建url: var containerUrl: URL? { return FileManager.default.url(forUbiquityContainerIdentifier: nil) } 这是我在info.plist中添加的密钥 我通过一个按钮
var containerUrl: URL? {
return FileManager.default.url(forUbiquityContainerIdentifier: nil)
}
这是我在info.plist中添加的密钥
我通过一个按钮调用:
self.writeTestFile(data: self.localJSONData!)//I know this file exists
self.readTheTestFile()
写作:
func writeTestFile(data: Data) {
//local
let url = self.getDocumentsDirectory().appendingPathComponent("mysql.dat")
do {
try data.write(to: url, options: .atomic)
let input = try Data(contentsOf: url)
print(input)//correctly shows the file size
} catch {
print("writeTextFile \(error.localizedDescription)")
}
//iCloud
guard let cloudURL = FileManager.default.url(forUbiquityContainerIdentifier: nil) else {
print("failed to get cloudURL")
return
}
DispatchQueue.global().async {
do {
try data.write(to: cloudURL.appendingPathComponent("mysql.dat"), options: .atomic)
print("cloudURL is: \(cloudURL)")
} catch {
print("write to cloudURL \(error.localizedDescription)")
}
}//queue
}//test file
然后我查找文件:
func readTheTestFile() {
guard let cloudURL = (FileManager.default.url(forUbiquityContainerIdentifier: nil)?.appendingPathComponent("mysql.dat"))! else {
print("failed to get cloudURL")
return
}
do {
let x = try Data(contentsOf: cloudURL)
print("x in readTheTestFile: \(x)") // this shows the same byte count
} catch {
print("error reading mysql.dat \(error.localizedDescription)")
}
}//read
任何指导都将不胜感激。Xcode版本12.1(12A7403)iOS 14.1