iOS中的AVPlayerViewController播放/暂停问题

我正在开发iOS应用程序。 这个应用程序基于新闻媒体。

我正在播放突出显示的新闻的小video。 我正面临AVPlayerViewController的陌生人问题。

当我播放video一切都很好。 当我离线时,缓冲区video播放完毕播放缓冲区video后,video停止,但progress bar(Slider)连续处于播放状态,video停止播放。

要获得更多的通关请看这个GIF图像:

请访问此链接了解连击。

这是我的玩家代码。

 class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. self.playVideo() } func playVideo(){ let videoURL = NSURL(string: "http://qthttp.apple.com.edgesuite.net/1010qwoeiuryfg/sl.m3u8") let player = AVPlayer(URL: videoURL!) let playerController = AVPlayerViewController() playerController.player = player self.addChildViewController(playerController) self.view.addSubview(playerController.view) playerController.view.frame = self.view.frame player.play() } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } } 

我试过你的代码,我甚至无法看到你的gif图片。 我也试过你的代码与另一个video链接( https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4 ),并没有转载问题。

我想你的问题是你试图显示你的AVPlayerViewController

考虑下一个片段:

 let videoURL = NSURL(string: "https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4") let player = AVPlayer(URL: videoURL!) let playerViewController = AVPlayerViewController() playerViewController.player = player self.presentViewController(playerViewController, animated: true) { playerViewController.player!.play() } 

这应该工作。 如果你需要一些用户化定制你不应该使用AVPlayerViewController我猜。

更新:

尝试添加Reachaility支持:

 class MyViewController: UIViewController { var reachability: Reachability? override func viewDidLoad() { super.viewDidLoad() reachability = try? Reachability.reachabilityForInternetConnection() reachability?.whenUnreachable = { _ in player.pause() } try? reachability?.startNotifier()