-5

我把m3u8放在GCDWebServer里播放。当我使用 Wi-Fi 时,没问题。但是使用4G,就出现了这个问题。

在此处输入图像描述

在此处输入图像描述

4

2 回答 2

0

您在代码中强制展开m3u8。如果那样的nil话,你就会遇到问题。您是说当您使用 that 强制展开时它永远不会为零!

您可以使用该if let方法,也可以进行测试nil

// Are you sure dataServer isn't nil too here?
if let serverAddress = dataServer!.serverURL.URLByAppendingPathComponent(self.m3u8) {
    //Should be safe
}

或者

if m3u8 == nil {
    print("m3u8 is nil")
    return
}
于 2017-05-09T19:14:12.303 回答
0

我已经解决了问题。当我使用4g时,访问dataServer!ServerURLnil 。我的解决方案是给它一个本地IP

 if davServer?.serverURL == nil {
                serverAddress = NSURL.init(string: "http://localhost/playts.m3u8")!
            }else{
               serverAddress = (davServer?.serverURL.URLByAppendingPathComponent(self.m3u8!))!
            }
于 2017-05-10T02:47:44.417 回答