Как воспроизвести видеофайл в AVPlayer вне набора приложений

Как воспроизвести видеофайл, который не входит в комплект моего приложения? Я могу воспроизводить видео в своем комплекте приложений

    @IBOutlet weak var playerView: AVPlayerView!

override func viewDidLoad() {
    super.viewDidLoad()
    let videoUrl = Bundle.main.url(forResource: "captionsSample",  withExtension: "mp4")!
    let item = AVPlayerItem(url: videoUrl)
    let player = AVPlayer(playerItem: item)
    playerView.player = player
}

Но когда я пытаюсь играть с рабочего стола или из другого места, AVPlayer не воспроизводит.

Я хотел бы создать видеоплеер, который воспроизводит видеофайл, как только он будет нажат.

Я также проверил учебник Apple, но он только демонстрирует, как воспроизводить видео в удаленном месте.


person TecHummer    schedule 30.11.2018    source источник
comment
Это зависит от песочницы. Если приложение изолировано, файл должен находиться в контейнере приложения (отличном от пакета).   -  person vadian    schedule 30.11.2018


Ответы (1)


Как предположил @vadian, проблема заключалась в том, что мое приложение было помещено в песочницу. Если вы отключите песочницу, вы сможете читать/записывать любой файл за пределами набора приложений. Это может показаться удобным решением, но не рекомендуется. Рекомендуемым способом было бы оставить sanboxing включенным и добавить необходимые разрешения в ваш файл прав.

person TecHummer    schedule 30.11.2018