Как я могу открыть vl c со схемой URL - PullRequest
1 голос
/ 20 июня 2020

Как я могу открыть vl c со схемой URL? В настоящее время у меня есть видеофайл, хранящийся локально с именем video, и я получаю сообщение об ошибке:

         "Unexpectedly found nil while unwrapping an Optional value"  

Код

           let vlcURL = "vlc://video.mp4"
           let vlcItem = ("vlc", URL(string:vlcURL)!)  //i recive the error her

          var installedvideoApps = [("Vlc", URL(string:vlcURL)!)]

           if UIApplication.shared.canOpenURL(vlcItem.1) {
               installedvideoApps.append(vlcItem)
           }

           let alert = UIAlertController(title: "Selection", message: "Select Video App",   
           preferredStyle: .actionSheet)

           for app in installedvideoApps {
               let button = UIAlertAction(title: app.0, style: .default, handler: { _ in
                   UIApplication.shared.open(app.1, options: [:], completionHandler: nil)
               })
               alert.addAction(button)
           }
           let cancel = UIAlertAction(title: "Cancel", style: .cancel, handler: nil)
           alert.addAction(cancel)
           present(alert, animated: true)

1 Ответ

1 голос
/ 20 июня 2020

Попробуйте добавить кодировку к URL с помощью addingPercentEncoding(withAllowedCharacters:).

let vlcURL = "vlc://video.mp4".addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)!
let vlcItem = ("vlc", URL(string:vlcURL)!)
...