前回は、NGUIのUIScrollViewをご紹介しました。
今回も、ストリーミング再生から逸れますが、久しぶりにiOS関連に戻りたいと思います。
内容は、iOSアプリを申請する際の注意点が増えたので、そちらをご紹介します。
Appleでは、iOS向けアプリをApp Storeへ申請する場合、多数のレギュレーションが
ありますが、今回新たに「IPv6プロトコルのサポートが必須」という内容が追加されました。
これは、一体どういうことかというと、2016年6月1日以降にApp Storeに申請するすべての
iOS向けアプリは、 「IPv6」プロトコルをサポートすることが必須条件となりました。
こちらは、Appleのサイトでも案内しています。
それでは、実際にどのように変更になったのかを見ていきましょう。
もともと、iOSは、「IPv4(※)」と「IPv6(※)」の両プロトコルで接続されていました。
※ここで、IPv6がIPv4と異なる点を簡単に記載しましょう。
ここに記載したのは、ほんの一例です。
詳しく知りたい方は、検索してみてください。
・IPアドレス空間の拡大
→ 32bitから128bitに拡大され、IPアドレス空間が増えた
IPv4:約43億個(32ビット)
IPv6:約340澗個(128ビット)
・ セキュリティ機能を標準で装備している
→ IPsecを標準としている
・高速化
→ ヘッダーフォーマットの簡易化
経路上におけるパケット分割の廃止
それが近い将来、接続先が「IPv6」プロトコルのみに完全移行するため、「IPv4」プロトコルでのみ
接続できるサーバでも、「IPv6」プロトコルで接続しようとしてしまい、接続することができません。
上記を回避するため、ゲートウェイには、「IPv4」プロトコル応答を「IPv6」プロトコルに変換する「DNS64」と、
「IPv6」プロトコルの接続要求を「IPv4」プロトコルに変換する「NAT64」が設置されているので、
各プロトコル毎に対応したサーバへ接続することができます。
次にアプリへの影響はどれくらいあるのかを見てみましょう。
実は、現在Apple Storeへリリースされているアプリは、「IPv6」プロトコルをサポートしている
「NSURLSession」及び、「CFNetwork」を利用しているため、影響はほとんどありません。
しかし、リリースされているアプリの中には対応が必要なアプリもあるかもしれません。
不安な方は、アプリがIPv6環境で正常に接続できるか確認してみましょう。
OS X 10.11以降(El Capitan)のMacを利用すると、NAT64で
WiFiアクセスポイントが作成できるので、まずは、アクセスポイントを作成しましょう。
ここからは、Macの操作になります。
【手順1】
システム環境設定を開き、「インターネット共有」を選択する
【手順2】
下記の順でチェックを入れる
・「インターネット共有」
・「NAT64 ネットワークを作成」
これで、IPv6プロトコルで接続するためのアクセスポイントが作成できました。
それでは、端末にアプリをインストールし、作成したアクセスポイントに接続して、
アプリが、正常にネットワーク接続できているかを確認してみてください。
もし、正常に接続することができなかった場合、下記が原因で接続できていない
可能性があるので、こちらを確認して対処を行なってください。
・IPv4プロトコルでしか使えない APIを利用している
・IPv4プロトコルを前提とした変数/構造体を利用している
App Storeへアプリを申請する際の注意点をご紹介できたところで、今回は終了します。
今後、App Storeへアプリを申請する場合、「IPv6プロトコルのサポートが必須」となりますので、
みなさん、注意してください。
また、本記事については、必ずしもAppleの審査に合格することを確約するものではありません。
最後までご覧いただき、ありがとうございます。
弊社では全国各地の請負い(ご自宅)で作業協力頂ける、フリーランスエンジニアの方を常時探しております。
ご興味ある方は、お気軽にお問い合わせ下さい。