緩衝事件

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

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

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