現状、iOS9.0でのATSの設定では、info.pistに

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

を追加すれば、一応、外部ページにアクセスは可能だったんですが。。 iOS10.0ではどう変わる?

その辺り、下記のページにiOS10.0で設定について現時点(2016-06-16)でわかる範囲で詳しく掲載されていました。

有用な情報ありがたいことです。とっても助かります。

【Apple WWDC 2016】iOS 10のApp Transport Securityと2016年末からのATS必須化についてAppleのエンジニアに聞いてきた

ATSの設定は、アプリケーションのInfo.plistにキーを追加して値を設定しますが、利用可能なキーはこちらで確認出来ます。

developer.apple.com注意:こちらのドキュメントは開発者向けのプリリリースのドキュメントであり、iOS 10の確定された最終仕様ではありません。今後正式なiOS 10がリリースされるまでの間に変更が加えられる可能性があります。

iOS10.0では

また、iOS 10から利用可能になるATSの新しい設定キー NSAllowsArbitraryLoadsInWebContent と、従来からあるATSの無効化設定キー NSAllowsArbitraryLoads が同時に存在した場合にはどちらが有効になるかの力関係があります。

との事。

結局、 iOS9.0と同レベルでの iOS10.0のATSの対応方法は

どのように対応すべきか

少なくとも今日私が話を聞いたLabのエンジニアの話をもとに考えると、これまでhttpのウェブページを利用するために NSAllowsArbitraryLoads を YES にしていた場合は、NSAllowsArbitraryLoadsInWebContent を追加して YES を設定し、WKWebViewのみhttp通信を許可するのが良いでしょう。

UIWebViewやNSURLSessionで不特定多数のサーバーに対してhttp通信を行わざるを得ない場合は、そのまま NSAllowsArbitraryLoads のみ YES に設定していれば良さそうです(審査時に理由の説明が必要)。

UIWebViewを利用している場合、特別理由がなければWKWebViewに移行することが強く推奨されそうです。

との事です。

繰り返しになりますが、大変有用な情報ありがとうございます。

きっと、iOS10.0になってATSが強化されても、アタフタすることなく対応できるかも、です