IMA Android SDK 支援全自動廣告播放清單。這項功能 可將廣告插播時間點插入內容 Google Ad Manager 所需的資訊這也大幅簡化了影片播放器程式碼 包括片頭廣告、片中廣告和片尾廣告。
- 在 Ad Manager 中投放廣告時,您可以指定各種廣告規則 例如「一律在內容開頭播放廣告插播」或「播放一部 每分鐘的廣告插播次數」。
- 請求廣告時,廣告伺服器可能會傳回廣告播放清單。SDK 系統會處理播放清單並自動排定 。
- 由於 Android 是透過同一個影片播放器來播放廣告和內容
如果您打算導入廣告規則,請務必將
內容,然後在廣告播放完畢時找到這個位置。
請務必在影片中導入
VideoAdPlayer
介面 廣告。如此能確保系統會在 在 Ad Manager 中指定的次數private boolean playingContent = true; private int contentPosition = -1; private List
callbacks = new ArrayList (); @Override public void addCallback(VideoAdPlayerCallback callback) { callbacks.add(callback); } @Override public void removeCallback(VideoAdPlayerCallback callback) { callbacks.remove(callback); } public void loadContent() { playingContent = true; load(CONTENT_URL); } @Override public void loadAd(String mediaUrl) { playingContent = false; load(mediaUrl); } public void pauseContent() { savePosition(); pause(); } @Override public void pauseAd() { pause(); } private void pause() { myVideoView.pause(); for (VideoAdPlayerCallback callback : callbacks) { callback.onPause(); } } public void resumeContent() { loadContent(); if (contentPosition > 0) { restorePosition(); } resume(); } @Override public void resumeAd() { resume(); } private void resume() { myVideoView.start(); for (VideoAdPlayerCallback callback : callbacks) { callback.onResume(); } } public void savePosition() { contentPosition = myVideoView.getCurrentPosition(); } public void restorePosition() { myVideoView.seekTo(contentPosition); } CONTENT_PAUSE_REQUESTED
和CONTENT_RESUME_REQUESTED
事件,以便在廣告出現時暫停並繼續播放內容。推薦 請前往相關的 API 說明文件 以取得關於這些事件的詳細資訊。
注意:內容播放完畢或是
使用者停止播放,請務必呼叫
AdsLoader.contentComplete
用來向 SDK 指出內容已完成。SDK
如果已安排片尾廣告插播時間點,播放後則會播放片尾廣告插播。
所有廣告插播時間點都會引發 ALL_ADS_COMPLETED
事件
。此外請注意,內容追蹤會從
系統會呼叫 init()
,且應一律呼叫 init()
再開始播放內容