動画リワード広告と呼ばれる動画視聴型の広告は、最近マネタイズ効果が高いと言われています
この動画リワード広告、Unity では Unity Ads という SDK を利用して簡単に導入できるようになっています
しかし、残念ながら UWP は対応してません!!
というわけで他に Unity for UWP で動画リワード広告が表示できる SDK はないか探してみたところ Vungle 社のものがありました
せっかくなので試してみようと思います
まずは サインアップページ から必要事項を入力してアカウント登録
メール送ったよ表示がされるので入力したメールアドレス宛てのメールを確認
こんな内容のメールが届きました・・・まずは STEP1 でメールアドレス確認
登録したアドレスとパスワードでログイン
ダッシュボード的なページに遷移するので、左下の方の「Add New Application」リンクから広告を表示したいアプリ登録を開始
Platform は Windows、Application Name は自分が識別できるアプリ名、Category は通常 Games を指定します
すでにストアに公開済みの場合は「My app is live on the app store」にチェックを入れます
「Maximum Ad Duration」は表示広告の切り替え時間間隔で、30秒~60秒に設定するのが一般的みたいです
なお、「Callback URL」は主に Web 上で表示する場合のコールバック用なので Unity の場合は不要だと思います
その他はお好みで「Submit」をクリック、利用規約的なものが表示されるので確認後チェックボックスにチェックを入れ同意で作成!
作成後はアプリごとの設定詳細が表示されました
最初は Test Mode しか選べませんが、ストア公開後、アプリページの URL を指定すると Active モードに切り替えて収益化できるようになります
この画面の「Vungle Application ID」は広告を再生するために SDK に指定する必要があるのでメモしておきます
ここまで終わったら Unity 用の SDK を下記からダウンロードします!
Unity を通して広告を再生する場合は Windows 用 SDK ではなく、右下の Unity 用 Plugin が必要なので注意ください
これをダウンロードして開くと Unity にウィンドウが切り替わりパッケージインポートウィンドウが開くはず
Android、iOS(Editor含む)、demo 用のものは不要なのでチェックを外してインポート
コンパイルエラーが出た場合は、Platform を Windows に変更します
※ Android や iOS でもソースを共用する場合は demo ディレクトリ以外はインポートしておいた方がビルドエラーが起きなくて楽です
ここから先は公式の導入手順にも一切書いてないのですが、やらないとビルドエラーになったのでたぶん下記の設定が必要です
下記2つの場所の DLL は Any Platform のチェックは外して Editor のみにチェックを付けます
下記3つの場所の DLL は WinRT 用のようなので WSAPlayer のみにチェックを付けます
ここまで設定したらあとは Vungle の API を利用するだけ
アプリ起動後なるべく早くに下記の処理を実行し
// 56b707d3a33e75500b000053 はメモしておいた App ID を指定する Vungle.init(null, null, "56b707d3a33e75500b000053");
動画リワード広告を再生したいタイミングで次のような処理をはさむだけ
/// <summary> /// See Ad ボタン押下イベントハンドラ /// </summary> public void OnSeeAdButtonClicked() { if (Vungle.isAdvertAvailable()) { // 広告の音声を流さない場合は false を指定 Vungle.setSoundEnabled(true); Vungle.onAdFinishedEvent += this.AdFinished; Vungle.playAd(); } else { // 広告切れの場合の補償処理(本来の半分の報酬をつけるなど) } } /// <summary> /// 広告再生完了イベントハンドラ /// </summary> /// <param name="e"></param> private void AdFinished(AdFinishedEventArgs e) { Vungle.onAdFinishedEvent -= this.AdFinished; if (e.IsCompletedView) { // 動画を最後まで見た場合の処理 } if (e.WasCallToActionClicked) { // 動画が誘導したアクション(一般にはダウンロード)が実行された場合の処理 } }
今回はボタン押下をトリガーにして広告を再生するようにしてみました
実際には Vungle のみの利用だと広告切れを起こしやすいので、その場合の補償処理なども入れておいた方がよいと思います
あとは PlayerSettings でインターネット(クライアント)のアクセスを許可するようにして UWP プロジェクトを Build でエクスポート
さてテストモードのまま試しに実行してみました
UWP でも動画リワード広告が再生できましたね