com.brightcove.ima

## Class GoogleIMAVideoAdPlayer

- java.lang.Object
- - com.brightcove.ima.GoogleIMAVideoAdPlayer

- All Implemented Interfaces:
    AdPlayer.Listener<AdAsset>, com.google.ads.interactivemedia.v3.api.player.AdProgressProvider, com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer, com.google.ads.interactivemedia.v3.api.player.VolumeProvider

      public class GoogleIMAVideoAdPlayer
      extends java.lang.Object
      implements com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer, AdPlayer.Listener<AdAsset>

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer

      `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer.VideoAdPlayerCallback`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addCallback(com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer.VideoAdPlayerCallback videoAdPlayerCallback)`
    `com.google.ads.interactivemedia.v3.api.Ad` | `getAd()`
    `com.google.ads.interactivemedia.v3.api.player.VideoProgressUpdate` | `getAdProgress()`
    `com.google.ads.interactivemedia.v3.api.player.AdMediaInfo` | `getCurrentAdMediaInfo()` Returns the current `AdMediaInfo`, or null otherwise.
    `int` | `getCurrentPosition()`
    `long` | `getCurrentPositionLong()`
    `android.os.Handler` | `getMainHandler()`
    `int` | `getVolume()`
    `boolean` | `isPlaying()`
    `void` | `loadAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo, com.google.ads.interactivemedia.v3.api.AdPodInfo adPodInfo)`
    `void` | `loadAd(java.lang.String url)` Deprecated. Use `loadAd(AdMediaInfo, AdPodInfo)`
    `void` | `onAdCompleted(AdAsset ad)` Called when an Ad is completed.
    `void` | `onAdPaused(AdAsset ad)` Called when an Ad is paused.
    `void` | `onAdProgress(long position, AdAsset ad)` Called when an ad has made progress.
    `void` | `onAdResumed(AdAsset ad)` Called when an ad is resumed.
    `void` | `onAdSkipped(AdAsset ad)` Called when an ad is skipped.
    `void` | `onAdStarted(AdAsset ad)` Called when an Ad is started.
    `void` | `onDurationChanged(long duration)` Called when an Ad duration has been changed.
    `void` | `onError(AdAsset ad, java.lang.Exception e)` Called when an error happened.
    `void` | `pause()` Deprecated. Use `pauseAd(AdMediaInfo)`
    `void` | `pauseAd()` Deprecated. Use `pauseAd(AdMediaInfo)`
    `void` | `pauseAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo)`
    `void` | `playAd()` Deprecated. Use `playAd(AdMediaInfo)`
    `void` | `playAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo)`
    `void` | `release()`
    `void` | `removeCallback(com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer.VideoAdPlayerCallback videoAdPlayerCallback)`
    `void` | `resumeAd()` Deprecated. Use `playAd(AdMediaInfo)`}
    `void` | `seekTo(long adPosition)`
    `void` | `setAd(com.google.ads.interactivemedia.v3.api.Ad imaAd)`
    `void` | `skipAd()`
    `void` | `start()` Deprecated. Use `playAd(AdMediaInfo)`
    `void` | `stopAd()` Deprecated. Use `stopAd(AdMediaInfo)`
    `void` | `stopAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface com.brightcove.player.ads.AdPlayer.Listener

      `onError`

