【发布时间】:2018-04-18 01:34:20
【问题描述】:
我正在尝试使用 swift 4.0 的非常简单的 Xcode OS X 程序 - 该程序可以构建并运行,但我在访问 URL 视频文件时遇到错误。可能与某处的特权或安全设置有关,但不知道在哪里。这是我在 ViewController 类下的程序: NSViewController:
@IBOutlet var playerView: AVPlayerView!
//var url: URL!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
// guard let url = URL(string: "https://devimages.apple.com.edgekey.net/samplecode/avfoundationMedia/AVF oundationQueuePlayer_HLS2/master.m3u8")
// else {
// return
// }
let url1 = URL(string: "http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4")
let player = AVPlayer(url: url1!)
// Create a new AVPlayer and associate it with the player view
let playerView = self.playerView
playerView?.player = player
playerView?.player!.play();
}
我还用以下内容修改了 info.plist 文件:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
<key>NSExceptionDomains</key>
<dict/>
</dict>
我在尝试访问任一 URL 时遇到以下运行时错误 以上为什么呢?
2017-11-05 10:12:21.757333-0800 AVPlayer[54381:5617593] 开始记录: 记录开始... 2017-11-05 10:12:21.758024-0800 AVPlayer[54381:5617612] setMessageLoggingBlock:调用 2017-11-05 10:12:21.758520-0800 AVPlayer[54381:5617612] initWithSessionInfo: XPC 连接中断 2017-11-05 10:12:21.758842-0800 AVPlayer[54381:5617612] startConfigurationWithCompletionHandler: 获取远程对象代理失败:Error Domain=NSCocoaErrorDomain Code=4097 "连接到名为 com.apple.rtcreportingd 的服务" UserInfo={NSDebugDescription=连接到服务命名 com.apple.rtcreportingd} 2017-11-05 10:12:21.759003-0800 AVPlayer[54381:5617612] startConfigurationWithCompletionHandler: 获取远程对象代理失败:Error Domain=NSCocoaErrorDomain Code=4097 "连接到名为 com.apple.rtcreportingd 的服务" UserInfo={NSDebugDescription=连接到服务命名 com.apple.rtcreportingd} 2017-11-05 10:12:21.925221-0800 AVPlayer[54381:5617654] App Transport Security 已阻止明文 HTTP (http://) 资源加载,因为它不安全。暂时的 可以通过应用的 Info.plist 文件配置异常。
【问题讨论】: