緩衝事件

本指南說明如何根據廣告緩衝狀態採取行動。

在應用程式中使用緩衝區事件

您可以在 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 時隱藏活動指標。