IPv6 - Apple lehnt App iOS @
Wo ist der Fehler?
Apple App ablehnen und Nachricht senden:
Performance - 2.1
Wir haben einen oder mehrere Fehler in Ihrer App entdeckt, als wir sie auf einem iPad und iPhone mit iOS 9.3.5 und Wi-Fi, das mit einem IPv6-Netzwerk verbunden ist, überprüft haben.
Speziell wird bei einer Abstimmung ein Fehler angezeigt undUnterstützung von IPv6-DNS64 / NAT64-Netzwerken
"Wenn Sie eine clientseitige App mit High-Level-Netzwerk-APIs wie @ schreibe NSURLSession und die CFNetwork-Frameworks und Sie verbinden sich mit dem Namen, sollten Sie muss nicht geändert werden alles, damit Ihre App mit IPv6-Adressen funktioniert. "
Next onApple Developer Forums sagt:
N 3 - Muss ich meinen Server aktualisieren? Das hängt davon ab, wo Ihr Server läuft:Wenn Sie einen Server im Internet haben, lautet die Antwort nein. Ihr Server ist über DNS64 / NAT64 nur für IPv6-Geräte zugänglich. Sie sollten Ihren Server selbstverständlich so aktualisieren, dass er IPv6 unterstützt. Dies können Sie jedoch jederzeit tun. Wenn in Ihre iOS-App ein Server eingebettet ist (z. B. ein Webserver, mit dem Benutzer Dateien von und zu Ihrer App übertragen können), sollten Sie sicherstellen, dass dieser Server in einer Nur-IPv6-Umgebung funktioniert.
Mein Hoster sagt:
Wir sehen keine Probleme, denn der Server mit IPv6 auf Ihrem Server ist IPv4 über DNAT / SNAT verfügbar.
Meine Site (Server):http: //badroads.inf
Mein Code in der App dieser Code wurde vor einer Woche in einer anderen Anwendung genehmigt):
func sendToServer(dataFromDictionary: Dictionary<NSString, AnyObject>) {
let url: NSURL = NSURL(string: "http://badroads.info/t-or-c/****.php")!
let request:NSMutableURLRequest = NSMutableURLRequest(URL:url)
let session = NSURLSession.sharedSession()
request.HTTPMethod = "POST"
do {
request.HTTPBody = try NSJSONSerialization.dataWithJSONObject(dataFromDictionary, options: [])
} catch let parseError as NSError {
request.HTTPBody = nil
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessError("Error", messageM: "Oops, something went wrong! Try again, please!")
}
}
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
request.addValue("application/json", forHTTPHeaderField: "Accept")
let task = session.dataTaskWithRequest(request, completionHandler: {data, response, error -> Void in
if error != nil {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessError("Error", messageM: "Oops, something went wrong! Try again, please!")
}
return
}
let json: NSDictionary?
do {
json = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableLeaves) as? NSDictionary
} catch let parseError as NSError {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessError("Error", messageM: "Oops, something went wrong! Try again, please!")
}
return
}
if let parseJSON = json {
if let status = parseJSON["status"] as? String {
if status == "200" {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.defaultsDataLogin.setObject(true, forKey: "isDone")
self.alertMessageAdM("Successfully!", messageM: "See results!")
}
} else if status == "400" {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessErrorAdM("Error", messageM: "You have already data!")
}
} else {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessError("Error", messageM: "Oops, something went wrong! Try again, please!")
}
}
} else {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessError("Error", messageM: "Oops, something went wrong! Try again, please!")
}
}
} else {
dispatch_async(dispatch_get_main_queue()) {
EZLoadingActivity.hide()
self.alertMessageSuccessError("Error", messageM: "Oops, something went wrong! Try again, please!")
}
}
})
task.resume()
}
Aber ich habe meine Seite auf @ überprühttps: //ip6.n undhttp: //ipv6-test.com/validate.ph Ich habe die folgenden Ergebnisse erhalten:
Vielen Dank