Как преобразовать значение userdefault в URL? - PullRequest
0 голосов
/ 01 апреля 2019

Я пытаюсь получить URL-адрес из ранее сохраненной пользователем UserDefault, но при синтаксическом анализе его по URL-адресу возникает ошибка: «Не удается преобразовать NSINLINEDATA в NSURL»

Я попытался разобрать его в String, а затем в URL, но он дает только nil

Заданное значение

    let videourl = info["UIImagePickerControllerReferenceURL"] as? URL
    if let videoURL = videourl{

       defaults.set(videourl,forKey: "LullabyURL")
    }

Получить значение

    let videoURL = defaults.value(forKey: "LullabyURL")
    let newStr = String(data: videoURL as! Data, encoding: .utf8)
    let vu = URL.init(string:newStr ?? "nil")
    let player = AVPlayer(url: vu!)

1 Ответ

1 голос
/ 01 апреля 2019

Вы можете использовать встроенный метод func url(forKey defaultName: String) -> URL? для получения URL, как показано ниже,

   if let defaultsUrl = UserDefaults.standard.url(forKey: "LullabyURL") {
        let player = AVPlayer(url: defaultsUrl)
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...