メインコンテンツまでスキップ

iOS SDK導入時のApp Transport Security(ATS)対応について

Ad Generation iOS SDK v2.4.1以前について

Ad GenerationのiOS SDKは2.1.1(2015年8月6日リリース)にてAd Generationのサーバとの通信に関してはATS対応完了しております。 しかし広告配信事業社(アドネットワーク・DSP事業社)につきましては、http通信のみの事業社もあるため、 Info.plistでATSを無効化することにより、http通信のみの事業社の広告配信も可能として頂いております。

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

ATSを有効にしたい場合

v2.4.1では、loadRequestより前に以下のメソッド呼び出しをしていただくことで広告配信事業社(アドネットワーク・DSP事業社)についても、https通信で行うように変更できます。
ただし、アドネットワークの配信にGunosyAdsが含まれている場合はATSを無効にしてください。


ADGManagerViewController

- (void)setSSLMode:(BOOL)isSSL;

Parameters

  • isSSL YES: httpsで通信します/NO: httpで通信します

Ad Generation iOS SDK v2.4.2以降について

Appleは今後、App Storeに公開するアプリについてはATS必須とすることを発表しております。
Ad GenerationのiOS SDKはv2.4.2以降より、広告配信事業社(アドネットワーク・DSP事業社)との通信についてもhttps通信で行います。
setSSLMode:の呼び出しは不要になります。)

ATSを有効にしている場合のFIVEの配信について

2016年2月5日以前にご提供したFiveAd.framework では、 FIVEを配信するためには、以下のようにfivecdm.comドメインをinfo.plistに記載していただく必要がございます。 2016年2月6日以降にご提供したFiveAd.framework では、https通信に対応されたため不要です。

<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>fivecdm.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
</dict>
</dict>
</dict>

iOS 10 以降について

MillennialMedia, InMobiを配信する, もしくはカスタムタグを使用してhttp通信で広告配信をご希望の場合は、iOS10のみ以下の設定で可能になります。

  1. info.plistの設定

iOS 10では、新たに NSAllowsArbitraryLoadsInWebContent のキーが追加されUIWebViewのhttp通信を許容できます。info.plistに以下の設定を追加してください。

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
</dict>

(iOS 9以前のバージョンではNSAllowsArbitraryLoadsInWebContent のキーは対応しておりません)

  1. ADGManagerViewController.setSSLMode:の呼び出し

setSSLMode: を使用し、Ad Generation SDKでのUIWebViewにおける通信をhttpにしてください。

adgManagerViewController.setSSLMode(false)

参照

Information Property List Key Reference