「Android InRead Ads」修訂間的差異
跳至導覽
跳至搜尋
imported>Wikiuser |
imported>Wikiuser |
||
行 13: | 行 13: | ||
===<b>大圖式</b> === | ===<b>大圖式</b> === | ||
<big><u>Step 1: 設置廣告的XML (以RelativeLayout為例)</u></big><br> | <big><u>Step 1: 設置廣告的XML (以RelativeLayout為例)</u></big><br> | ||
<b><!-- | <b><!-- 該RelativeLayout會被放到ScrollView、GridView...等可滑動的元件 --></b> | ||
<RelativeLayout | <RelativeLayout | ||
android:id="@+id/inread_ad_container" | android:id="@+id/inread_ad_container" | ||
行 21: | 行 21: | ||
</RelativeLayout> | </RelativeLayout> | ||
<br> | <br> | ||
<big><u>Step 2: | <big><u>Step 2: 廣告初始設置</u></big><br> | ||
:您必須輸入廣告大小(TWMAdSize)、TAMedia的InRead版位ID以初始化InRead物件, 並且設置Listener偵聽廣告的Callback | |||
:<b><span style="color:red;">重要! 請務必在onResume、onPause和onDestroy分別加上resume、pause和destroy函式, 避免廣告發生無法預期的問題</span></b> | |||
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, <b>"<TAMedia_InRead_AdUnitId>"</b>); | |||
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. | |||
} | |||
}; | |||
} | |||
<br> | |||
<big><u>Step 3: </u></big><br> |
於 2018年6月7日 (四) 09:12 的修訂
簡介
- 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: