Я пытаюсь создать файл json на устройстве Apple TV, чтобы сохранить некоторые данные, но createFile(...) всегда терпит неудачу, возвращая false. Я пробовал с absolutePath, относительным путем и путем без успеха. Переменная jsonData
прекрасно создается в моей реализации и работает на Симуляторе:
self.fileName = "MyFileTest"
self.directory = .documentDirectory
let documentsDirectory = fileManager.urls(for: self.directory, in: .userDomainMask)[0]
self.fullyQualifiedPath = documentsDirectory.appendingPathComponent(self.fileName).appendingPathExtension("json").path
do {
let jsonData = try convertObjectToData(data: dataForJson)
if !fileManager.createFile(atPath: fullyQualifiedPath, contents: jsonData as Data, attributes: nil) {
print("File Manager failed at createFile")
throw FileErrors.FileNotSaved
}
} catch {
print("Unable to create json file \(error.localizedDescription)")
throw FileErrors.FileNotSaved
}
Здесь createFile терпит неудачу и возвращает false, и выводится следующее:
Ошибка диспетчера файлов при создании файла. Невозможно создать файл json. Операция не может быть завершена. (TestAppTVOS.FileSaveHelper.(FileErrors в _70D0A1275AC2AFFFA4ED048E3A809030) ошибка 1.)
Значение переменной fullQualifiedPath:
/var/mobile/Контейнеры/Данные/Приложение/00DCB709-5EC6-40FC-BB21-D797EB4FE2F5/Документы/MyFileTest.json
Не знаете, что делать с этим сообщением об ошибке «Операция не может быть завершена» и «Ошибка 1»? Есть идеи, как заставить это работать правильно для Swift 3?