IMA SDK を使用すると、マルチメディア広告をウェブサイトやアプリに簡単に統合できます。IMA SDK は、 VAST 準拠のあらゆる広告サーバーから広告をリクエストし、アプリでの広告再生を管理できます。IMA DAI SDK を使用すると、アプリは広告とコンテンツ動画(VOD またはライブ コンテンツ)のストリーム リクエストを行います。SDK は結合された動画ストリームを返すため、アプリ内で広告とコンテンツの動画を切り替える処理を管理する必要はありません。
関心のある DAI ソリューションを選択する
フルサービス DAI
このガイドでは、IMA DAI SDK を動画プレーヤー アプリに統合する方法について説明します。完成したサンプル統合を表示または実行する場合は、GitHub から BasicExample をダウンロードしてください。
IMA DAI の概要
このガイドで説明するように、IMA DAI の実装には 4 つの主要な SDK コンポーネントが関わります。
IMAAdDisplayContainer- 動画再生要素の上に配置され、広告の UI 要素を格納するコンテナ オブジェクト。IMAAdsLoader- ストリームをリクエストし、ストリーム リクエスト レスポンス オブジェクトによってトリガーされたイベントを処理するオブジェクト。広告ローダは 1 つだけインスタンス化し、アプリケーションのライフサイクル全体で再利用する必要があります。IMAStreamRequest-IMAVODStreamRequestまたはIMALiveStreamRequestのいずれか。ストリーム リクエストを定義するオブジェクト。ストリーム リクエストは、ビデオ オンデマンドまたはライブ ストリームのいずれかになります。ライブ ストリームのリクエストではアセットキーが指定され、VOD のリクエストでは CMS ID と動画 ID が指定されます。どちらのリクエスト タイプにも、指定されたストリームへのアクセスに必要な API キーと、Google Ad Manager の設定で指定された広告 ID を IMA SDK が処理するための Google Ad Manager ネットワーク コードをオプションで含めることができます。IMAStreamManager- ダイナミック広告挿入ストリームと DAI バックエンドとのインタラクションを処理するオブジェクト。ストリーム マネージャーは、トラッキング ping を処理し、ストリーム イベントと広告イベントをパブリッシャーに転送します。
前提条件
始める前に、次のものが必要になります。
- Xcode 13 以降
- IMA SDK のインストール方法:
- Swift Package Manager(推奨)
- CocoaPods
- iOS 向け IMA SDK のダウンロード コピー
また、IMA SDK からストリームをリクエストするためのパラメータも必要です。リクエスト パラメータの例については、サンプル ストリームをご覧ください。
| ライブ配信パラメータ | |
|---|---|
| アセットキー |
Google アド マネージャーでライブ配信を識別するアセットキー。 例: c-rArva4ShKVIAkNfy6HUQ
|
| VOD ストリーム パラメータ | |
| コンテンツ ソース ID |
Google アド マネージャーのコンテンツ ソース ID。 例: 2548831
|
| 動画 ID |
Google アド マネージャーの動画 ID。 例: tears-of-steel
|
| 共通(VOD とライブ配信)パラメータ | |
| ネットワーク コード |
Google アド マネージャーのネットワーク コード。 例: 21775744923
|
新しい Xcode プロジェクトを作成する
Xcode で、Objective-C を使用して「BasicExample」という名前の新しい iOS プロジェクトを作成します。
Xcode プロジェクトに IMA DAI SDK を追加する
IMA SDK をインストールするには、ご希望の方法を選択してください。
推奨: Swift Package Manager を使用して SDK をインストールする
Interactive Media Ads SDK はバージョン 3.18.4 から Swift Package Manager に対応しています。Swift パッケージをインポートする手順は次のとおりです。
Xcode で、[File] > [Add Packages] に移動して、IMA DAI SDK の Swift パッケージをインストールします。
表示されたプロンプトで、IMA DAI SDK の Swift パッケージの GitHub リポジトリ(下記)を検索します。
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-ios使用する IMA DAI SDK Swift パッケージのバージョンを選択します。新しいプロジェクトの場合は、[Up to Next Major Version] を使用します。
完了すると、Xcode はパッケージの依存関係を解決し、バックグラウンドでダウンロードします。パッケージの依存関係の追加について詳しくは、Apple の記事を参照してください。
CocoaPods を使用して IMA DAI SDK をインストールする
CocoaPods は、IMA DAI SDK をインストールするための Xcode プロジェクトの依存関係マネージャーです。CocoaPods のインストールと使用について詳しくは、CocoaPods のドキュメントをご覧ください。CocoaPods をインストールしたら、次の手順に沿って IMA DAI SDK をインストールします。
BasicExample.xcodeproj ファイルと同じディレクトリに、Podfile という名前のテキスト ファイルを作成し、次の構成を追加します。
Podfile が含まれているディレクトリから、次のコマンドを実行します。
pod install --repo-update
SDK を手動でダウンロードしてインストールする
Swift Package Manager を使用しない場合は、IMA SDK をダウンロードして、プロジェクトに手動で追加します。
シンプルな動画プレーヤーを作成する
メインビュー コントローラに動画プレーヤーを実装します。AV プレーヤーを UI ビューでラップします。IMA SDK は、UI ビューを使用して広告 UI 要素を表示します。
Objective-C
Swift
広告ローダを初期化する
IMA SDK をビュー コントローラにインポートし、IMAAdsLoaderDelegate プロトコルと IMAStreamManagerDelegate プロトコルを採用して、広告ローダーとストリーム マネージャーのイベントを処理します。
主要な IMA SDK コンポーネントを保存するために、次の非公開プロパティを追加します。
IMAAdsLoader- アプリのライフサイクル全体にわたってストリーム リクエストを管理します。IMAAdDisplayContainer- 広告のユーザー インターフェース要素の挿入と管理を処理します。IMAAVPlayerVideoDisplay- IMA SDK とメディア プレーヤー間の通信を行い、タイムド メタデータを処理します。IMAStreamManager- ストリームの再生を管理し、広告関連のイベントを発生させます。
ビューの読み込み後に、広告ローダ、広告表示コンテナ、動画表示を初期化します。
Objective-C
Swift
ストリーム リクエストを行う
ユーザーが再生ボタンを押したら、新しいストリーム リクエストを行います。ライブ ストリームには IMALiveStreamRequest クラスを使用します。VOD ストリームの場合は、IMAVODStreamRequest クラスを使用します。
ストリーム リクエストには、ストリーム パラメータと、広告表示コンテナと動画表示への参照が必要です。
Objective-C
Swift
ストリーム読み込みイベントをリッスンする
IMAAdsLoader クラスは、ストリーム リクエストの初期化が成功した場合、または失敗した場合に IMAAdsLoaderDelegate メソッドを呼び出します。
adsLoadedWithData デリゲート メソッドで、IMAStreamManagerDelegate を設定します。ストリーム マネージャーを初期化します。初期化時に、ストリーム マネージャーが再生を開始します。
failedWithErrorData デリゲート メソッドで、エラーをログに記録します。必要に応じて、バックアップ ストリームを再生します。DAI のベスト プラクティスをご覧ください。
Objective-C
Swift
広告イベントをリッスンする
IMAStreamManager は、IMAStreamManagerDelegate メソッドを呼び出して、ストリーム イベントとエラーをアプリケーションに渡します。
この例では、プライマリ広告イベントをコンソールに記録します。
Objective-C
Swift
アプリを実行します。成功したら、IMA SDK を使用して Google DAI ストリームをリクエストして再生します。SDK の高度な機能については、左側のサイドバーに表示されている他のガイドまたは GitHub のサンプルをご覧ください。