Android - 插页广告
适用于 SDK v4.9 及以下版本的横幅广告串接说明
适用于 SDK v4.9 及以下版本的横幅广告串接说明
插页式广告是互动式多媒体 HTML5 或「网络应用程式」,在应用程式的正常转换点显示 (例如启动、影片播放前或游戏关卡载入时)。网路应用程式使用上就像在应用程式内浏览一样,只有简单的关闭按钮,而没有任何导览列,因为导览配置就包含在内容本身。这类广告由于内容更丰富、更吸引人,因此製作起来更昂贵,而曝光机会相对有限。
在开始串接广告之前,请确认您已经将 Vpon SDK 导入您的 Xcode 专案中。若您尚未完成,请先参考串接说明完成相关设定。
请参考以下说明,完成插页广告:
com.vpadn.ads.*
VpadnInterstitialAd
建议您在应用程式的 Activity 内进行上述步骤。
import com.vpadn.ads.*;
public class MainActivity extends Activity implements VpadnAdListener {
// Declare VpadnInterstitialAd instance
private VpadnInterstitialAd interstitialAd;
// Please fill in with your License Key
private String interstitialBannerId = "License Key";
...
}
public class MainActivity extends Activity implements VpadnAdListener {
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Create VpadnInterstitialAd instance
interstitialAd = new VpadnInterstitialAd(this, interstitialBannerId, "TW");
interstitialAd.setAdListener(this);
VpadnAdRequest request = new VpadnAdRequest();
// Start to load Interstitial Ad
interstitialAd.loadAd(request);
}
@Override
protected void onDestroy() {
super.onDestroy();
if (interstitialAd != null) {
interstitialAd.destroy();
interstitialAd = null;
}
}
不过,目前没有任何项目可以加入检视阶层,您必须等到这个请求成功后才能尝试显示广告,这点请格外注意。
为了维持良好的用户体验,请避免取得插页广告后就立刻将广告展示出来。我们建议您可以先拉取插页广告,在特定时机展示广告。舉例來說:您可以實作 VpadnAdListener 來監聽廣告請求的事件,在 onVpadnReceiveAd 事件被觸發後,再將廣告顯示出來,請參考以下範例:
public class MainActivity extends Activity implements VpadnAdListener {
...
@Override
public void onVpadnReceiveAd(VpadnAd ad) {
if (ad == this.interstitialAd) {
// Show Interstitial Ad
interstitialAd.show();
}
}
...
}
插頁廣告展示後,將會佔據整個畫面,直到使用者點擊關閉後,控制權才會交還給應用程式。
如果您的 License Key 还未通过审核的话,您可以使用下列的方式取得测试广告:
public class MainActivity extends Activity implements VpadnAdListener {
...
VpadnAdRequest adRequest = new VpadnAdRequest();
HashSet<String> testDeviceImeiSet = new HashSet<String>();
// Add Android device advertising id
testDeviceImeiSet.add("your device advertising id");
adRequest.setTestDevices(testDeviceImeiSet);
vponBanner.loadAd(adRequest);
...
}
您可以使用下列方式取得 device 上的 Advertising ID:
public class MainActivity extends Activity implements VpadnAdListener {
@Override
public void onVpadnReceiveAd(VpadnAd ad){
Log.d("Banner", "VpadnReceiveAd");
}
@Override
public void onVpadnFailedToReceiveAd(VpadnAd ad, VpadnAdRequest.VpadnErrorCode errCode){
Log.d("Banner", "fail to receive ad (" + errCode + ")");
}
@Override
public void onVpadnPresentScreen(VpadnAd ad){
Log.d("Banner", "VpadnPresentScreen");
}
@Override
public void onVpadnDismissScreen(VpadnAd ad){
Log.d("Banner", "vpadnDismissScreen");
}
@Override
public void onVpadnLeaveApplication(VpadnAd ad){
Log.d("Banner", "VpadnLeaveApplication");
}
}
我们不建议您在程式开啓时直接拉取插頁廣告并立即显示
為了避免拖慢程式开啓时的执行速度,我们建议您可以先 loadAd(),但不立即显示廣告,等待特定事件(e.g. 使用者过关、停留在某个画面超过特定时间、按下某个 button 或离开 app 之前…)发生再呼叫 show() 显示廣告。
请避免没有 loadAd() 就要求显示广告
請務必參考[串接說明],在 AndroidManifest.xml 中加入 VpadnActivity。如果您沒有在 VpadnActivity 中加上 android:configChanges=“orientation|screenSize”
,請避免在 onCreate 時 loadAd() 並立即顯示插頁廣告。
请注意,Vpon SDK 不允许广告以以下方式呈现,致使广告在画面上可能不可见:
当广告露出在页面上并达到曝光标准后,会印出以下的 Log 代表有送出广告曝光:
I/VPON: [::Impression::] response.code : 200
如果您想看到完整的串接实例,请参考我们的 Sample Code
如果您想了解其它广告形式的串接,请参考以下内容: