NSXMLParserErrorMessage - не удалось открыть поток данных

Я застрял в странной проблеме. Я пытаюсь проанализировать XML-файл с веб-сервера, не поддерживающего HTTPS, для Apple Watch. Он отлично работает с WatchKit 2.0 и iOS 9.1 в Xcode Simulator, как только попробую встроить его в мои часы, он больше не работает ...

Я также установил ATS следующим образом во всех файлах Info.plist:

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

Во время отладки я обнаружил следующую ошибку:

[0] (null) "NSXMLParserErrorMessage": "Не удалось открыть поток данных"

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

}

Ответы на вопрос(0)

Ваш ответ на вопрос