Android のマルチ広告要求

概要

このページには、 ANMultiAdRequestを開始して構成するための手順とコード サンプルが記載されています。 ANMultiAdRequest ユーザーが単一のユニバーサル タグ (UTv3) 要求を使用して複数のオークションを開始できるようにします。その結果は単一のサーバー応答で返されます。

ANMultiAdRequest は具象クラスであり、インターフェイスを実装していません。 このクラスでは、各AdUnitタイプの同じ仕様を使用して、さまざまなAdUnits (バナーネイティブビデオなど) のタイプと動作を採用します。 カスタム キーワードは ANMultiAdRequest に割り当てることができ、含まれている AdUnitsに継承されます。 ANMultiAdRequest には、onMultiAdRequestCompleted()またはonMultiAdRequestFailed()を監視する公開リスナーがあります。

初期化

ユーザーは、次の 2 つの初期化方法のいずれかを選択できます。 ANMultiAdRequest を初期化するには、どちらも引数として memberId と multiAdRequestListener オブジェクトが必要です。 memberIdmultiAdRequestListenerは、インスタンスごとに 1 回だけ設定できます。 現時点では、オプションの パブリッシャー ID パラメーター を設定できます。 すべてのAdUnitsには、初期化プロセスで渡されたものと同じmemberIdが含まれている必要がありますAdUnitsplacementIdsを含むは、その配置の関連付けられたmemberIdを使用します。 初期化が成功すると、 ANMultiAdRequest クラス インスタンスが返されます。

注:

MultiAdRequest インスタンスは、memberId値がそれ自体の値と異なるAdUnitsを拒否します。

初期化メソッド

この機能では、次のメソッドがサポートされています。

AdUnitsの一覧を使用して初期化し、load メソッドを呼び出します

初期化を有効にし、1 行のコードで load メソッドを呼び出します。 インスタンスは、1 つ以上の AdUnitsのリストで初期化されます。 load ライフサイクル中にエラーが発生した場合、クラスは初期化されず、nil オブジェクトが返されます。 load プロセスが成功すると、クラス インスタンスが返されます。

発行元 ID なし

anMultiAdRequest = new ANMultiAdRequest(context, memberId, multiAdRequestListener, loadOnInit, ads);

発行元 ID あり

public ANMultiAdRequest(Context context, int memberId, int publisherId, MultiAdRequestListener multiAdRequestListener, boolean loadOnInit, Ad...ads)

単純な初期化

この基本的な初期化は、クラスのインスタンスを返しますが、アクションは行いません。 構成は、クラス プロパティとメソッドを使用して完了できます。 初期化されたデリゲートは、追加されると AdUnits に設定されます。

発行元 ID なし

anMultiAdRequest = new ANMultiAdRequest(context, memberId, multiAdRequestListener);

発行元 ID あり

public ANMultiAdRequest(Context context, int memberId, int publisherId, MultiAdRequestListener multiAdRequestListener)

引数

変数 範囲 説明
memberId int 必須 メンバー ID。 ANMultiAdRequestに含まれるすべてのAdUnitsは同一のmemberIdsである必要があります。そうでない場合、ANMultiAdRequestは拒否されます。 memberIdは、placementIdを渡すことによっても取得できます。
multiAdRequestListener MultiAdRequestListener 必須 成功か失敗かに関係なく、応答に関する情報を共有するために使用されます。
loadOnInit ブール値 省略可能 初期化中に ANMultiAdRequest を読み込むかどうかを決定するブール値。
ads Ad 省略可能 広告のリストを取得するための可変長引数。

構成

ANMultiAdRequestすべての構成プロパティとメソッドは、AdUnits で使用されるものと同じタイプと使用法です。 ANMultiAdRequestでプロパティが設定されている場合、AdUnitsはそれらのプロパティを継承します。 これらは永続的ではなく、 ANMultiAdRequest がライフサイクルを完了すると、以前のプロパティ値 AdUnits 戻されます。

パラメーター 説明
memberId int メンバー ID。 ANMultiAdRequestに含まれるすべてのAdUnitsは同一のmemberIdsである必要があります。ANMultiAdRequestはインプレッション バスによって拒否されます。 memberIdは、placementIdを渡すことによっても取得できます。
age 文字列 ユーザーの年齢。
gender AdView.GENDER ユーザーの性別。
externalUid 文字列 Monetize UUID2 とマッピング可能なユーザー生成 ID と、複数のシートを持つクライアントのメンバーの間で共有されるマッピング。
customKeyword ArrayList<Pair<String, String>> ANMultiAdRequestに適用されるカスタム キーワード。 これらのキーワードは、添付された AdUnits によって継承されます。 このリストは、各 AdUnit 内で追加のカスタム キーワードで補完できます。
AdUnit Ad ANMultiAdRequestに追加する AdUnit 項目。

