NSXMLParserErrorMessage - Datenstrom konnte nicht geöffnet werden

Ich stecke in einem komischen Problem. Ich versuche eine XML-Datei von einem Nicht-HTTPS-Webserver für die Apple Watch zu analysieren. Es funktioniert hervorragend mit WatchKit 2.0 und iOS 9.1 im Xcode Simulator, sobald Sie versuchen, es auf meiner Uhr zu erstellen, funktioniert es nicht mehr ...

Ich habe den ATS auch wie folgt in allen Info.plist-Dateien eingestellt:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

Während des Debuggens habe ich folgenden Fehler gefunden:

[0] (null) "NSXMLParserErrorMessage": "Datenstrom konnte nicht geöffnet werden"

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)
    }

}

Antworten auf die Frage(0)

Ihre Antwort auf die Frage