# iOS SDK Getting Started / バナー広告
# はじめに
開発環境にXcodeを使用することを前提とします。
# 対応バージョン
- Xcode 15.1以降
- iOS 12.0以降
# 導入の流れ
- SDKをダウンロードします
- 例を参考に広告表示の実装を行います
参考
- App Transport Security(ATS)対応については「iOS SDK導入時のApp Transport Security(ATS)対応について」を御覧ください
- 【重要】Xcode12以降の環境の場合、あわせて、AppTrackingTransparency対応について / SKAdNetwork対応について を御覧いただき、ご対応をお願いいたします
# 1. SDKをダウンロードする
# CocoaPodsを使用する
次の行をプロジェクトのPodfileに追加します
pod 'AdGeneration'
pod install
を実行します
手動でインストールする場合
# 手動でインストールする
- SDKをダウンロードする
こちらから最新バージョンのADG.xcframework.zipをダウンロードしてください。
ダウンロード (opens new window)
- プロジェクトにSDKを追加する
ダウンロードしたZIPファイルを解凍し、ADG.xcframeworkをプロジェクトナビゲータの任意の場所にドラッグ&ドロップするか、右クリック > Add Files to ...
を選択し、"Copy items if needed"にチェックがついていることを確認して、Finishを押します。
- ADG.xcframeworkのEmbedを設定する
v2.23.0以降の場合
該当アプリのターゲット > General > Frameworks, Libraries, and Embedded Content > ADG.xcframework
を"Embed & Sign"に設定してください。
ご注意
v2.23.0以降の場合、"Do Not Embed"を設定するとアプリ起動時にクラッシュします。必ず"Embed & Sign"を設定してください。
v2.22.2以前の場合
該当アプリのターゲット > General > Frameworks, Libraries, and Embedded Content > ADG.xcframework
を"Do Not Embed"に設定してください。
- Ad Generation SDKが依存しているフレームワークを追加する
Xcodeのプロジェクトナビゲータからプロジェクトファイルを選択し、 該当アプリのターゲット > General > Frameworks, Libraries, and Embedded Content
の+ボタンから、各SDKが使用するフレームワークを追加してください。
- SystemConfiguration.framework
- CoreTelephony.framework
- AVFoundation.framework
- CoreMedia.framework
- MediaPlayer.framework
- SafariServices.framework
- WebKit.framework
- StoreKit.framework
- AdSupport.framework (Optionalで追加)
v2.26.1以前の場合は以下のフレームワークも追加してください。
- CoreLocation.framework (Optionalで追加)
- v2.23.0以降、Optionalとなりました。CoreLocation.frameworkを利用する場合は位置情報の扱いについてもご参照ください
参考
v2.27.0からCoreLocation.frameworkは不要となりました。
- リソースファイルをプロジェクトに追加する(〜v2.22.2)
ご注意: v2.23.0以降について
ADG-Resources.bundle
は動画広告のアイコンやインタースティシャル広告のボタンなど、画像やxibのリソースなどを内包したリソースファイルのパッケージとなります。
v2.23.0以降では、 ADG-Resources.bundle
は削除されており、本手順は不要となります。
ADG.framework/ADG-Resources.bundle
をXcodeのプロジェクトナビゲータの任意の場所にドラッグ&ドロップするか、右クリック > Add Files to ...
を選択し、"Copy items if needed"にチェックがついていることを確認して、Finishを押します。
- Other Linker Flagsの設定
該当アプリのターゲット > Build Settings > Linking - General > Other Linker Flags
に"-ObjC"を追加してください。
# 2. 広告表示を実装する
広告を配置するViewを作成します。以下の例では下部中央を指定しています。
AutoLayoutの制約は、広告のサイズに合わせて設定してください。
- 広告を表示するViewControllerで
ADG/ADG.h
をインポートします - 広告表示用のView(サンプルコードでは
adView
が該当します)をViewController#view
に追加、またはStoryBoardにて追加します
※広告リクエスト前に追加してください ADGManagerViewController
クラスのインスタンスを生成します- 広告リクエストを行います
viewDidAppear
で広告のローテーション再開を行います
※画面切り替えで本処理を走らせたくない場合は、バックグラウンドからの復帰時に行ってくださいADGManagerViewControllerDelegate
を実装してください
# 各メソッドの仕様やオプションについて
iOSリファレンスをご参照ください。
# 注意事項
# バナー広告Viewの配置位置について
adOrigin
に広告Viewを配置する際の親Viewに対する相対位置を指定してください。
# フリーサイズについて
adtype
に kADG_AdType_Free
を指定し、 adSize
に表示サイズを指定してください。
# 広告のサイズ指定について
adtype
に kADG_AdType_Free
を指定し、 adSize
に表示サイズを指定してください。
adScale
に拡大倍率を指定してください。
以下は300x250を1.2倍に指定した場合の例です。
# テストIDについて
広告の掲載イメージを確認したい場合は、テストIDを使用してください。
テスト用の広告枠ID一覧
ご注意
テストIDをセットしたままアプリをリリースしないようにしてください。
# 位置情報の扱いについて
# v2.27.0以降の場合
v2.27.0からCoreLocation.frameworkに依存しなくなりました。この変更に伴い、Ad Generation SDKが位置情報を取得することはしません。
広告リクエストに位置情報を付与したい場合は、ご自身で位置情報取得ロジックを実装していただき、 ADGSettings.location
クラスプロパティにセットしてください。位置情報が更新されるたびにセットし直す必要があります。
- (CLLocation *) updateLocation {
// 位置情報取得ロジックを実装してください
}
...
CLLocation *location = [self updateLocation];
// Ad Generation SDKに位置情報(緯度・経度)を設定
ADGSettings.location = [ADGLocation locationWithLatitude:location.coordinate.latitude
longitude:location.coordinate.longitude];
# v2.26.1以前の場合
ユーザが位置情報に関する権限をアプリに付与し、Ad Generation SDKにて位置情報取得の設定をONにしている場合、位置情報を広告リクエストに付与します。
v2.13.0以降、位置情報取得の初期設定をOFFに変更しております。有効にする方法等、詳しくはこちらをご覧ください。
iOS/Android 位置情報の扱いについて
また、位置情報サービスを使用される場合、マーケットの規約に従い、ユーザへの通知および同意をお願いいたします。