NSXMLParserErrorMessage – 无法打开数据stream
我陷入了一个奇怪的问题。 我尝试从Apple Watch的非HTTPS Web服务器parsingXML文件。 它在Xcode模拟器中与WatchKit 2.0和iOS 9.1一起工作很好,只要试图在我的Watch上构build它,它就不能工作了。
我也在所有Info.plist文件中设置了ATS:
<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
在debugging时我发现了以下错误:
[0](null)“NSXMLParserErrorMessage”:“无法打开数据stream”
import Foundation import WatchKit class parkingXMLParser : NSObject, NSXMLParserDelegate{ var parser = NSXMLParser() var elements = NSMutableDictionary() var element = NSString() let menuXMLURL = "http://ta-app.hslu.ch/parkplatz/HSLUHorw.xml" var parkingCounterFree = NSMutableString() var parkingCounterTimestamp = NSMutableString() func beginParsing() { parser = NSXMLParser(contentsOfURL:(NSURL(string:menuXMLURL))!)! parser.delegate = self } func parse() -> Bool { return parser.parse() } func getParkingCounterFree() -> String { return parkingCounterFree as String; } func getParkingCounterFreeTimestamp() -> String { return parkingCounterTimestamp as String; } func parser(parser: NSXMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String]) { element = elementName if (elementName as NSString).isEqualToString("ph") { elements = NSMutableDictionary() elements = [:] } } func parser(parser: NSXMLParser, foundCharacters string: String) { if element.isEqualToString("frei") { parkingCounterFree.appendString(string) } else if element.isEqualToString("zeitpunkt") { parkingCounterTimestamp.appendString(string) } } func parser(parser: NSXMLParser, parseErrorOccurred parseError: NSError) { NSLog("failure error: %@", parseError) } }
- HKWorkoutSession:当watchOS中的屏幕closures时,没有获得心率
- 用于Force Touch / Digital Crown的WatchKit API?
- 从iOS打开WatchKit应用程序
- Apple Watch:一个Watchkit应用程序可以与多个iOS应用程序通信吗?
- 当试图在实际的Apple Watch上构build和运行WatchKit扩展时,如何避免“Error Launching”AppName“WatchKit Extension”错误?
- NSUserDefault在watchppExtension中更改通知处理
- 在Apple Watchkit中播放声音
- watchOS 2:背景中的触觉反馈
- 将数据传递给Apple Watch应用程序