Как сохранить файл в каталоге «Загрузки»IOS

Программируем под IOS
Anonymous
Как сохранить файл в каталоге «Загрузки»

Сообщение Anonymous »

Моему приложению необходимо сохранять mp3 в каталог загрузок iPhone
Я попробовал этот код:

Код: Выделить всё

  func saveTrack(trackurl: String, name: String) {
let url = URL(string: trackurl)!

// create directory path
let dir_path = FileManager.default.urls(for: .downloadsDirectory, in: .userDomainMask).first!
.appendingPathComponent("tiktokMusic", isDirectory: true)

// check if directory exists
if !FileManager.default.fileExists(atPath: dir_path.path) {
print("file doesn't exist atPath: \(dir_path.path)")
do {
try FileManager.default.createDirectory(atPath: dir_path.path, withIntermediateDirectories: true)
}
catch let error {
print("Error creating \(dir_path.path) --- \(error))")
}
}

let trackPath = dir_path.appendingPathComponent("track.mp3")

do {
let data = try? Data(contentsOf: url)
if let data {
try data.write(to: trackPath)
print("Saved")
} else {
print("data = nil")
}
} catch let error {
print("Error: \(error)")
}
}
Но это не работает
Ошибка:

Код: Выделить всё

"You don’t have permission to save the file “tiktokMusic” in the folder “Downloads”
Я добавил все соответствующие сведения о конфиденциальности в info plst, но ошибка все равно остается.
.documentDirectory работает хорошо, но как пользователь может найти и использовать скачал мп3?
p.s. я знаю об активности основного потока, разберусь с этим позже
Помогите, я изучил весь интернет!

Подробнее здесь: https://stackoverflow.com/questions/791 ... -directory

Вернуться в «IOS»