Android Integeration with Ad Manager Mediation
詳細範例
Google ADS 22.2.0 Mediation Project (包含橫幅、插頁、原生廣告)。
新增廣告單元 / 收益群組
登入Google Ad Manager
https://admanager.google.com/home/
橫幅(Banner)
進入 Ad Manager 網頁選擇 應用單元 -> 新增廣告單元
名稱: GAM_Mediation_Android_Banner_320x50
大小: 320x50
新增收益群組
名稱: GAM_Mediation_Android_Banner_320x50
狀態: 有效
廣告格式: 橫幅
新增收益夥伴
其他收益夥伴詳細資訊
Label: 用於AdManagerAdView.adUnitId
Class Name: com.taiwanmobile.pt.gam.mediation.TAmediaGAMCustomEvent
Parameter: TAmedia廣告版位
插頁(Interstitial)
進入 Ad Manager 網頁選擇 應用單元 -> 新增廣告單元
名稱: GAM_Mediation_Android_Interstitial
大小: 1024x768, 768x1024, 480x320, 320x480
新增收益群組
名稱: GAM_Mediation_Android_Interstitial
狀態: 有效
廣告格式: 插頁式
新增收益夥伴
其他收益夥伴詳細資訊
Label: 用於AdManagerInterstitialAd.load()
Class Name: com.taiwanmobile.pt.gam.mediation.TAmediaGAMCustomEvent
Parameter: TAmedia廣告版位
原生(Native)
進入 Ad Manager 網頁選擇 應用單元 -> 新增廣告單元
名稱: GAM_Mediation_Android_Native
大小: 自訂顯示
新增收益群組
名稱: GAM_Mediation_Android_Native
狀態: 有效
廣告格式: 原生格式
新增收益夥伴
其他收益夥伴詳細資訊
Label: 用於AdLoader.Builder().forNativeAd()
Class Name: com.taiwanmobile.pt.gam.mediation.TAmediaGAMCustomEvent
Parameter: TAmedia原生廣告參數(下方說明)
MediaView顯示影音
adUnitId: TAmedia廣告版位
mediaType: VIDEO
videoStartUnmuted: 影片聲音預設開關, true: 有聲音, false: 無聲音
videoCustomControlRequest: 影片上是否要顯示秒數, 靜音, 前往瀏覽等UI按鈕, true: 不顯示, false: 顯示
{ "parameters": { "adUnitId": "ADUNIT_ID", "mediaType": "VIDEO", "videoStartUnmuted":true, "videoCustomControlRequest":true } }
MediaView顯示大圖(1200x628)
adUnitId: TAmedia廣告版位
mediaType: BIG_IMAGE
{ "parameters": { "adUnitId": "ADUNIT_ID", "mediaType": "BIG_IMAGE" } }
MediaView顯示小圖(960x640)
adUnitId: TAmedia廣告版位
mediaType: SMALL_IMAGE
{ "parameters": { "adUnitId": "ADUNIT_ID", "mediaType": "SMALL_IMAGE" } }
開發者程式
橫幅(Banner)
In GAMBannerActivity.kt, 使用AdManagerAdView載入AdManagerAdRequest
adUnitId?.let { val request = AdManagerAdRequest.Builder().build() adManagerAdView = AdManagerAdView(this@GAMBannerActivity) adManagerAdView?.adUnitId = it adManagerAdView?.setAdSizes(adSize) adManagerAdView?.adListener = object: AdListener() { override fun onAdLoaded() {} override fun onAdFailedToLoad(adError : LoadAdError) {} override fun onAdClicked() {} override fun onAdImpression() {} } adManagerAdView?.loadAd(request) // add view into layout binding.adContainer.addView(adManagerAdView) }
插頁(Interstitial)
In GAMInterstitialActivity.kt, 使用AdManagerInterstitialAd載入AdManagerAdRequest物件請求廣告
adUnitId?.let { val adRequest = AdManagerAdRequest.Builder().build() AdManagerInterstitialAd.load(this, it, adRequest, object : AdManagerInterstitialAdLoadCallback() { override fun onAdFailedToLoad(adError: LoadAdError) {} override fun onAdLoaded(ad: AdManagerInterstitialAd) { interstitialAd = ad interstitialAd?.show(this@GAMInterstitialActivity) } }) }
原生(Native)
TAmedia中介程式
橫幅(Banner)
插頁(Interstitial)
原生(Native)