Interface AdInterface


public interface AdInterface
Implementation of this interface provides access to Ad status. It also allows to inject side-interpreted ads events that are used for analytics and in app callbacks.
Since:
3.2.0
  • Method Details

    • addAdListener

      void addAdListener(@NonNull AdInterface.Listener listener)
      Register the given AdInterface.Listener
      Parameters:
      listener - the listener
    • removeAdListener

      void removeAdListener(@NonNull AdInterface.Listener listener)
      Remove the given AdInterface.Listener
      Parameters:
      listener - the listener
    • isPlaying

      boolean isPlaying()
      Check the Ad is currently playing.
      Returns:
      true if the Ad is currently playing otherwise false
    • getPosition

      long getPosition()
      Get the Ad position in microseconds.
      Returns:
      positionUs the position in microseconds
    • adWillStart

      void adWillStart(@NonNull Ad ad)
      Inject the ad will start side event.
      Parameters:
      ad - The Ad object. Notice that in this level, some properties of the ad such as Ad.title might be null.
    • adStarted

      void adStarted(@NonNull Ad ad)
      Inject the ad started side event.
      Parameters:
      ad - The ad
    • adPaused

      void adPaused()
      Inject the ad paused side event
    • adResumed

      void adResumed(@NonNull Ad ad)
      Inject the ad paused side event
    • adCompleted

      void adCompleted()
      Inject the ad completed side event
    • adClicked

      void adClicked(@Nullable String clickthroughUrl)
      Inject the ad clicked side event
    • adError

      void adError(Ad ad, CastlabsPlayerException exception)
      Inject the ad error side event
      Parameters:
      ad - The ad
      exception - The error's exception
    • adSkipped

      void adSkipped()
      Inject the ad skipped side event
    • scheduleAd

      void scheduleAd(@NonNull AdRequest adRequest)
      Manually schedules an AdRequest. This can be called once playback is already started as long as the underlying AdLoader is compatible and manual ad scheduling is enabled. You can also use SdkConsts.AD_SCHEDULE_MANUAL. Note that if any other ads had been previously scheduled, such will be replaced by the new request.
      Parameters:
      adRequest - the AdRequest to schedule
      Since:
      4.2.24
    • getAdApi

      @Nullable AdApi getAdApi()
      Get an AdApi to issue custom operations to the ad provider
      Returns:
      the AdApi