web-dev-qa-db-ja.com

App Storeレビューチームが抱えている(IPv6?)接続の問題を再現できない

IOSアプリでIPv6の問題が発生しています。最初に、IPv6要件について知らない6月1日の数日前に提出しました( https://developer.Apple.com/news/?id=05042016a )。

それらは6月1日にレビューされ、IPv6の非互換性/接続できないため拒否されました。自分のIPv6ネットワークをセットアップしたくなかったので、準拠するようにコードを更新しました-Appleによって提供される到達可能性を最新バージョンに更新しました。自分のダウンロードライブラリも使用しています数年前に元共同設立者によって書かれました。IPアドレスやその他には接続しませんAppleが推奨しないので、今はアップグレードすることにしませんでした。 AFNetworkingの古いバージョン。

アプリを再送信しました。同じ理由で再び拒否されました。私は行ってThunderboltアダプターを購入し、IPv6をセットアップしました。今、私はそのアプリにうまく接続します。また、非常に古いReachabilityコードが含まれている別のアプリに問題なく接続できます。私の主な問題は、Appleが壊れているのと同じ方法で壊れるようにしたいので、適切に修正できます。

ノート:

-最初に IPv6 App Store Rejection にコメントを投稿しようとしましたが、長すぎました。私はTwitterの@andytribolettiで、その質問でSeanがリンクしています。

-私はこれをApple開発者フォーラムに投稿しましたが、それでも10時間後の承認を待っています: https://forums.developer.Apple.com/message/141461#141461

-これは、Macbook proでThunderboltイーサネットアダプターを使用してIPv6ネットワークを設定する方法です。 https://developer.Apple.com/library/tvos/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.html

-OS 9.3.2を実行しているiPhone 6でテストしています。私にリンクされているAppleの記事で説明されているIPv6ネットワークセットアップを実行しているMacbook Proは10.11.5を実行しています。

-Appleテスト済みの正確なバージョンをテストしました。ビルド自動化ツールとしてbuddybuildを使用し、iTunes Connectにアップロードされたバージョンを電子メールで送信しました。

-アプリは https://greenrobot.com にネットワークリクエストを送信します(広告および分析ライブラリも含まれます)。コードにハードコードされたIPアドレスがありません。 GreenRobotはIPv6用に設定されているように見えます: https://ip6.nl/#greenrobot.com

18
Andy

価値があることについて、私もこれを見て、議論したように here 、6/14/16時点のドキュメントとApp Reviewチームの設定の間に明らかに不一致があります。

4
DesignatedNerd

私が疑っていたように、これはコメンターが示唆したように、広告および分析コードとは関係がなかった。これは、IPv6とのサーバー互換性に関係しています。私はLinodeを使用しています。サーバーでLinuxサーバーの管理者をIPv6にアップグレードしました。広告または分析が接続に失敗した場合、それらは静かに失敗するだけで、ゲームプレイに問題はありません。問題は、IPv6でのみ機能しないゲームサーバーと通信することでした。

回答によると: https://stackoverflow.com/a/37689996/211457 私はこのサイトを使用して自分のサイトの互換性をテストしました: http://ready.chair6.net/ =- http://ready.chair6.net/?url=https://greenrobot.com

興味深いことに、Apple.com、Google.com、Facebook.com、Twitter.comはすべて非準拠です。私のサイトのように完全に準拠していると私が見つけることができる他の唯一のドメインはarin.netです。

これらの変更を行った後、私のアプリは承認されました。注:接続がないこと、および適切なエラー画面を表示することに関するエラーチェックも追加しました。しかし、他のStackoverflow投稿者にもIPv6サーバーの問題があり、エラーチェックを追加するだけでアプリが突然接続することはあまり意味がないので、サーバーの問題であると確信しています。

もう1つの興味深いことは、6月1日以降にアップデートが承認されたiOS開発者と電話で話したことです。彼らはAWSを使用しており、AWSがIPv6で動作しないことについて私が何について話しているのかまったくわかりませんでした。 Appleが一部のアプリでのみIPv6のみを必要とする場合を除き、非常に奇妙です。

編集:新しい情報:以下のコメントから:「サーバーにIPv6レコードがある(つまり、IPv6をサポートしていると主張している)が、サーバーのIPv6サポートが壊れている場合、明らかにIPv6で動作しません。ただし、サーバーが動作しない場合IPv6レコードがまったくない(つまり、IPv4のみを要求している)場合、問題なく動作するはずです。」

2
Andy