无法访问文件,因为没有这样的文件或目录
Unable to access Files, because there is no such file or directory
美好的一天。
我收到一条带有图像的消息 URL。每当我收到图像 URL 时,我都必须通过本地通知显示它。像这样
convenience init(identifier: String,
url URL: URL,
options: [AnyHashable : Any]? = nil) throws
其中提到
The URL of the file you want to attach to the notification.
The URL must be a file URL and the file must be readable by the current process.
This parameter must not be nil.
但是,当我收到消息时,我会先下载它,然后触发本地通知
func downloadImage(from remoteUrl: URL, completion: @escaping(URL?) -> Void) {
URLSession.shared.downloadTask(with: remoteUrl) { localURL, response, error
//move to the directory and return the URL
completion(document directory path I have saved)
}.resumeTask()
}
它成功 returns 本地 URL,并且我能够成功显示通知。
我已经保存了最后一个路径,因为我已经下载了图片。我不想再下载了
但是每当我打开应用程序并想访问下载的文件时,它会出现错误
Error Domain=NSCocoaErrorDomain Code=260 "The operation couldn’t be completed. No such file or directory.
完成以下测试:
两者URL路径相同
我收到通知后下载了容器,通知上有图片,但是在文档目录下没有找到图片。
那么处理这种情况最好的方法是什么?
but didn't find the image in the document directory
因为你没有保存到文档目录。 downloadTask
不稳定。一旦您从完成处理程序 return 删除文件下载到的 URL。如果您不想丢失它,您必须将它复制到一个更安全的位置。
美好的一天。
我收到一条带有图像的消息 URL。每当我收到图像 URL 时,我都必须通过本地通知显示它。像这样
convenience init(identifier: String,
url URL: URL,
options: [AnyHashable : Any]? = nil) throws
其中提到
The URL of the file you want to attach to the notification.
The URL must be a file URL and the file must be readable by the current process.
This parameter must not be nil.
但是,当我收到消息时,我会先下载它,然后触发本地通知
func downloadImage(from remoteUrl: URL, completion: @escaping(URL?) -> Void) {
URLSession.shared.downloadTask(with: remoteUrl) { localURL, response, error
//move to the directory and return the URL
completion(document directory path I have saved)
}.resumeTask()
}
它成功 returns 本地 URL,并且我能够成功显示通知。
我已经保存了最后一个路径,因为我已经下载了图片。我不想再下载了
但是每当我打开应用程序并想访问下载的文件时,它会出现错误
Error Domain=NSCocoaErrorDomain Code=260 "The operation couldn’t be completed. No such file or directory.
完成以下测试:
两者URL路径相同
我收到通知后下载了容器,通知上有图片,但是在文档目录下没有找到图片。
那么处理这种情况最好的方法是什么?
but didn't find the image in the document directory
因为你没有保存到文档目录。 downloadTask
不稳定。一旦您从完成处理程序 return 删除文件下载到的 URL。如果您不想丢失它,您必须将它复制到一个更安全的位置。