У меня есть приложение, звук магнитофона, где записанные звуки сохраняются, как это:Swift - Сохранение данных в каталоге с использованием NSSearchPathForDirectoriesInDomains, но каталог всегда изменяется?
let dirPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory,.UserDomainMask,true)[0] as String
var pathArray = [dirPath, recordingName]
let filePath = NSURL.fileURLWithPathComponents(pathArray)
Все путь к файлу URL, которые хранятся в массиве (введен в NSUserDefaults) для легкого доступа.
Я могу воспроизводить файлы, если они воспроизводятся в том же режиме, что и при их записи, но открытие и закрытие резервной копии симулятора приведет к неправильному пути к файлу (поскольку папка приложения-id в ~/Библиотека/Разработчик/CoreSimulator/Devices/Device-ID/data/Container/Data/Application/app-id-folder /Documents/filename.wav изменит имя). Как я могу изменить массив, содержащий URL-адрес файла, для обновления имени папки приложения-id при каждом запуске приложения? (в настоящее время это всего лишь массив строк, которые при необходимости преобразуются в тип NSURL). Или даже проще, можно ли сохранить в домашний каталог пользователей или где-нибудь, где вам не нужно заниматься сменой имен папок?
Почему бы вам не просто перечислить файлы папок документов? –
как это сделать? – ZhouW
Вы не должны хранить полный путь в 'NSUserDefaults'. Просто сохраните относительный каталог в папке документов, а затем во время выполнения добавьте этот относительный путь к пути, основанному на 'NSSearchPathForDirectoriesInDomains'. – Rob