【发布时间】:2016-04-26 16:04:25
【问题描述】:
所以当 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。
我已经尝试过this 和许多其他看起来像它们的解决方案。 但它不会像我在上面的代码中想要的那样工作。
我只想录制一段视频,并在新视图中播放,就像 snapchat 一样。
请帮帮我
添加的附加信息:
因此,当我尝试使用this(已接受的答案)或this solution(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()
}
})
【问题讨论】:
-
您的链接答案似乎是解决方案。展开“但它不会像我在上面的代码中想要的那样工作。”究竟是什么问题?
-
您在尝试使用
AVPlayerViewController时遇到了哪些问题?你的问题没有意义。什么是“不工作?” -
好的,我将编辑问题并添加图片:) 但是我链接的答案有两个问题第一个是没有播放任何内容,视图完全空白另一个问题是显示视频播放器,但为灰色。我将打印屏幕并用代码添加它们
标签: ios swift mpmovieplayercontroller avplayer