- - ### Method Detail

    - #### setAd

          public void setAd(@Nullable
                            com.google.ads.interactivemedia.v3.api.Ad imaAd)

    - #### getAd

          @Nullable
          public com.google.ads.interactivemedia.v3.api.Ad getAd()

    - #### getCurrentPosition

          public int getCurrentPosition()

    - #### getCurrentPositionLong

          public long getCurrentPositionLong()

    - #### start

          @Deprecated
          public void start()

      Deprecated. Use `playAd(AdMediaInfo)`
      Starts or resumes playback. If playback had previously been paused, playback will continue from where it was paused. If playback had been stopped, or never started before, playback will start at the beginning.

    - #### pause

          @Deprecated
          public void pause()

      Deprecated. Use `pauseAd(AdMediaInfo)`
      Pauses playback.

    - #### isPlaying

          public boolean isPlaying()

      Returns:
        Whether the ad player is playing.

    - #### seekTo

          public void seekTo(long adPosition)

    - #### release

          public void release()

      Specified by:
        `release` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### playAd

          @Deprecated
          public void playAd()

      Deprecated. Use `playAd(AdMediaInfo)`

    - #### loadAd

          @Deprecated
          public void loadAd(java.lang.String url)

      Deprecated. Use `loadAd(AdMediaInfo, AdPodInfo)`

    - #### stopAd

          @Deprecated
          public void stopAd()

      Deprecated. Use `stopAd(AdMediaInfo)`

    - #### pauseAd

          @Deprecated
          public void pauseAd()

      Deprecated. Use `pauseAd(AdMediaInfo)`

    - #### resumeAd

          @Deprecated
          public void resumeAd()

      Deprecated. Use `playAd(AdMediaInfo)`}

    - #### loadAd

          public void loadAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo,
                             @Nullable
                             com.google.ads.interactivemedia.v3.api.AdPodInfo adPodInfo)

      Specified by:
        `loadAd` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### playAd

          public void playAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo)

      Specified by:
        `playAd` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### pauseAd

          public void pauseAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo)

      Specified by:
        `pauseAd` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### skipAd

          public void skipAd()

    - #### stopAd

          public void stopAd(com.google.ads.interactivemedia.v3.api.player.AdMediaInfo adMediaInfo)

      Specified by:
        `stopAd` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### addCallback

          public void addCallback(com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer.VideoAdPlayerCallback videoAdPlayerCallback)

      Specified by:
        `addCallback` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### removeCallback

          public void removeCallback(com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer.VideoAdPlayerCallback videoAdPlayerCallback)

      Specified by:
        `removeCallback` in interface `com.google.ads.interactivemedia.v3.api.player.VideoAdPlayer`

    - #### getAdProgress

          public com.google.ads.interactivemedia.v3.api.player.VideoProgressUpdate getAdProgress()

      Specified by:
        `getAdProgress` in interface `com.google.ads.interactivemedia.v3.api.player.AdProgressProvider`

    - #### getVolume

          public int getVolume()

      Specified by:
        `getVolume` in interface `com.google.ads.interactivemedia.v3.api.player.VolumeProvider`

    - #### onAdProgress

          public void onAdProgress(long position,
                                   @NonNull
                                   AdAsset ad)

      Description copied from interface: `AdPlayer.Listener`
      Called when an ad has made progress.
      Specified by:
        `onAdProgress` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `position` - the current position of the playback in milliseconds.
        `ad` - the current ad being played.

    - #### onDurationChanged

          public void onDurationChanged(long duration)

      Description copied from interface: `AdPlayer.Listener`
      Called when an Ad duration has been changed.
      Specified by:
        `onDurationChanged` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `duration` - the duration of the current Ad.

    - #### onAdStarted

          public void onAdStarted(@NonNull
                                  AdAsset ad)

      Description copied from interface: `AdPlayer.Listener`
      Called when an Ad is started.
      Specified by:
        `onAdStarted` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `ad` - the started Ad.

    - #### onAdCompleted

          public void onAdCompleted(@NonNull
                                    AdAsset ad)

      Description copied from interface: `AdPlayer.Listener`
      Called when an Ad is completed.
      Specified by:
        `onAdCompleted` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `ad` - the completed Ad.

    - #### onAdPaused

          public void onAdPaused(@NonNull
                                 AdAsset ad)

      Description copied from interface: `AdPlayer.Listener`
      Called when an Ad is paused.
      Specified by:
        `onAdPaused` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `ad` - the paused ad.

    - #### onAdResumed

          public void onAdResumed(@NonNull
                                  AdAsset ad)

      Description copied from interface: `AdPlayer.Listener`
      Called when an ad is resumed.
      Specified by:
        `onAdResumed` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `ad` - the resumed Ad.

    - #### onAdSkipped

          public void onAdSkipped(@NonNull
                                  AdAsset ad)

      Description copied from interface: `AdPlayer.Listener`
      Called when an ad is skipped.
      Specified by:
        `onAdSkipped` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `ad` - the skipped ad.

    - #### onError

          public void onError(@NonNull
                              AdAsset ad,
                              @NonNull
                              java.lang.Exception e)

      Description copied from interface: `AdPlayer.Listener`
      Called when an error happened.
      Specified by:
        `onError` in interface `AdPlayer.Listener<AdAsset>`
      Parameters:
        `ad` - the ad that failed to play and originated the error.
        `e` - exception.

    - #### getCurrentAdMediaInfo

          @Nullable
          public com.google.ads.interactivemedia.v3.api.player.AdMediaInfo getCurrentAdMediaInfo()

      Returns the current `AdMediaInfo`, or null otherwise.

    - #### getMainHandler

          public android.os.Handler getMainHandler()