このガイドでは、メディエーション アダプタを Android アプリ。
前提条件
特定の広告フォーマットにメディエーションを統合するには、統合する必要があります アプリに実装:
メディエーションを初めてご利用の場合は、読む メディエーションの概要
入札の場合: Google Mobile Ads SDK 18.3.0 以上です。
Mobile Ads SDK を初期化する
クイック スタートガイドでは、モバイル広告を初期化 SDK。 この初期化の呼び出し中に、メディエーション アダプタも 初期化されます。初期化が完了するのを待ってから、 すべての広告ネットワークから最大限の参加が 最初の広告リクエストです
次のサンプルコードは、各アダプターの初期化を確認する方法を示しています。 ステータスが表示されます。
Java
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;
public class MainActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Thread(
() ->
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(
this,
initializationStatus -> {
Map<String, AdapterStatus> statusMap =
initializationStatus.getAdapterStatusMap();
for (String adapterClass : statusMap.keySet()) {
AdapterStatus status = statusMap.get(adapterClass);
Log.d(
"MyApp",
String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status.getDescription(), status.getLatency()));
}
// Start loading ads here...
}))
.start();
}
}
Kotlin
import com.google.android.gms.ads.MobileAds
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val backgroundScope = CoroutineScope(Dispatchers.IO)
backgroundScope.launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(this@MainActivity) { initializationStatus ->
val statusMap =
initializationStatus.adapterStatusMap
for (adapterClass in statusMap.keys) {
val status = statusMap[adapterClass]
Log.d(
"MyApp", String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status!!.description, status.latency
)
)
}
// Start loading ads here...
}
}
}
}
広告を読み込んだ広告ネットワーク アダプタのクラスを確認する
以下は、バナー広告の広告ネットワーク クラス名を記録するサンプルコードです。
Java
public void onAdLoaded() {
Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}
Kotlin
override fun onAdLoaded() {
Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}
getMediationAdapterClassName()
に関する ResponseInfo
のドキュメントをご覧ください。
をご覧ください。
広告オブジェクトを Activity インスタンスで初期化する
新しい広告オブジェクトのコンストラクタ(
AdManagerAdView
),
@type 型のオブジェクトを渡す必要があります。
Context
。
この Context
は、メディエーションの使用時に他の広告ネットワークに渡されます。一部
広告ネットワークでは、より制限の厳しい Context
タイプが必要です。
Activity
Activity
インスタンスがないと広告を配信できない可能性があります。したがって、
広告オブジェクトを初期化するときに Activity
インスタンスを渡すことをおすすめします。
メディエーションを使用する広告ネットワークで
一貫したエクスペリエンスを提供できます
メディエーションでバナー広告を使用する
バナー広告については、第三者広告ソースの UI で更新をすべて無効にしてください メディエーションで使用されているユニット数です。これにより 更新が二重に行われる原因となります。これはアド マネージャーで更新もトリガーされるためです バナー広告ユニットの更新頻度に基づいて 広告が配信されます
メディエーションでネイティブ広告を使用する
ネイティブ広告を実装する際は、次のベスト プラクティスを考慮してください。 調整します。
- ネイティブ広告の表示に関するポリシー
- 広告ネットワークごとに独自のポリシーがあります。メディエーションを使用する際は 引き続き、メディエーション対象のポリシーにアプリが ネットワーク。
loadAds()
ではなくloadAd()
を使用するloadAds()
メソッドは、Google 広告のみを配信します。メディエーション向け広告の場合 代わりにloadAd()
を使用してください。
米国のプライバシー関連州法と GDPR
米国の州のプライバシー または一般データ保護法 規制(GDPR))については、 米国の州規制の手順 設定または GDPR 設定して アド マネージャーのプライバシーとメッセージの 米国の州または GDPR 広告パートナーのリスト。そのようにしないと、 エラーが表示されます
制限付きデータ処理の有効化の詳細 (RDP)と GDPR の入手 Google User Messaging Platform(UMP) できます。