Android InRead Ads
於 2018年6月7日 (四) 09:12 由 imported>Wikiuser 所做的修訂
簡介
- InRead廣告是SDK6新增的內嵌式廣告, 該廣告會在使用者滑動文章、列表時出現, InRead廣告分為下列三種:
- 大圖式: 夾雜在文章中, 大小為1200x627, 會根據父元件大小縮放(Fit-Width)
- 300x250: 與大圖式相似, 差別為300x250並不會隨父元件縮放
- Anchor: 固定在螢幕下方的廣告, 廣告高度不會超過螢幕的30%
- 在介接方式上, 大圖、300x250與橫幅廣告相似, 而Anchor與懸浮廣告相似, 下列章節將說明如何串接InRead廣告
介接方式
大圖式
Step 1: 設置廣告的XML (以RelativeLayout為例)
<!-- 該RelativeLayout會被放到ScrollView、GridView...等可滑動的元件 -->
<RelativeLayout
android:id="@+id/inread_ad_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal">
</RelativeLayout>
Step 2: 廣告初始設置
- 您必須輸入廣告大小(TWMAdSize)、TAMedia的InRead版位ID以初始化InRead物件, 並且設置Listener偵聽廣告的Callback
- 重要! 請務必在onResume、onPause和onDestroy分別加上resume、pause和destroy函式, 避免廣告發生無法預期的問題
public class MainActivity extends Activity{
private RelativeLayout adContainer = null;
private TWMInReadAdRect rectView = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
adContainer = (RelativeLayout) findViewById(R.id.inread_ad_container);
rectView = new TWMInReadAdRect(MainActivity.this,
TWMAdSize.IN_READ_1200X627, "<TAMedia_InRead_AdUnitId>");
rectView.setAdListener(adListener); // Set listener for inread.
adContainer.addView(rectView); // Add inread into container.
}
@Override
protected void onResume() {
super.onResume();
if (rectView != null) {
rectView.resume();
}
}
@Override
protected void onPause() {
if (rectView != null) {
rectView.pause();
}
super.onPause();
}
@Override
protected void onDestroy() {
if (rectView != null) {
rectView.destroy();
}
super.onDestroy();
}
private TWMAdViewListener adListener = new TWMAdViewListener() {
@Override
public void onReceiveAd(TWMAd twmAd) {
// The callback is trigger when ad load successfully.
}
@Override
public void onFailedToReceiveAd(TWMAd twmAd, TWMAdRequest.ErrorCode errorCode) {
// The callback is trigger when ad load fail.
}
@Override
public void onPresentScreen(TWMAd twmAd) {
// The callback is triggered when user has clicked ad.
}
@Override
public void onDismissScreen(TWMAd twmAd) {
// The callback is triggered when user has returned to the app after clicking ad.
}
@Override
public void onLeaveApplication(TWMAd twmAd) {
// The callback would be trigeer when user has left the app.
}
};
}
Step 3: