Ads

public protocol Ads : EventDispatcherProtocol

The Ads object helps you configure and control ads within THEOplayer.

  • Returns whether a linear ad is currently playing.

    Declaration

    Swift

    var playing: Bool { get }
  • Returns an array of the currently active ads.

    Remark

    • Can be linear and/or non linear.
    • If there are no ads playing, the method returns an empty array.

    Declaration

    Swift

    var currentAds: [Ad] { get }
  • Returns the active AdBreak that contains the currently playing ad(s).

    Declaration

    Swift

    var currentAdBreak: AdBreak? { get }
  • Returns an array of AdBreaks that still need to be played.

    Declaration

    Swift

    var scheduledAdBreaks: [AdBreak] { get }
  • Returns an array of ads that still need to be played.

    Declaration

    Swift

    @available(*, deprecated, message: "With the next major version, the array element type will change to `Ad`.")
    var scheduledAds: [ScheduledAd] { get }
  • Schedules an ad.

    Remark

    Remark:

    • It will be added on top of the already existing ad(s).
    • If you want to replace the ads with new ones or set ads while setting up the player, you should set a SourceDescription with an AdDescription.

    Declaration

    Swift

    func schedule(adDescription: AdDescription)

    Parameters

    adDescription

    The ad to schedule.

  • Skips the current linear ad.

    Remark

    • This is only possible if the player has already played beyond the time where it can be skipped.
    • This will have no effect when the current linear ad is not (yet) skippable.

    Declaration

    Swift

    func skip()
  • Adds the given event listener of the given ad event type.

    Remark

    When attaching a listener on the wrong object the application will crash.

    Declaration

    Swift

    func addEventListener<E>(type: EventType<E>, listener: @escaping (E) -> ()) -> EventListener where E : EventProtocol

    Parameters

    type

    The type of the added event listener. See AdsEventTypes for possible values.

    listener

    Closure called when event is dispatched.

    Return Value

    EventListener that can be removed.

  • Removes the given event listener of the given ad event type.

    Declaration

    Swift

    func removeEventListener<E>(type: EventType<E>, listener: EventListener) where E : EventProtocol

    Parameters

    type

    The type of the removed event listener. See AdsEventTypes for possible values.

    listener

    EventListener object that has been return on addEventListener.

  • The Open Measurement API.

    Remark

    Only available if the Google DAI Feature is enabled.

    Declaration

    Swift

    var omid: Omid { get }
  • dai

    The Google DAI API which can be used to query information about dynamically inserted advertisements.

    Declaration

    Swift

    var dai: GoogleDAI? { get }
  • Register a custom advertisement integration. This allows you to integrate with third-party advertisement providers, and have them report their ads and ad-related events through the THEOplayer Ads API.

    Remark

    This API is experimental and is subject to change in any minor version of THEOplayer. Please consult with THEO Technologies before using this API.

    Declaration

    Swift

    func registerServerSideIntegration(integrationId: String, integrationFactory: (_ controller: ServerSideAdIntegrationController) -> ServerSideAdIntegrationHandler)

    Parameters

    integrationId

    An identifier of the integration.

    integrationFactory

    Factory that will construct an ServerSideAdIntegrationHandler for this integration.