ios - Swift - AVPlayer 加载失败并出现错误错误域 = NSURLErrorDomain 代码 = -999 “已取消”
问题描述
我尝试从 url 字符串播放视频。但是我在问题标题中遇到了一些错误。
我在下面尝试此代码。videoPath 是一个 url 字符串。
let videoURL = URL(string: videoPath)
let player = AVPlayer(url: videoURL!)
let playerViewController = AVPlayerViewController()
playerViewController.player = player
self.present(playerViewController, animated: true) {
playerViewController.player!.play()
}
以下是错误日志:
加载失败,错误域=NSURLErrorDomain 代码=-999 “取消” UserInfo={NSErrorFailingURLStringKey= http ://b...a.mp4,NSErrorFailingURLKey= http://b...a.mp4,_NSURLErrorRelatedURLSessionTaskErrorKey= (" LocalDataTask <841B2FFA-479B-4E5A-9BD3-D9207EAA0D32>.<2>" ), _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <841B2FFA-479B-4E5A-9BD3-D9207EAA0D32>.<2>, NSLocalizedDescription=cancelled} [-999]
我设置了 info.plist --
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>www.example.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
<key>NSExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
<key>NSIncludesSubdomains</key>
<true/>
</dict>
</dict>
</dict>
注意: 10 分钟长的视频会出现此问题。这是正常的吗?
解决方案
你是想展示AVPlayerViewController
内在viewDidLoad
吗?如果是这样,您可以尝试在将视图控制器的视图添加到窗口层次结构后呈现它 -viewDidAppear
例如。请记住,viewDidAppear
当您导航回控制器时将调用它,并且将再次触发模态演示。
推荐阅读
- html - 如何让 CSS 中的 div 溢出?
- ssl - 具有单独 jks 文件的 JMeter 线程组
- python - 如何将 python 代码块拆分为列表?
- javascript - 带有 let 变量的 Javascript 闭包
- python - 如何将熊猫数据框行转换为列
- mysql - 仅当特定部分的其他表中可用时才选择行的 SQL 查询
- azure - 在 Azure Devops 中使用 powershell 连接 AzureAD
- kubernetes - 如果 Kubernetes 节点因电源故障而被杀死,PODS 是否会重新调度?
- ios - 无法在太多关系孩子中访问逆
- node.js - 猫鼬 ObjectId href 问题