Protocols

The following protocols are available globally.

  • Informs its delegate of AdAsset networking events. Optional. Can be used to track the status of an AdAsset during buffering / pre-caching, if available.

    See more

    Declaration

    Swift

    @objc(AASDKAdAssetDelegate)
    public protocol AdAssetDelegate
  • The AdAsset provides support during asset downloading / caching.

    See more

    Declaration

    Swift

    @objc(AASDKAdAsset)
    public protocol AdAsset
  • The AdData protocol.

    See more

    Declaration

    Swift

    @objc(AASDKAdData)
    public protocol AdData
  • The Event protocol describes basic data for an event.

    See more

    Declaration

    Swift

    @objc(AASDKEvent)
    public protocol Event : NSObjectProtocol
  • The AdEvent protocol.

    See more

    Declaration

    Swift

    @objc(AASDKAdEvent)
    public protocol AdEvent : Event
  • The AdInterstitialEventMonitor interface provides native support while playing ads from AdManager when paired with the insterstitial player provided by an instance of AVPlayerInterstitialEventMonitor or AVPlayerInterstitialEventController available from iOS 15+. It is designed to add interoperability between the AdManager it is set on and the native AVPlayerInterstitialEventController for scheduling and monitoring HLS interstitial events. Read more about AVPlayerInterstitialEventController at https://developer.apple.com/documentation/avfoundation/avplayerinterstitialeventcontroller

    See more

    Declaration

    Swift

    @objc(AASDKAdInterstitialEventMonitor)
    public protocol AdInterstitialEventMonitor
  • @protocol

    The AdManagerDelegate protocol defines the methods used to retrieve information about ad playback (impression, quartiles, etc).

    See more

    Declaration

    Swift

    @objc(AASDKAdManagerDelegate)
    public protocol AdManagerDelegate
  • @protocol

    The AdManagerDatasource protocol defines the methods used to provide the SDK with various data.

    See more

    Declaration

    Swift

    @objc(AASDKAdManagerDatasource)
    public protocol AdManagerDatasource
  • @protocol

    The AdManagerInterstitialEventDatasource protocol defines the methods used to provide AdswizzSDK with various data during a livestream ad replacement.

    See more

    Declaration

    Swift

    @objc(AASDKAdManagerInterstitialEventDatasource)
    public protocol AdManagerInterstitialEventDatasource
  • The AdManager provides support while playing the ads.

    See more

    Declaration

    Swift

    @objc(AASDKAdManager)
    public protocol AdManager
  • Protocol for a media player to conform to.

    See more

    Declaration

    Swift

    @objc(AASDKMediaPlayerState)
    public protocol MediaPlayerState : NSObjectProtocol
  • The AdMacroProvider protocol encapsulates values for various VAST macros that cannot be automatically computed by AdswizzSDK. Pass an AdMacroProvider implementation suitable to your integration scenario in AdRequest and AdManager. The values will then be used by the internal macro replacer into their coresspondent pixel tracking URLs and/or VAST request URIs.

    See more

    Declaration

    Swift

    @objc(AASDKAdMacroProvider)
    public protocol AdMacroProvider
  • Static resource protocol for a Companion.

    See more

    Declaration

    Swift

    @objc(AASDKCompanionStaticResource)
    public protocol StaticResource : NSObjectProtocol
  • Resource protocol for a Companion.

    See more

    Declaration

    Swift

    @objc(AASDKCompanionResource)
    public protocol CompanionResource : NSObjectProtocol
  • Companion protocol.

    See more

    Declaration

    Swift

    @objc(AASDKCompanion)
    public protocol Companion : NSObjectProtocol
  • The MediaFile public protocol.

    See more

    Declaration

    Swift

    @objc(AASDKMediaFile)
    public protocol MediaFile
  • VAST Extension.

    See more

    Declaration

    Swift

    @objc(AASDKVastExtension)
    public protocol VastExtension : NSObjectProtocol
  • VAST AdParameters.

    See more

    Declaration

    Swift

    @objc(AASDKVastAdParameters)
    public protocol VastAdParameters : NSObjectProtocol
  • VAST CreativeExtension.

    See more

    Declaration

    Swift

    @objc(AASDKVastCreativeExtension)
    public protocol VastCreativeExtension : NSObjectProtocol
  • VAST Pricing.

    See more

    Declaration

    Swift

    @objc(AASDKVastPricing)
    public protocol VastPricing : NSObjectProtocol
  • VAST Advertiser.

    See more

    Declaration

    Swift

    @objc(AASDKVastAdvertiser)
    public protocol VastAdvertiser : NSObjectProtocol
  • PALManagerProtocol public protocol to interact with Google’s PAL SDK

    See more

    Declaration

    Swift

    @objc(AASDKPALManagerProtocol)
    public protocol PALManagerProtocol
  • The AdCompanionViewDelegate protocol defines delegate methods to communicate changes in the lifecycle of AdCompanionView instances.

    See more

    Declaration

    Swift

    @objc(AASDKAdCompanionViewDelegate)
    public protocol AdCompanionViewDelegate
  • The AdVideoViewDelegate protocol defines delegate methods for receiving AdVideoView behavior changes and events.

    See more

    Declaration

    Swift

    @objc(AASDKAdVideoViewDelegate)
    public protocol AdVideoViewDelegate
  • The AdPodcastManagerDelegate protocol defines the methods used to get information about ads and companion banners inserted during podcast playback.

    See more

    Declaration

    Swift

    @objc(AASDKAdPodcastManagerDelegate)
    public protocol AdPodcastManagerDelegate
  • Defines a metadata item value from the metadata array in AdStreamDVRMetadata protocol.

    See more

    Declaration

    Swift

    @objc(AASDKAdStreamDVRMetadataValue)
    public protocol AdStreamDVRMetadataValue
  • The AdStreamDVRMetadata protocol describes the DVR metadata sent by an AdStreamManager which is playing a stream capable of reconnecting in the past.

    See more

    Declaration

    Swift

    @objc(AASDKAdStreamDVRMetadata)
    public protocol AdStreamDVRMetadata
  • The AdStreamManagerDelegate protocol defines the methods used to retrieve information about ads and companion banners inserted server-side.

    See more

    Declaration

    Swift

    @objc(AASDKAdStreamManagerDelegate)
    public protocol AdStreamManagerDelegate
  • The AdPodcastManagerDownloadDelegate protocol defines the methods used to get information during podcast downloads.

    See more

    Declaration

    Swift

    @objc(AASDKAdPodcastManagerDownloadDelegate)
    public protocol AdPodcastManagerDownloadDelegate
  • The AssetDownload provides support during asset downloading / storage.

    See more

    Declaration

    Swift

    @objc(AASDKDownloadableAsset)
    public protocol DownloadableAsset
  • The tracking permission controller delegate informs about status changes.

    See more

    Declaration

    Swift

    @objc(AASDKTrackingPermissionControllerDelegate)
    public protocol TrackingPermissionControllerDelegate
  • The WatchSessionDelegate delegate informs your app when the SDK delivers messages to the companion app.

    See more

    Declaration

    Swift

    @objc(AASDKWatchSessionDelegate)
    public protocol WatchSessionDelegate
  • The WatchSession protocol defines the connection between your app and the SDK.

    See more

    Declaration

    Swift

    @objc(AASDKWatchSession)
    public protocol WatchSession
  • The InteractiveAdEvent protocol.

    See more

    Declaration

    Swift

    @objc(AASDKInteractiveAdEvent)
    public protocol InteractiveAdEvent : Event
  • @protocol

    The InteractiveAdManagerDelegate protocol defines the methods used to retrieve information about interactive ads.

    See more

    Declaration

    Swift

    @objc(AASDKInteractiveAdManagerDelegate)
    public protocol InteractiveAdManagerDelegate
  • The AdswizzSDK delegate protocol.

    See more

    Declaration

    Swift

    @objc(AASDKAdswizzSDKDelegate)
    public protocol AdswizzSDKDelegate
  • Write a custom destination for the logger. The default destination is NSLog.

    See more

    Declaration

    Swift

    @objc(AASDKAdLoggerDestination)
    public protocol AdLoggerDestination
  • The AnalyticsEvent protocol defines all properties for an event.

    See more

    Declaration

    Swift

    @objc(AASDKAnalyticsEvent)
    public protocol AnalyticsEvent
  • Analytics interface to customize AnalyticsEvent entries.

    See more

    Declaration

    Swift

    @objc(AASDKAnalyticsCustomData)
    public protocol AnalyticsCustomData
  • The AnalyticsCollecting protocol defines an interface for collecting AdswizzSDK analytics data. All events will be received on a serial background queue. Note that the AnalyticsConnector class conforms to AnalyticsCollecting.

    See more

    Declaration

    Swift

    @objc(AASDKAnalyticsCollecting)
    public protocol AnalyticsCollecting
  • The AnalyticsCollector protocol defines the interface for AdswizzSDK to be able to add or remove instances of objects that conform to the AnalyticsConnector protocol.

    See more

    Declaration

    Swift

    @objc(AASDKAnalyticsCollector)
    public protocol AnalyticsCollector
  • AnalyticsConnector From AdswizzSDKCore

    AnalyticsConnector inherits AnalyticsCollecting protocol.

    Declaration

    Swift

    @objc(AASDKAnalyticsConnector)
    public protocol AnalyticsConnector : AnalyticsCollecting