ANMultiAdRequest メソッド

load()

インプレッション バスにmulti-tag UTv3リクエストを送信して、含まれているすべてのAdUnitsを読み込みます。 ANMultiAdRequest インスタンスごとに、一度にアクティブにできるのは 1 つの読み込みのみです。 Listnerメソッドのいずれかが起動されると、読み込みが完了します。 成功した場合は true を返し、失敗した場合は false を返します。

public boolean load()

addAdUnit(Ad adUnit)

ANMultiAdRequestAdUnitを追加します。 AdUnits memberIdANMultiAdRequestに割り当てられたmemberIdと一致しない場合、またはANMultiAdRequestに含まれている他のAdUnitsmemberIdと一致しない場合、拒否されます。 ANMultiAdRequestpublisherIdが設定されている場合、publisherIdが異なるAdUnitも拒否されます。 成功した場合は true を返し、失敗した場合は false を返します。

public boolean addAdUnit(Ad adUnit)

引数

パラメーター 範囲 説明
AdUnit Ad 必須 ANMultiAdRequestに追加するAdUnit項目。

removeAdUnit(Ad adUnit)

ANMultiAdRequest からAdUnitを削除します 成功した場合はtrueを返し、失敗した場合はfalseを返します。

public void removeAdUnit(Ad adUnit)

引数

パラメーター 範囲 説明
AdUnit Ad 必須 ANMultiAdRequestから削除するAdUnit項目。

addCustomKeywordWithKey

ANMultiAdRequestにカスタム キーワード (keyword)を追加します。 キーと値のペアとして格納されているカスタム キーワードは、ANMultiAdRequestに含まれるAdUnitsによって継承されます。

public void addCustomKeywords(String key, String value)

引数

パラメーター 範囲 説明
key 文字列 必須 カスタム キーワード (keyword) のキー識別子。
value 文字列 必須 カスタム キーワード (keyword) の値。

removeCustomKeywordWithKey

MultiAdRequestからカスタム キーワード (keyword)を削除します。 削除されたキーワード (keyword)は、ANMultiAdRequestに含まれるAdUnitsによって継承されなくなります。

public void removeCustomKeyword(String key)

引数

パラメーター 範囲 説明
key 文字列 必須 削除するカスタム キーワード (keyword) のキー識別子。

clearCustomKeywords

MultiAdRequestからすべてのカスタム キーワードを削除します。 消去されたキーワードは、ANMultiAdRequestに含まれるAdUnitsによって継承されなくなります。 

public void clearCustomKeywords()

stop()

要求が完了する前に MultiAdRequestを停止します。

public void stop()

activityOnDestroy()

メモリ リークを防ぐために、アクティビティが完了すると広告ユニットが破棄されます。

adUnit.activityOnDestroy()

注:

ベスト プラクティスとして:

  • すべての SDK メソッドをメイン スレッドで呼び出す必要があります。
  • activityOnDestroy() アタッチされた AdUnit が破棄されることが予想される場合は、それらの AdUnit に対して呼び出す必要があります。

if (anMultiAdRequest != null) {
            for (WeakReference<Ad> adRef: anMultiAdRequest.getAdUnitList()) {
                Ad ad  = adRef.get();
                if (ad instanceof BannerAdView) {
                    ((BannerAdView) ad).activityOnDestroy();
                } else if (ad instanceof InterstitialAdView){
                    ((InterstitialAdView) ad).activityOnDestroy();
                } else if (ad instanceof VideoAd) {
                    ((VideoAd) ad).activityOnDestroy();
                }
            }
        }

MultiAdRequestListener メソッド

onMultiAdRequestCompleted()

ANMultiAdRequestの成功を返します。 成功は、含まれているすべての AdUnits が読み込まれ、明確な結果があることを示します。

void onMultiAdRequestCompleted()

onMultiAdRequestFailed(ResultCode code)

ANMultiAdRequest インスタンスによって生成されたUT Requestが何らかの理由で失敗した場合は、エラー メッセージを返します。

void onMultiAdRequestFailed(ResultCode code)