swift 2中的XML解析器在设备上返回false

时间:2015-12-13 10:58:53

标签: ios xml swift nsxmlparser

当我在Xcode中运行以下代码并选择了iOS模拟器时,它解析没有问题,但是当我在设备(iPhone 5c)上运行它时,我得到: 无法加载xml XML解析在0:0失败:可选("操作无法完成。(Cocoa错误-1。)")

我尝试了不同的xml文件,但它看起来像是一个安全问题!? 我应该在某个地方设置项目权限吗?

let url:String="http://images.apple.com/main/rss/hotnews/hotnews.rss#sthash.TyhRD7Zy.dpuf"
let urlToSend: NSURL = NSURL(string: url)!

parser = NSXMLParser(contentsOfURL: urlToSend)!
parser.delegate = self

if !parser.parse() {
   let error = parser.parserError
   let line = parser.lineNumber
   let col = parser.columnNumber
   print("XML parsing failed at \(line):\(col): \(error?.localizedDescription)")
}`

1 个答案:

答案 0 :(得分:0)

为了帮助隔离错误,首先将URL的内容加载到字符串中可能会有所帮助 - 这有助于您确定它是安全问题还是解析问题。您可能还需要取消强制解包并使用if / let以便更清楚地看到错误流。

话虽如此,这里有一些事情需要检查:

1)设备是否在线?

2)设备是否连接到阻止某些资源的代理,VPN或其他中间设备?

3)使用Safari时,设备是否能够访问该网址?

4)您的解析器是否能够读取其他RSS源?

根据我的经验,2)经常是问题。

相关问题