我在ios设备和模拟器上播放视频内容时遇到了一些麻烦。iOS 9:使用AVPlayerViewController Swift。 (划掉播放按钮)
目标:使用AVPlayerViewController
在线资源给出视频: public video streams using hls,只是为了了解它是如何工作的。
这一直导致没有错误被抛出,但视图控制器呈现给我这个视图。
我决定退一步测试上的本地资源,所以我在拍摄的QuickTime(的.m4v)短屏幕捕获并将其保存权的项目。这导致完全相同的行为,没有报告错误。
下面是代码(AVKit
和AVFoundation
导入):<CATransformLayer: 0x136ea1030> - changing property masksToBounds in transform-only layer, will have no effect
Xcode中:版本7.1 定位:iOS的9.0
建立到IpadMini 4时见此警告var playerVC : AVPlayerViewController!
var playerItem : AVPlayerItem!
var player : AVPlayer!
var playerLayer: AVPlayerLayer!
override func viewDidAppear(animated: Bool) {
let bundle = NSBundle.mainBundle()
let path = bundle.pathForResource("testVideos", ofType: "m4v")
let url = NSURL.init(string: path!)
playerItem = AVPlayerItem.init(URL: url!)
player = AVPlayer.init(playerItem: playerItem)
playerVC = AVPlayerViewController.init();
playerVC.player = player;
self.presentViewController(playerVC, animated: true) {() -> Void in
self.playerVC.player?.play()
}
}
更新 只是从AVPlayerViewController输出一些讨厌的约束。我不认为这是贡献,但它在这里:
2015-10-28 15:12:02.777 AVKitTest [4441:94545]无法同时满足约束。 以下列表中的至少一个约束可能是您不想要的。 试试这个: (1)看看每个约束,并试图找出你不期望的; (2)找到添加不需要的约束或约束并修复它的代码。 (注意:如果你看到,你不明白NSAutoresizingMaskLayoutConstraints,请参阅文档UIView的财产translatesAutoresizingMaskIntoConstraints) ( “”, “”, “”, “”, “”, “”, “”, “” )
那么作为一种解决方法,你可以通过调用它的URL打开并播放UIWebView的视频... –
欣赏评论@Neo,但所有这些的目的是了解AVKit和AVKitViewController。 – CostelloNicho