TAMedia Wiki

Android Banner Ads SDK8

TAmedia Banner廣告支援下列數種形式:

廣告格式

大小(寬度x高度)

TWMAdSize 常數值

BANNER

320x50

TWMAdSize.BANNER

BANNER

300x250

TWMAdSize.BANNER_300X250

BANNER

1200x627

TWMAdSize.BANNER_1200X627

SMART_BANNER

自動對應裝置寬度, 並對應適當的高度

TWMAdSize.SMART_BANNER



SDK設計文件

Banner


實作方式

動態生成TWMAdView加入Layout中

Layout (XML範例)

Activity(Kotlin)

 <?xml version="1.0" encoding="utf-8"?>
 <RelativeLayout
   android:id="@+id/ad_container"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:gravity="center_horizontal">
 </RelativeLayout> 

 var adView: TWMAdView? = null
 var mRelativeLayout: RelativeLayout? = null
 
 companion object {  
     const val TAMEDIA_BANNER_AD_UNIT_ID: String = "INSERT_YOUR_AD_UNIT_ID"
 }
 // Other Implement ... 
 
 // 依序傳入Activity, TWMAdSize, 以及Ad Unit Id,TWMAdSize請參考頁首的TWMAdSize常數值
 adView = TWMAdView(this,TWMAdSize.BANNER,TAMEDIA_BANNER_AD_UNIT_ID)
 val layoutParams = RelativeLayout.LayoutParams(
     RelativeLayout.LayoutParams.WRAP_CONTENT,
     RelativeLayout.LayoutParams.WRAP_CONTENT
 )
 layoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM)
 layoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL)
 adView

或是將TWMAdView宣告至XML中, 透過findViewById取得TWMAdView

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical" >
   <com.taiwanmobile.pt.adp.view.TWMAdView
       xmlns:ad="http://schemas.android.com/apk/lib/com.taiwanmobile.pt.adp.view"
       android:id="@+id/adView"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       ad:adSize="BANNER"
       ad:adunitId="{AD_UNIT_ID}" >
   </com.taiwanmobile.pt.adp.view.TWMAdView>
</LinearLayout>

 adView.setAdListener(object : TWMAdViewListener {
    override fun onReceiveAd(ad: TWMAd) {
         // 表示本次請求收到廣告
    }
    override fun onFailedToReceiveAd(ad: TWMAd, errorCode: TWMAdRequest.ErrorCode) {
         // 表示本次請求發生錯誤, 並沒有廣告內容可供使用
    }
    override fun onPresentScreen(ad: TWMAd) {
         // 表示廣告內容已呈現
    }
    override fun onDismissScreen(ad: TWMAd) {
         // 表示廣告內容已被關閉
    }
    override fun onLeaveApplication(ad: TWMAd) {
         // 表示因點擊廣告或其他因素離開app
    }
 })



請求廣告前,你需要創建一個預設的TWMAdRequest物件, 並將TWMAdReqeust物件傳入loadAd

  adView?.loadAd(TWMAdRequest())    



最後請記得, 於Activity.onDestroy()回收TWMAdView物件

  override fun onDestroy() {

      super.onDestroy()

      if (view is TWMAdView) {

          view.destroy()

      }

      mRelativeLayout?.removeAllViews()

  }



畫面展示

應用程式開啟

點擊Banner後開啟網頁

點擊Banner後撥打電話

SDK8_banner.png
SDK8_banner_click.png
4.png



Compose new-xxl.png

可參考SDK下載包中之Compose範例程式(BannerComposeActivity), TWMBannerComposable()中有完整的使用方式與介紹

應用程式開啟

點擊Banner後開啟網頁

無廣告內容

SDK8.0.7_banner.png
SDK8.0.7_banner_click.png
SDK8.0.7_banner_no_fill.png



將應用程式的廣告請求標記為兒童導向內容(13 歲以下)


TWMAdRequest

請於廣告請求時透過TWMAdRequest.setChildDirectedTreatment()告知SDK該廣告標記為兒童導向內容
Android裝置的Google廣告ID (AAID) 於此模式時不會被存取與紀錄
        val adView: TWMAdView = TWMAdView(activity, adSize, adunitId)

        val paramAd = RelativeLayout.LayoutParams(

            RelativeLayout.LayoutParams.MATCH_PARENT,

            RelativeLayout.LayoutParams.WRAP_CONTENT

        )

        paramAd.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM)

        paramAd.addRule(RelativeLayout.CENTER_HORIZONTAL)

        adView?.layoutParams = paramAd

        adView?.visibility = View.INVISIBLE

        container?.addView(adView)



        adView?.loadAd(adRequest.apply {

            setChildDirectedTreatment(true)

        })

回首頁