本指南說明如何根據廣告緩衝狀態採取行動。
在應用程式中使用緩衝區事件
您可以使用 IMAAdsManagerDelegate
的以下委派方法,在廣告暫停緩衝時,在應用程式中新增活動指標:
- (void)adsManagerAdDidStartBuffering(IMAAdsManager *)adsManager
:當已開始播放的廣告停止緩衝時,系統會呼叫此方法。- (void)adsManager:(IMAAdsManager *)adsManager adDidBufferToMediaTime:(NSTimeInterval)mediaTime
:做為廣告緩衝區呼叫。只要廣告正在緩衝,系統就會重複呼叫此方法。- (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager
:當目前廣告已充分緩衝,且廣告播放不太可能超出緩衝區時,系統會呼叫此方法。
範例
所有新增項目皆以 IMA SDK 進階範例為準 (適用於 iOS 和 tvOS):
@interface VideoViewController ()... @end @implementation VideoViewController ... - (void)adsManagerAdDidStartBuffering:(IMAAdsManager *)adsManager { // Show your activity indicator above the video player - ad playback has // stopped to buffer. } - (void)adsManagerAdPlaybackReady:(IMAAdsManager *)adsManager { // Hide your activity indicator - as playback resumes. }
常見問題
廣告開始播放前,可以顯示活動指標嗎?
可以,但建議您針對該用途採用不同的委派方法。您可以在呼叫 [adsManager start]
時顯示活動指標,並在 - (void)adsManager:(IMAAdsManager *)adsManager didReceiveAdEvent:(IMAAdEvent *)event
中擷取 kIMAAdEvent_STARTED
時隱藏活動指標。