概要
Vungle MREC は現在ベータ段階にあります。起動を成功させる方法については、アカウントマネージャーに直接お問い合わせください。
Vungle SDK v6.4.11 以降、Vungle は MREC 動画広告をサポートしています。MREC とは、「medium rectangle (中程度のレクタングル)」広告の略称です。インタースティシャル広告とは異なり、MREC 広告はフルスクリーン表示を必要としません。バナー広告と同様に、MREC 動画広告は、アプリのレイアウト内の任意の場所を占めるレクタングルの広告で、通常は画面の上部または下部に表示されるため、ユーザーは広告の再生中にアプリを引き続き操作できます。MREC 広告をレンダリングするためのコンテナ サイズは、業界標準の 300x250 です。
手順 1. 基本的な統合を完了する
MREC 広告を Android または Amazon アプリに統合するには、基本的な統合の記事の手順に従って開始します。この記事には補足情報が含まれており、基本的な統合が完了していることを前提としています。
手順 2. イベント リスナーを実装する
イベント リスナーを実装する
広告読み込みイベント用の LoadAdCallback
と広告再生イベント用の PlayAdCallback
を実装することで一般的なコールバックを使用したり、loadAd
と playAd
を呼び出す場合にはインライン コールバックを使用したりできます。
LoadAdCallback
private final LoadAdCallback vungleLoadAdCallback = new LoadAdCallback() {
@Override
public void onAdLoad(String id) {
// Ad has been successfully loaded for the placement
}
@Override
public void onError(String id, VungleException exception) {
// Ad has failed to load for the placement
}
};
// 6.4.x & below
private final LoadAdCallback vungleLoadAdCallback = new LoadAdCallback() {
@Override
public void onAdLoad(String id) {
// Ad has been successfully loaded for the placement
}
@Override
public void onError(String id, Throwable throwable) {
// Ad has failed to load for the placement
}
};
オーバーライド可能なメソッド | 説明 |
---|---|
onAdLoad(String id) |
広告が正常に読み込まれ、広告配置用に再生されるときに呼び出されます。 |
onError(String id) |
広告の再生中にエラーが発生したときに呼び出されます。VungleException の getLocalizedMessage からのエラー メッセージを確認し、getExceptionCode をデバッグに使用できます。 |
PlayAdCallback
private final PlayAdCallback vunglePlayAdCallback = new PlayAdCallback() {
@Override
public void onAdStart(String id) {
// Ad experience started
}
@Override
public void onAdEnd(String id) {
// Ad experience ended
}
@Override
public void onAdClick(String id) {
// User clicked on ad
}
@Override
public void onAdRewarded(String id) {
// User earned reward for watching an ad
}
@Override
public void onAdLeftApplication(String id) {
// User has left app during an ad experience
}
@Override
public void onError(String id, VungleException exception) {
// Ad failed to play
}
};
// 6.5.x & below
private final PlayAdCallback vunglePlayAdCallback = new PlayAdCallback() {
@Override
public void onAdStart(String placementReferenceId) {
// Ad experience started
}
// Deprecated
@Override
public void onAdEnd(String placementReferenceId, boolean completed, boolean isCTAClicked) {
// Invoked when the ad experience is completed
// isCTAClicked flag indicates whether CTA download button has been triggered
// completed flag will indicate whether user has watched 80% of video or longer.
}
@Override
public void onError(String placementReferenceId, VungleException exception) {
// Ad failed to play
}
};
オーバーライド可能なメソッド | 説明 |
---|---|
onAdStart(String id) |
広告が正常に起動し、デバイスに表示されたときに呼び出されます。 |
onAdEnd(String id) |
制御がホスティングアプリに戻される直前、広告エクスペリエンス全体が完了したときに呼び出されます。 |
onAdClick(String id) |
ユーザーが動画広告またはダウンロード ボタンをクリックしたときに呼び出されます。 |
onAdRewarded(String id) |
ユーザーが報酬型動画のうち 80% を再生し、報酬の対象となるときに呼び出されます。ユーザーへの報酬はここで行われ、報酬型広告配置に対してのみトリガーされます。 |
onAdLeftApplication(String id) |
広告のストア ページを開くなど、広告エクスペリエンスが完了する前にユーザーがアプリを離れたときに呼び出されます。 |
onAdError(String id, VungleException exception) |
広告の再生中にエラーが発生したときに呼び出されます。VungleException の getLocalizedMessage からのエラー メッセージを確認し、getExceptionCode をデバッグに使用できます。 |
手順 3. MREC 広告を読み込み、表示し、閉じる
MREC 広告を読み込む
MREC 広告の読み込みは、フルスクリーン広告の読み込みと同様です。ただし、MREC フィードをサポートするには、広告配置を構成する必要があります。MREC の広告配置を利用可能にするには、アカウント マネージャーにお問合せください。
MREC 広告を表示する
ビューのサイズは固定されているため、MREC 広告の表示に使用するコンテナは 300dp x 250dp に指定する必要があり、ビューは画面上のどこにでも配置できます。このコンテナは RelativeLayOut
です。
この RelativeLayout
は画面上のどこにでも配置できます。次に AdConfig.setAdSize
を呼び出して広告サイズを AdConfig.AdSize.VUNGLE_MREC
に指定し、Vungle.getNativeAd
の呼び出し時にこのオブジェクトを渡して MREC 広告オブジェクトを取得する必要があります。
最後に、addView
関数を呼び出して、コンテナを MREC 広告に関連付けます。Vungle MREC は、デフォルトでサウンドを有効にして再生しますが、setMuted
オプションを true
に設定するとビデオをミュート状態で開始できます。
private RelativeLayout mrecContainer = findViewById(...);
AdConfig adConfig = new AdConfig();
adConfig.setAdSize(AdConfig.AdSize.VUNGLE_MREC);
adConfig.setMuted(true);
VungleNativeAd vungleNativeAd = Vungle.getNativeAd("MREC_ID", adConfig, vunglePlayAdCallback);
View nativeAdView = vungleNativeAd.renderNativeView();
mrecContainer.addView(nativeAdView);
MREC 広告を閉じる
MREC 広告ビューをコンテナ ビューに追加したため、広告ビューを画面から消す場合、アクティビティやフラグメントを破棄する場合、または親のビュー コンテナを再利用する場合や破棄する場合は、MREC 広告ビューも終了する必要があります。前の広告を閉じずに別の MREC 広告を再生しようとすると、アプリ内で予期しない動作が発生することがあります。そのため、finishDisplayingAd
を呼び出して広告エクスペリエンスを終了させます。また、ビュー onAdEnd
イベントを削除することをお勧めします。
private VungleNativeAd vungleNativeAd;
// Calling finishDisplayingAd when you want to finish displaying MREC Ad
// will trigger onAdEnd and will tell you when you can remove the child
// MREC view container
vungleNativeAd.finishDisplayingAd();
// And removing empty ad view from container
@Override
public void onAdEnd(String id, boolean completed) {
…
parentView.removeView(nativeAdView);
vungleNativeAd = null;
…
}
MREC 広告再生の一時停止と再開を切り替える
ユーザーが、画面上で動画広告が表示されない場所までスクロールした場合、動画を一時停止し、再び表示されたら再開する必要があります。この一時停止と再開の状態を制御するには、VungleNativeAd
インスタンスから setAdVisibility
を呼び出し、動画が表示可能な場合は true
に設定し、動画が画面から消えるときは false
に設定します。setAdVisibility
を View visibility と混同しないようにしてください。View visibility は、MREC 広告ビューの表示/非表示を Vungle SDK に通知します。SDK は、その状態に応じて、動画再生を一時停止または再開します。
- MREC 広告を一時停止する:
vungleNativeAd.setAdVisibility(false);
- MREC 広告を再開する:
vungleNativeAd.setAdVisibility(true);
手順 4. MREC 広告をカスタマイズする (オプション)
新しい adConfig
オブジェクトを playAd
に渡すことにより、再生する個々の広告をカスタマイズすることができます。AdConfig
オブジェクトが null の場合、広告はデフォルトの構成設定で再生されます。null ではない場合は、AdConfig
セッターの設定をオーバーライドします。以下に、AdConfig
の使用例を示します。
Vungle.playAd(placementReferenceID, adConfig, vunglePlayAdCallback);
上記の例では、カスタマイズされた構成オプションを含む adConfig
オブジェクトを使用しています。以下のように AdConfig
オブジェクトを設定します。
AdConfig adConfig = new AdConfig();
adConfig.setAdOrientation(AdConfig.AUTO_ROTATE);
adConfig.setMuted(true);
Vungle.playAd(placementReferenceID, adConfig, vunglePlayAdCallback);
以下の表に、MREC 広告で使用可能な AdConfig
オプションを示します。
オプション | 説明 |
|
対象のアプリケーションに一致するオーディオ設定を使用して動画を開始する場合は「false」、アプリケーションに関係なくミュート状態で動画を開始する場合は「true」を設定します。 |
|
同じセッション内で再生された広告の数をトラッキングするための序数カウントを整数値で指定します。 |
注: 複数の広告に対して同じ AdConfig
オブジェクトを使用できます。