Ich versuche, meine iOS-App in Apple einzureichen. Aber sie haben meine App wegen Problemen mit IPv6 abgelehnt: Sie haben versucht, eine Verbindung zu unserem Server über das IPv6-Netzwerk herzustellen, und es war nicht erfolgreich.
Wir haben unsere Serverseite geändert: Jetzt ist unser Server bereit, IPv6 zu verwenden (ich habe es auf ipv6test.com getestet, und alles war gut).
In meiner App verwende ich URLSession.shared.dataTask, um eine Anfrage zu erstellen. Und Apple bekam Problem in solchen Codezeile:
Swift IPv6-Unterstützung
var urlRequest: URLRequest = URLRequest(url: myServerUrl);
urlRequest.httpMethod = "POST";
..... //preparing POST data, setting timeout, etc.
urlRequest.httpShouldHandleCookies - true;
let task = URLSession.shared.dataTask(with: urlRequest, completionHandler: {(data: Data?, response: URLResponse?, error: Error?) in
do {
guard let resp = response as? HTTPURLResponse else { throw NetworkError.connectionError;} //here they got a problem
....
}
catch {...}
Ich verstehe nicht, warum sie nicht auf unserem Server verbinden. Von unserem Netzwerk (IPv4) ist alles gut.
Und die merkwürdigste Sache: Ich schickte diese App gestern um 10:05 Uhr. Um 10:30 Uhr haben wir eine Anfrage aus dem Netzwerk von Apple gesehen, die erfolgreich war (200 Status). Es sieht sehr seltsam aus, weil sie geschrieben haben, dass sie nicht einmal in dieser App autorisieren können ...
Bitte, kann jemand mit dieser Situation helfen? Ich verstehe nicht, wo ist ein Problem und was soll ich tun.
Haben Sie ein physisches Gerät mit einer SIM-Karte? –
Leider nein. Ich habe ein physikalisches Gerät ohne SIM. Und ich habe meine App im Emulator getestet. Aber vor der Einreichung habe ich meine App in 2 realen Geräten mit SIM-Karten installiert, und alles hat gut funktioniert. – user3533397
Wahrscheinlichkeiten sind, dass das Problem nicht mit IPv6 zusammenhängt und Apple (aus irgendeinem Grund) einfach nicht in Ihrer App autorisieren konnte. Warum denken Sie, dass das Problem mit diesem speziellen Teil in Ihrem Code zusammenhängt? –