# 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
を実行します。
手動でインストールする場合
# 手動でインストールする
# ⅰ. ダウンロードする
こちらからダウンロードしてください。
ダウンロード (opens new window)
(Downloads > ADG.xcframework.zip
)
# プロジェクトにSDKを追加する
ダウンロードしたZIPファイルを解凍し、ADG_iOSSDKフォルダの中に入っている"ADG.xcframework"をプロジェクトナビゲータの任意の場所にドラッグ&ドロップするか、右クリック > Add Files to ...
を選択し、"Copy items if needed"にチェックがついていることを確認して、Finishを押します。
# リンクしたADG.xcframeworkのEmbedを選択する
インストールするAd Generation SDKにより、設定値の指定が異なります。
誤った指定をおこなっている場合、ケースによってはアプリ起動時にクラッシュが発生いたしますので、必ずご確認ください。
# 〜v2.22.2以前の場合
- Xcodeのプロジェクト設定画面を開いてください
- 該当のアプリのターゲットを選択してください
General
タブを選択し、Frameworks, Libraries, and Embedded Content
までスクロールしてください- リンクしている
ADG.xcframework
のEmbed
をDo Not Embed
を選択し、ビルドをおこなってください
# v2.23.0〜以降の場合
- Xcodeのプロジェクト設定画面を開いてください
- 該当のアプリのターゲットを選択してください
General
タブを選択し、Frameworks, Libraries, and Embedded Content
までスクロールしてください- リンクしている
ADG.xcframework
のEmbed
をEmbed & Sign
を選択し、ビルドをおこなってください
WARNING
手動インストールの場合、v2.23.0以降のバージョンをご利用の際は、Do Not Embed
を指定した場合アプリ起動時にクラッシュいたしますので、必ず Embed
を Embed & Sign
をご選択ください。
# ⅱ. Ad Generation SDKが参照しているframeworkを追加する
Xcodeのプロジェクトナビゲータからプロジェクトファイルを選択し、
"TARGETS" > アプリケーションスキーマ > "General"タブ > "Linked Frameworks and Libraries"
の+ボタンから、各SDKが使用するframeworkの追加をしてください。
- SystemConfiguration.framework
- CoreTelephony.framework
- AVFoundation.framework
- CoreMedia.framework
- MediaPlayer.framework
- SafariServices.framework
- WebKit.framework
- StoreKit.framework
- AdSupport.framework (※)
- CoreLocation.framework (※)
- v2.23.0以降ではOptionalとなりました。こちらのFrameworkを利用する場合は位置情報の扱いについてもご参照ください。
(※)はOptionalで追加
# ⅲ. リソースファイルをプロジェクトに追加する(〜v2.22.2)
ご注意:v2.23.0以降について
ADG-Resources.bundle
は動画広告のアイコンやインタースティシャル広告のボタンなど、
画像やxibのリソースなどを内包したリソースファイルのパッケージとなります。
v2.23.0〜以降では、ADG-Resources.bundle
は削除されており、本手順は不要となります。
「ⅲ. リソースファイルをプロジェクトに追加する(〜v2.22.2)」こちらの手順は、
v2.22.2以下のバージョンを手動でインストールされる場合にのみ実施してください。
ADG.framework/ADG-Resources.bundle
をXcodeのプロジェクトナビゲータの任意の場所にドラッグ&ドロップするか、右クリック > Add Files to ...
を選択し、"Copy items if needed"にチェックがついていることを確認して、Finishを押します。
# ⅳ. Other Linker Flagsの設定
Xcodeのプロジェクトナビゲータからプロジェクトファイルを選択し、
"TARGETS" > アプリケーションスキーマ > "Build Settings"タブ > "Linking" > "Other Linker Flags"に"-ObjC"を追加してください。
# 2. 広告表示を実装する
広告を配置するViewを作成します。以下の例では下部中央を指定しています。
AutoLayoutの制約は、広告のサイズに合わせて設定してください。
- 広告を表示するViewやViewController等で
ADG/ADGManagerViewController.h
をインポートします。 - 広告表示用のView(サンプルコードだと self.adView が該当します)をself.viewにaddSubViewして追加 または StoryBoardにて追加していただき、広告リクエストをする前に配置させておきます。
- ADGManagerViewControllerクラスのインスタンスを生成します。
- 広告リクエストを行います。
- viewDidAppearで広告のローテーション再開を行います。
画面切り替えで本処理を走らせたくない場合はバックグラウンドからの復帰時に行ってください。 - ViewControllerのdeallocで、インスタンスの破棄をします。
delegateへのnilセットを忘れないようご注意ください。 - delegateメソッドを実装してください。
# 各メソッドの仕様やオプションについて
iOSリファレンスをご参照ください。
# Delegateについて
# 広告受信
SDKからの広告リクエストが成功したタイミングで呼び出されます。
また、ローテーションによる広告取得成功の際にも呼び出されます。
# 広告受信失敗
広告読込みが失敗した際に呼び出されます。
- kADGErrorCodeUnknown……不明なエラーが発生しました。
- kADGErrorCodeCommunicationError……アドサーバー間通信/連携しているアドネットワークSDKとの接続等でエラーが発生しました。
- kADGErrorCodeReceivedFiller……白板検知されました。
- kADGErrorCodeNoAd……接続先アドネットワークすべて広告在庫切れが返却されました。
- kADGErrorCodeNeedConnection……デバイスがネットワークに接続されていません。
- kADGErrorCodeExceedLimit……エラー回数が上限に達しました。
- kADGErrorCodeTemplateFailed……サイズ指定の誤りなどの要因により広告の形成に失敗しました。
# 広告タップ
広告がタップされた際に呼び出されます。
(ブラウザやストア起動の成否は問いません)
# 注意事項
# バナー広告Viewの配置位置について
adOrigin
に広告Viewを配置する際の親Viewに対する相対位置を指定してください。
# フリーサイズについて
adtype
にkADG_AdType_Free
を指定し、adSize
に表示サイズを指定してください。
# 広告の拡大縮小について
adtype
にkADG_AdType_Free
を指定し、adSize
に表示サイズを指定してください。
adScale
に拡大倍率を指定してください。
以下は300x250を1.2倍に指定した場合の例です。
# 審査完了前の稼働確認について
審査完了前に広告の掲載イメージをご確認頂く際は、以下のIDに置き換えご確認ください。
このIDをセットしたままアプリをリリースしないようご注意ください。
サイズ | テストID | 配信広告 |
---|---|---|
320×50 | 48547 | テスト広告 |
320×100 | 48548 | テスト広告 |
300×250 | 48549 | テスト広告 |
728×90 | 48550 | テスト広告 |
# 位置情報の扱いについて
ユーザーが位置情報に関する権限をアプリに付与かつ、Ad Generation SDKにて位置データ付与の設定をONにしている場合、位置情報を広告リクエストに付与します。
位置データ付与のデフォルト設定に関しては、SDKバージョンにより異なります。
v2.13.0より、位置データ付与の設定をデフォルトOFFに変更しております。
有効にする方法等、詳しくはこちらをご覧ください。位置情報の扱いについて
また、位置情報サービスを使用される場合には、マーケットの規約に従い、ユーザーへの通知および同意をお願いいたします。