我把m3u8放在GCDWebServer上播放,当我用户WIFI没问题。但是使用4G,就会出现这个问题
答案 0 :(得分:0)
您需要在代码中展开m3u8
。如果那是nil
,那么您将遇到问题。你说当你使用!
强制解包时,它永远不会是零。
您可以使用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
}
答案 1 :(得分:0)
我已经解决了这个问题。当我使用4 g时,访问 dataServer!ServerURL 是 nil 。我的解决方案是给它一个本地IP
if davServer?.serverURL == nil {
serverAddress = NSURL.init(string: "http://localhost/playts.m3u8")!
}else{
serverAddress = (davServer?.serverURL.URLByAppendingPathComponent(self.m3u8!))!
}