Unser Update wurde heute zweimal wegen Problemen mit der IPv6-Netzwerkkonnektivität abgelehnt. Unser Netzwerkcode hat sich zwischen der vorherigen Version und dieser aktuellen Version nicht geändert.
Die App sendet nur https-Netzwerkanforderungen an api.metooapp.io, das für ipv6 [ 0 ] korrekt konfiguriert ist und unter route53 unter AWS ausgeführt wird. Der Code enthält keine fest codierten IP-Adressen.
Ich kann dieses Problem nicht reproduzieren, selbst nachdem ich die Schritte zum Erstellen eines IPv6-Netzwerks unter [ 1 ] ausgeführt habe. Dies ist der Link, der in der Ablehnungsbenachrichtigung angegeben wurde. Es sieht so aus, als wäre ich nicht der einzige, bei dem dieses Problem auftritt [ 2 ].
ios
amazon-web-services
app-store
app-store-connect
alamofire
Sean Thielen
quelle
quelle
AFNetworking
(wenn ja, welche Version)?Reachability
? ThirdParty-Bibliotheken?Antworten:
Nach einigem Stress kann ich bestätigen, dass das Problem ein Problem war, bei dem unser Backend nicht richtig für IPv6 konfiguriert wurde. Anscheinend unterstützt AWS weder IPv6 noch nur IPv6-DNS über Route53. Am Ende habe ich das gesamte Internet mit Blick auf Teile des Backends vorerst von AWS entfernt.
Ich wollte dies weglassen, weil ich denke, dass es wahrscheinlich andere geben wird, die ähnliche Probleme haben, wenn Leute anfangen, Updates über die IPv6-Beschränkung hinaus einzureichen. Das beste Tool, das ich zum Testen der Server- / DNS-Bereitschaft gefunden habe, war: http://ready.chair6.net/
quelle
Bitte beachten Sie, dass die Unterstützung von IPv6-Netzwerken und IPv6- und App Review- Links sehr hilfreich sein kann, um festzustellen, wo das Problem mit Apple-Ablehnungen liegt. In diesem speziellen Fall wird in den Artikeln klar angegeben, dass Sie das DNS64 / NAT64-Testnetzwerk einrichten können, aber dass "Dieses Testnetzwerk nicht genau das gleiche ist wie das von App Review verwendete Netzwerk". Deshalb kann alles in der Testumgebung funktionieren und funktioniert immer noch Die App wurde abgelehnt.
Außerdem:
Wenn Ihr Backend-Server IPv6 unterstützt, wird es vom Apple-Testnetzwerk verwendet, und in diesem Fall ist dies falsch.
Ich füge dies als Referenz und Ausgangspunkt für andere Benutzer hinzu, bei denen das gleiche Problem auftritt
quelle
Wir sind auf dasselbe Problem gestoßen, und es stellte sich heraus, dass wir einen AAAA-Eintrag für IPv6 eingerichtet hatten, da wir keine IPv6-Unterstützung hatten (wir verwenden auch Route53). Es hat alles kaputt gemacht. Durch Entfernen des AAAA-Datensatzes wurde das Problem behoben.
Ich habe ein Radar über die Diskrepanz zwischen der Dokumentation zum Testen und dem Setup, das App Review verwendet, eingereicht. Wir konnten es nur diagnostizieren, weil unser CTO bei WWDC war und eine Verbindung zu seinem Netzwerk herstellen konnte, was nicht gerade eine Situation ist wir können uns regelmäßig reproduzieren.
quelle
Wir sind in eine ähnliche Situation geraten. Unsere App wurde aufgrund von Verbindungsproblemen in IPv6-Netzwerken abgelehnt. Auch unsere Server verwenden AWS.
Ich habe ohne Probleme einen Test für IPv6 DNS64 / NAT64 durchgeführt, und wir beschließen, gegen diese Ablehnung Berufung einzulegen.
Wir haben erklärt, dass der Test auf unserer Seite mit Erfolg abgeschlossen wurde und dass wir die AWS-Infrastruktur verwenden.
Nach zwei weiteren Tagen wurde die App erneut überprüft und akzeptiert
quelle
Wir haben das gleiche Problem festgestellt. App Unsere App wurde aus IPv6-Gründen mehrere Male abgelehnt. Wir haben jedoch Tests im IPv6-Netzwerk durchgeführt, das als offizielles Dokument von APPLE konfiguriert wurde: https://developer.apple.com/library/mac/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/Underfort/Pre_ uid / TP40010220-CH213-SW1
quelle
Unsere App wird beim ersten Mal abgelehnt. Wir richten die lokale Testumgebung basierend auf dem Apple-Dokument ein und stellen fest, dass unsere Curl-Bibliothek zu alt ist, ohne standardmäßig IPv6 zu aktivieren. Also bauen wir die neueste Curl Lib und es funktioniert. Aber es wird aus demselben Grund erneut abgelehnt. Ich überprüfe viele Informationen, finde jemanden, der die gleichen Erfahrungen gemacht hat, beschwere mich einfach beim Apple-Prüfer, dass Ihre App in Testumgebungen gut funktioniert, und bitte ihn, einen Techniker zur Verfügung zu stellen, der hilft, wenn er darauf besteht, dass ein Fehler vorliegt. Das Apple-Bewertungsteam hat unsere App am Wochenende genehmigt, als es unsere Beschwerden sah.
Wie ich weiß, gibt es 2 Probleme, die Sie überprüfen müssen. Haben Sie eine feste IP-Adresse in Ihrer App? Richten Sie Ihren AAAA-Eintrag für Ihre Serverdomäne so ein, dass er IPv6 unterstützt, Ihr Server jedoch IPv6 nicht hört. Wenn ja, entfernen Sie einfach diesen AAAA-Eintrag in Ihren Domain-Einstellungen von Ihrer Domain-Provider-Site.
quelle
Die Erreichbarkeitsbibliothek muss IPv6-Netzwerkeinstellungen unterstützen. Verwenden Sie also diese Erreichbarkeitsklasse.
https://developer.apple.com/library/content/samplecode/Reachability/Introduction/Intro.html#//apple_ref/doc/uid/DTS40007324
quelle
Dies ist das zweite Mal, dass ich nach 6 Monaten auf dieses Problem gestoßen bin. Zuvor war es in Objective-C-Projekt mit AFNetworking und ich habe diese Lösung verwendet und es hat auf einmal funktioniert. Nun geschah dasselbe mit Alamofire. Leute, diese Lösung hat 2 Mal für mich funktioniert und ich habe festgestellt, dass diese Frage zuerst in Google kommt, also poste ich die Antwort.
Suchen Sie im Arbeitsbereich nach AF_INET und ändern Sie ihn an einer beliebigen Stelle in AF_INET6. Ich denke, es muss sich in der AFNetworking-Bibliothek oder der Alamofire-Bibliothek befinden, wenn Sie es verwenden. Es ist in der NetworkReachabilityManager-Klasse.
Ich habe diese Antwort aus der folgenden Quelle gefunden.
https://stackoverflow.com/a/38196337/4030971
EDIT: - 24. Juni -
Das hat mir so oft geholfen, aber es gibt auch eine seltsame Lösung für dieses Problem. In unserem letzten Projekt haben wir diese Lösung angewendet, aber Apple hat den Antrag immer noch abgelehnt. Dann haben wir ein Video gemacht, das zeigt, dass die App mit einer Verbindung zu einem NAT64-Netzwerk, das auf einem Mac über die WLAN-Freigabeoption erstellt wurde, einwandfrei funktioniert. Wir haben um Überprüfung des Videos gebeten und sie haben den Antrag genehmigt. Wenn Sie mit all Ihren Optionen fertig sind, probieren Sie auch diese aus.
quelle
Sie können Ihre API auf der folgenden Website überprüfen, ob Ihre API iPV6 konfiguriert ist oder nicht!
http://ipv6-test.com/validate.php
quelle
Ich habe den Test
IPv6
DNS64/NAT64
ohne Probleme durchgeführt, wie in der Apple-Dokumentation vorgeschriebenWir können das Problem jedoch nicht reproduzieren (Absturz). Wir haben die App erfolgreich auf unseren Geräten ohne Abstürze installiert.
Schließlich hat der App Store meine App genehmigt
quelle
Bei der Verwendung des Facebook SDK stieß ich auf dieselbe App-Ablehnung. Wenn Sie das Facebook SDK für die Anmeldung verwenden, ist es unglaublich wichtig, den Benutzer beim Beenden einer Sitzung abzumelden. Andernfalls werden Sie in Zukunft mit ähnlichen App-Ablehnungen konfrontiert sein. Ich habe den folgenden Code eingefügt, um denjenigen zu helfen, bei denen möglicherweise ähnliche Probleme auftreten.
quelle
Ich habe das Problem gelöst, indem ich ihnen ein Video gesendet habe, das zeigt, dass meine App auf IPv6 funktioniert.
quelle
Meine App wird zweimal im App Store abgelehnt. Sie geben einen Fehler bei der Twitter-Anmeldung auf dem iPhone mit OS 11.4. Das Hauptproblem haben wir aufgrund der Rückruf-URL von Twitter, die nicht auf dem Entwicklerkonto von Twitter festgelegt ist. wenn ich die Rückruf-URL auf dem Entwicklerkonto von Twitter einstelle. Es löst mein Problem. Wenn wir auf dem Entwicklerkonto von Twitter keine Rückruf-URL festlegen, ist die Twitter-Anmeldung zu diesem Zeitpunkt erfolgreich, wenn das Gerät über eine Twitter-App verfügt. aber im Falle des Fehlens einer Twitter-App auf dem Gerät gibt es einen verbotenen Fehler 403.
Das Einstellen der Rückruf-URL überwindet mein Problem und die App wird akzeptiert.
Danke dir
quelle