「Android Banner Ads 3.0 SDK8」修訂間的差異
跳至導覽
跳至搜尋
imported>Wikiuser (新頁面: == <b>Banner SD8 廣告支援格式</b> == :<span style="font-size:16px;">TAMedia Banner廣告支援下列數種形式:</span> {| class="wikitable" style="width:50%" |- ! 廣告格...) |
imported>Wikiuser (→實作方式) |
||
(未顯示同一使用者於中間所作的 11 次修訂) | |||
行 7: | 行 7: | ||
| align="center"|BANNER || align="center"|320x50 || align="center"|TWMAdSize.BANNER | | align="center"|BANNER || align="center"|320x50 || align="center"|TWMAdSize.BANNER | ||
|- | |- | ||
| align="center"| | | align="center"|BANNER || align="center"|300x250 || align="center"|TWMAdSize.BANNER_300X250 | ||
|- | |- | ||
| align="center"| | | align="center"|BANNER || align="center"|1200x627 || align="center"|TWMAdSize.BANNER_1200X627 | ||
|- | |- | ||
| align="center"| | | align="center"|SMART_BANNER || align="center"|自動對應裝置寬度, 並對應適當的高度 || align="center"|TWMAdSize.SMART_BANNER | ||
|} | |} | ||
<br><br> | <br><br> | ||
行 21: | 行 19: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Layout (XML範例) !! Activity( | ! Layout (XML範例) !! Activity(Kotlin) | ||
|- | |- | ||
| style="width:40%; padding:1%;"| | | style="width:40%; padding:1%;"| | ||
行 32: | 行 30: | ||
</RelativeLayout> | </RelativeLayout> | ||
| style="width:60%; padding: 1%;"| | | style="width:60%; padding: 1%;"| | ||
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 ... | // Other Implement ... | ||
<b>// 依序傳入Activity, TWMAdSize, 以及Ad Unit Id,TWMAdSize請參考頁首的TWMAdSize常數值</b> | <b>// 依序傳入Activity, TWMAdSize, 以及Ad Unit Id,TWMAdSize請參考頁首的TWMAdSize常數值</b> | ||
adView = | adView = TWMAdView(this,TWMAdSize.BANNER,TAMEDIA_BANNER_AD_UNIT_ID) | ||
RelativeLayout | val layoutParams = RelativeLayout.LayoutParams( | ||
RelativeLayout.LayoutParams.WRAP_CONTENT, | |||
RelativeLayout.LayoutParams.WRAP_CONTENT | |||
) | |||
layoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM) | |||
layoutParams.addRule(RelativeLayout.CENTER_HORIZONTAL) | |||
adView!!.layoutParams = layoutParams | |||
mRelativeLayout?.addView(adView) | |||
|} | |} | ||
:<b><span style="color:#ff0000">重要, 針對SDK 2.0後,請在Activity的生命週期中加入下述的呼叫,以便取得更好的服務經驗</span></b> | :<b><span style="color:#ff0000">重要, 針對SDK 2.0後,請在Activity的生命週期中加入下述的呼叫,以便取得更好的服務經驗</span></b> | ||
override fun onDestroy() { | |||
if (view is TWMAdView) { | |||
view.destroy() | |||
} | |||
mRelativeLayout?.removeAllViews() | |||
super.onDestroy() | |||
} | } | ||
<br><br> | <br><br> | ||
*<span style="font-size:16px;">加入TWMAdViewListener監聽廣告投放情況</span> | *<span style="font-size:16px;">加入TWMAdViewListener監聽廣告投放情況</span> | ||
adView.setAdListener( | adView.setAdListener(object : TWMAdViewListener { | ||
override fun onReceiveAd(ad: TWMAd) { | |||
<b>// 表示本次請求收到廣告</b> | |||
} | |||
override fun onFailedToReceiveAd(ad: TWMAd, errorCode: TWMAdRequest.ErrorCode) { | |||
<b>// 表示本次請求發生錯誤, 並沒有廣告內容可供使用</b> | |||
} | |||
override fun onPresentScreen(ad: TWMAd) { | |||
<b>// 表示廣告內容已呈現</b> | |||
} | |||
override fun onDismissScreen(ad: TWMAd) { | |||
<b>// 表示廣告內容已被關閉</b> | |||
} | |||
override fun onLeaveApplication(ad: TWMAd) { | |||
<b>// 表示因點擊廣告或其他因素離開app</b> | |||
} | |||
}) | }) | ||
<br><br> | <br><br> | ||
*<span style="font-size:16px;"> | *<span style="font-size:16px;">請求廣告</span> | ||
: | :請求廣告前,你需要創建一個預設的TWMAdRequest物件 | ||
:並將TWMAdReqeust物件傳入loadAd | |||
adView?.loadAd(TWMAdRequest()) | |||
: | <br> | ||
:或是,透過TWMAdRequest額外設置使用者生日,可讓您的APP獲得更多元的廣告內容<br> | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
行 116: | 行 92: | ||
|- | |- | ||
| style="width:60%; padding:1%;"| | | style="width:60%; padding:1%;"| | ||
val request = TWMAdRequest() | |||
try { | try { | ||
<b>//定義好時間字串的格式</b> | <b>// 定義好時間字串的格式</b> | ||
val sdf = SimpleDateFormat("yyyy/MM/dd", Locale.getDefault()) | |||
<b>//將字串轉成Date型</b> | <b>// 將字串轉成Date型</b> | ||
Date | val birthDate: Date = sdf.parse("1992/01/01") | ||
<b>// 將生日加入request</b> | <b>// 將生日加入request</b> | ||
request.setBirthday(birthDate) | request.setBirthday(birthDate) | ||
}catch (Exception e) {} | } catch (Exception e) {} | ||
<b>// 透過TWMAdRequest載入廣告</b> | |||
adView?.loadAd(adRequest) | |||
| style="width:40%; padding: 1%;"| | | style="width:40%; padding: 1%;"| | ||
<b>// | <b>// 創建Calendar並設定生日 (注意! 月份的編號是由0至11)</b> | ||
val birthDate = Calendar.getInstance() | |||
<b>// 設定生日為1992/01/01</b> | <b>// 設定生日為1992/01/01</b> | ||
birthDate | birthDate[1992, 1] = 1 | ||
<b>// 將生日加入request</b> | <b>// 將生日加入request</b> | ||
val adRequest = TWMAdRequest() | |||
request.setBirthday(birthDate) | request.setBirthday(birthDate) | ||
<b>// 透過TWMAdRequest載入廣告</b> | |||
adView?.loadAd(adRequest) | |||
|} | |} | ||
<br><br> | <br><br> | ||
==<b>畫面展示</b>== | ==<b>畫面展示</b>== | ||
行 186: | 行 126: | ||
| align="center" | 點擊Banner後撥打電話 | | align="center" | 點擊Banner後撥打電話 | ||
|- | |- | ||
| align="center" | [[檔案: | | align="center" | [[檔案:SDK8 banner.png]] | ||
| align="center" | [[檔案: | | align="center" | [[檔案:SDK8 banner click.png]] | ||
| align="center" | [[檔案:4.png]] | | align="center" | [[檔案:4.png]] | ||
|} | |} |
於 2021年9月10日 (五) 07:14 的最新修訂
Banner SD8 廣告支援格式
- TAMedia Banner廣告支援下列數種形式:
廣告格式 | 大小(寬度x高度) | TWMAdSize 常數值 |
---|---|---|
BANNER | 320x50 | TWMAdSize.BANNER |
BANNER | 300x250 | TWMAdSize.BANNER_300X250 |
BANNER | 1200x627 | TWMAdSize.BANNER_1200X627 |
SMART_BANNER | 自動對應裝置寬度, 並對應適當的高度 | TWMAdSize.SMART_BANNER |
實作方式
- 廣告初始設置
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!!.layoutParams = layoutParams mRelativeLayout?.addView(adView) |
- 重要, 針對SDK 2.0後,請在Activity的生命週期中加入下述的呼叫,以便取得更好的服務經驗
override fun onDestroy() { if (view is TWMAdView) { view.destroy() } mRelativeLayout?.removeAllViews() super.onDestroy() }
- 加入TWMAdViewListener監聽廣告投放情況
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())
- 或是,透過TWMAdRequest額外設置使用者生日,可讓您的APP獲得更多元的廣告內容
使用Date | 使用Calendar |
---|---|
val request = TWMAdRequest() try { // 定義好時間字串的格式 val sdf = SimpleDateFormat("yyyy/MM/dd", Locale.getDefault()) // 將字串轉成Date型 val birthDate: Date = sdf.parse("1992/01/01") // 將生日加入request request.setBirthday(birthDate) } catch (Exception e) {} // 透過TWMAdRequest載入廣告 adView?.loadAd(adRequest) |
// 創建Calendar並設定生日 (注意! 月份的編號是由0至11) val birthDate = Calendar.getInstance() // 設定生日為1992/01/01 birthDate[1992, 1] = 1 // 將生日加入request val adRequest = TWMAdRequest() request.setBirthday(birthDate) // 透過TWMAdRequest載入廣告 adView?.loadAd(adRequest) |
畫面展示
應用程式開啟 | 點擊Banner後開啟網頁 | 點擊Banner後撥打電話 |