所以,由于MPMoviePlayerController即将被弃用,我一直在寻找解决方案。我的当前代码可以正常工作:
moviePlayer = MPMoviePlayerController(contentURL: receivedURL)
moviePlayer!.movieSourceType = MPMovieSourceType.Unknown
moviePlayer!.view.frame = view.bounds
moviePlayer!.scalingMode = MPMovieScalingMode.AspectFill
moviePlayer!.controlStyle = MPMovieControlStyle.None
moviePlayer!.shouldAutoplay = true
view.addSubview((moviePlayer?.view)!)
moviePlayer?.setFullscreen(true, animated: true)
moviePlayer!.play()
我录制了一个视频,在录制完成后,将使用上述代码在新视图中进行回放。但是我知道 MPMoviePlayerController 在 iOS9 中已被弃用,并且我找不到与以上代码类似的可行解决方案。我理解我需要使用 AVPlayer 和 AVPlayerViewController。
我尝试过这个 和其他看起来像它们的解决方案。但它们就是不能像我在上面的代码中那样工作。
我只想录制视频,并在新视图中播放它,就像 Snapchat 一样。
请帮帮我。
添加额外信息:
所以,当我尝试使用这个解决方案(被接受的答案)或这个解决方案(AVPlayer)来修复它时,视图是空白的,没有任何显示。
var player:AVPlayer!
let avPlayerLayer:AVPlayerLayer = AVPlayerLayer(player: player)
avPlayerLayer.frame = CGRectMake(50,50,100,100)
self.view.layer.addSublayer(avPlayerLayer)
player = AVPlayer(URL: receivedURL)
player.play()
如果我尝试使用我必须修改的AVPlayerViewController:
let player = AVPlayer(URL: receivedURL)
let playerViewController = AVPlayerViewController()
playerViewController.player = player
dispatch_async(dispatch_get_main_queue(), {
self.presentViewController(playerViewController, animated: true) {
playerViewController.player?.play()
}
})
这种情况发生时,没有任何内容被显示。
![这里输入图像描述](https://istack.dev59.com/2KVfv.webp)
AVPlayerViewController
时,遇到了哪些问题?您的问题并不合理。什么“不起作用”? - JAL