Swift - Как узнать, был ли файл успешно сохранен в .cachesDirectory - PullRequest
1 голос
/ 13 июля 2020

У меня есть .mp4 видео, сохраненное в Firebase, и я хочу сохранить его в .cachesDirectory. Я хочу убедиться, что он сохранен, и попытался использовать блок do-try, но он его не принял:

В выражении 'try' не выполняются вызовы функций бросания.

Как еще я могу проверить, был ли файл успешно сохранен в .cachesDirectory?

let fbStr = "https://firebasestorage.googleapis.com/v0/b/myApp.appspot.com/o/abcd%277920FHqFBkl7D6j%2F-MC65EFG_qT0KZbdtFhU%2F48127-8C29-4666-96C9-E95BE178B268.mp4?alt=media&token=bf85dcd1-8cee-428e-87bc-91800b7316de"
guard let url = URL(string: fbStr) else { return }
let videoData = NSData(contentsOf: url)
let cachesDir = FileManager.default.urls(for: .cachesDirectory, in: .userDomainMask).first!

do {
    try videoData?.write(toFile: cachesDir.path, atomically: true)
} catch {
    print("video wasn't saved to cachesDirectory") 
}

1 Ответ

1 голос
/ 13 июля 2020

Используйте метод write(toFile:) без параметра automically.

do {
    try videoData?.write(toFile: cachesDir.path, options: .atomic)
} catch {
    print("video wasn't saved to cachesDirectory")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...