次の方法で共有


Android 用のマルチ広告リクエスト

概要

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

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

初期化

ユーザーは、2 つの初期化方法のいずれかから選択できます。 どちらも初期化するにはANMultiAdRequest、引数として memberId と multiAdRequestListener オブジェクトが必要です。 と multiAdRequestListenermemberId、インスタンスごとに 1 回だけ設定できます。 現時点では、省略可能な Publisher ID パラメーター を設定できます。 すべてがAdUnits、 を含む初期化プロセスAdUnitsで渡されたものと同じmemberIdを含むplacementIds必要があります。その配置の関連付けられている 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。 内に含まれるも AdUnitsANMultiAdRequest はすべて同一 memberIds である必要があります。または が ANMultiAdRequest 拒否されます。 を memberIdplacementIdすことでも達成できます。
multiAdRequestListener MultiAdRequestListener 必須 成功か失敗かに関係なく、応答に関する情報を共有するために使用されます。
loadOnInit ブール値 省略可能 初期化中に を ANMultiAdRequest 読み込むかどうかを決定するブール値。
ads Ad 省略可能 広告の一覧を取得するための可変長引数。

構成

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

パラメーター 説明
memberId int メンバー ID。 内に含まれるも AdUnitsANMultiAdRequest はすべて同一 memberIds であるか、 ANMultiAdRequest Xandr のインプレッション バスによって拒否されます。 を memberIdplacementIdすことでも達成できます。
age 文字列 ユーザーの年齢。
gender AdView.GENDER ユーザーの性別。
externalUid 文字列 Xandr の内部 ID にマップでき、複数のシートを持つクライアントのメンバー間で共有されるマッピングのユーザー生成 ID。
customKeyword ArrayList<ペア<文字列、文字列>> に適用される ANMultiAdRequestカスタム キーワード。 これらのキーワードは、添付された AdUnits によって継承されます。 このリストは、追加のカスタム キーワードを使用して、各 AdUnit 内で補足できます。
AdUnit Ad ANMultiAdRequest追加する AdUnit 項目。

ANMultiAdRequest メソッド

load()

Xandr のインプレッション バスに要求をmulti-tag UTv3送信することで、含まれるAdUnitsすべてを読み込みます。 インスタンスごとに ANMultiAdRequest 、一度にアクティブにできる負荷は 1 つだけです。 いずれかの Listner メソッドが発生すると、読み込みが完了します。 true成功時とfalse失敗時に返されます。

public boolean load()

addAdUnit(Ad adUnit)

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

public boolean addAdUnit(Ad adUnit)

引数

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

removeAdUnit(Ad adUnit)

成功時とfalse失敗時に 戻る true から ANMultiAdRequestAdUnit削除します。

public void removeAdUnit(Ad adUnit)

引数

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

addCustomKeywordWithKey

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

public void addCustomKeywords(String key, String value)

引数

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

removeCustomKeywordWithKey

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

public void removeCustomKeyword(String key)

引数

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

clearCustomKeywords

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

public void clearCustomKeywords()

stop()

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

public void stop()

activityOnDestroy()

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

adUnit.activityOnDestroy()

注:

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

  • すべての SDK メソッドは、メイン スレッドで呼び出す必要があります。
  • activityOnDestroy() が破棄されると予想される場合は、アタッチされた 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)