ImaSdkFactory

public class ImaSdkFactory extends Object

Factory class for creating SDK objects.

Public Method Summary

AdDisplayContainer
createAdDisplayContainer()
This method is deprecated. Use createAdDisplayContainer(ViewGroup container, VideoAdPlayer player) instead.
static AdDisplayContainer
createAdDisplayContainer(ViewGroup container, VideoAdPlayer player)
Creates an AdDisplayContainer to hold the player for video ads, a container for non-linear ads, and slots for companion ads.
AdsLoader
createAdsLoader(Context context, ImaSdkSettings settings, AdDisplayContainer container)
Creates an AdsLoader for requesting ads using the specified settings object.
AdsLoader
createAdsLoader(Context context, ImaSdkSettings settings, StreamDisplayContainer container)
Creates an AdsLoader for requesting server-side ad insertion ads using the specified settings object.
AdsRenderingSettings
createAdsRenderingSettings()
Creates an AdsRenderingSettings object to give the AdsManager parameters that control the rendering of ads.
AdsRequest
createAdsRequest()
Creates an AdsRequest object to contain the data used to request ads.
static AdDisplayContainer
createAudioAdDisplayContainer(Context context, VideoAdPlayer player)
Creates an AdDisplayContainer for audio ads.
AdDisplayContainer
createAudioAdDisplayContainer(Context context)
This method is deprecated. Use createAudioAdDisplayContainer(ViewGroup container, VideoAdPlayer player) instead.
CompanionAdSlot
createCompanionAdSlot()
Creates a CompanionAdSlot for the SDK to fill with companion ads.
FriendlyObstruction
createFriendlyObstruction(View view, FriendlyObstructionPurpose purpose, String detailedReason)
Creates a FriendlyObstruction object to describe an obstruction considered "friendly" for viewability measurement purposes.
ImaSdkSettings
createImaSdkSettings()
Creates an ImaSdkSettings object for configuring the IMA SDK.
StreamRequest
createLiveStreamRequest(String assetKey, String apiKey, String networkCode)
Creates a StreamRequest object to contain the data used to request a server-side ad insertion live stream.
StreamRequest
createLiveStreamRequest(String assetKey, String apiKey)
This method is deprecated. Use createLiveStreamRequest(String assetKey, String apiKey, String networkCode) instead.
StreamRequest
createPodStreamRequest(String networkCode, String customAssetKey, String apiKey)
Creates a StreamRequest object to contain the data used to request a server-side ad insertion pod serving live stream.
StreamRequest
createPodVodStreamRequest(String networkCode)
Creates a StreamRequest object to contain the data used to request a 3rd party stitched server-side ad insertion pod serving vod stream.
StreamDisplayContainer
createStreamDisplayContainer()
This method is deprecated. Use createStreamDisplayContainer(ViewGroup container, VideoStreamPlayer player) instead.
static StreamDisplayContainer
createStreamDisplayContainer(ViewGroup container, VideoStreamPlayer player)
Creates a StreamDisplayContainer to hold the player for server-side ad insertion streams and slots for companion ads.
StreamRequest
createVideoStitcherLiveStreamRequest(String networkCode, String customAssetKey, String liveStreamEventId, String region, String projectNumber, String oAuthToken)
Creates a StreamRequest object to contain the data used to request a cloud video stitcher server-side ad insertion pod live serving stream.
StreamRequest
createVideoStitcherVodStreamRequest(String contentSourceUrl, String networkCode, String region, String projectNumber, String oAuthToken, String adTagUrl)
Creates a StreamRequest object to contain the data used to request a cloud video stitcher server-side ad insertion pod serving vod stream.
StreamRequest
createVideoStitcherVodStreamRequest(String networkCode, String region, String projectNumber, String oAuthToken, String vodConfigId)
Creates a StreamRequest object to contain the data used to request a cloud video stitcher server-side ad insertion pod serving vod stream, with a vod config flow.
StreamRequest
createVodStreamRequest(String contentSourceId, String videoId, String apiKey)
This method is deprecated. Use createVodStreamRequest(String contentSourceId, String videoId, String apiKey, String networkCode) instead.
StreamRequest
createVodStreamRequest(String contentSourceId, String videoId, String apiKey, String networkCode)
Creates a StreamRequest object to contain the data used to request a server-side ad insertion video on demand stream.
static ImaSdkFactory
getInstance()
Returns the global ImaSdkFactory object.
void
initialize(Context context, ImaSdkSettings settings)
Starts to preload SDK resources in advance.

Inherited Method Summary

Public Methods

public AdDisplayContainer createAdDisplayContainer ()

This method is deprecated.
Use createAdDisplayContainer(ViewGroup container, VideoAdPlayer player) instead.

Creates an AdDisplayContainer to hold the player for video ads, a container for non-linear ads, and slots for companion ads.

public static AdDisplayContainer createAdDisplayContainer (ViewGroup container, VideoAdPlayer player)

Creates an AdDisplayContainer to hold the player for video ads, a container for non-linear ads, and slots for companion ads.

Parameters
container
player

public AdsLoader createAdsLoader (Context context, ImaSdkSettings settings, AdDisplayContainer container)

Creates an AdsLoader for requesting ads using the specified settings object. This is the only way to specify a non-default language for the Ad UI.

Parameters
context Context for the an upcoming ad request. Required to use the activity context.
settings The settings for the SDK in an upcoming ad request. This parameter requires an ImaSdkSettings object.
container The container for IMA to render the ad UI.

public AdsLoader createAdsLoader (Context context, ImaSdkSettings settings, StreamDisplayContainer container)

Creates an AdsLoader for requesting server-side ad insertion ads using the specified settings object. This is the only way to specify a non-default language for the Ad UI.

Parameters
context Context for the an upcoming stream request. Required to use the activity context.
settings The settings for the SDK in an upcoming stream request. This parameter requires an ImaSdkSettings object.
container The container for IMA to render the ad UI.

public AdsRenderingSettings createAdsRenderingSettings ()

Creates an AdsRenderingSettings object to give the AdsManager parameters that control the rendering of ads.

public AdsRequest createAdsRequest ()

Creates an AdsRequest object to contain the data used to request ads.

public static AdDisplayContainer createAudioAdDisplayContainer (Context context, VideoAdPlayer player)

Creates an AdDisplayContainer for audio ads. In order to properly handle companion ads this should be created in the same process as your main Activity.

Parameters
context
player

public AdDisplayContainer createAudioAdDisplayContainer (Context context)

This method is deprecated.
Use createAudioAdDisplayContainer(ViewGroup container, VideoAdPlayer player) instead.

Creates an AdDisplayContainer for audio ads. In order to properly handle companion ads this should be created in the same process as your main Activity.

Parameters
context

public CompanionAdSlot createCompanionAdSlot ()

Creates a CompanionAdSlot for the SDK to fill with companion ads.

public FriendlyObstruction createFriendlyObstruction (View view, FriendlyObstructionPurpose purpose, String detailedReason)

Creates a FriendlyObstruction object to describe an obstruction considered "friendly" for viewability measurement purposes. If the detailedReason is not null, it must follow the IAB standard by being 50 characters or less and only containing characters A-z , 0-9, or spaces.

Parameters
view
purpose
detailedReason

public ImaSdkSettings createImaSdkSettings ()

Creates an ImaSdkSettings object for configuring the IMA SDK.

public StreamRequest createLiveStreamRequest (String assetKey, String apiKey, String networkCode)

Creates a StreamRequest object to contain the data used to request a server-side ad insertion live stream.

Parameters
assetKey Determines which stream you request. The live stream request asset key is an identifier which you can find in the Ad Manager UI.
apiKey Optional: The stream request API key. Set up the key in the Ad Manager Admin UI and use it in the application to unlock the content. The key verifies applications to access the content.
networkCode Optional: The network code for the Ad Manager account that owns the stream. The code is recommended because it is used to apply settings selected in the Ad Manager UI such as programmatic limited ads enablement. To find the network code, see Find Ad Manager account information .

public StreamRequest createLiveStreamRequest (String assetKey, String apiKey)

This method is deprecated.
Use createLiveStreamRequest(String assetKey, String apiKey, String networkCode) instead.

Creates a StreamRequest object to contain the data used to request a server-side ad insertion live stream.

Parameters
assetKey Determines which stream you request. The live stream request asset key is an identifier that you can find in the Ad Manager UI. For more information, see Locate live linear stream URL and asset key.
apiKey

public StreamRequest createPodStreamRequest (String networkCode, String customAssetKey, String apiKey)

Creates a StreamRequest object to contain the data used to request a server-side ad insertion pod serving live stream.

Parameters
networkCode The network code for the publisher making this stream request. Network codes are required for pod serving stream requests; with an invalid code the stream request will fail. The code is also used to apply settings selected in the Ad Manager UI such as programmatic limited ads enablement. To find the network code, see this article.
customAssetKey The custom asset key is used to determine which stream should be played. Custom asset keys are required for pod serving stream requests.
apiKey Optional: The stream request API key. Set up the key in the Ad Manager Admin UI and use it in the application to unlock the content. The key verifies applications to access the content.

public StreamRequest createPodVodStreamRequest (String networkCode)

Creates a StreamRequest object to contain the data used to request a 3rd party stitched server-side ad insertion pod serving vod stream.

Parameters
networkCode

public StreamDisplayContainer createStreamDisplayContainer ()

This method is deprecated.
Use createStreamDisplayContainer(ViewGroup container, VideoStreamPlayer player) instead.

Creates a StreamDisplayContainer to hold the player for server-side ad insertion streams and slots for companion ads.

public static StreamDisplayContainer createStreamDisplayContainer (ViewGroup container, VideoStreamPlayer player)

Creates a StreamDisplayContainer to hold the player for server-side ad insertion streams and slots for companion ads.

Parameters
container
player

public StreamRequest createVideoStitcherLiveStreamRequest (String networkCode, String customAssetKey, String liveStreamEventId, String region, String projectNumber, String oAuthToken)

Creates a StreamRequest object to contain the data used to request a cloud video stitcher server-side ad insertion pod live serving stream.

Parameters
networkCode
customAssetKey
liveStreamEventId
region
projectNumber
oAuthToken

public StreamRequest createVideoStitcherVodStreamRequest (String contentSourceUrl, String networkCode, String region, String projectNumber, String oAuthToken, String adTagUrl)

Creates a StreamRequest object to contain the data used to request a cloud video stitcher server-side ad insertion pod serving vod stream.

Parameters
contentSourceUrl
networkCode
region
projectNumber
oAuthToken
adTagUrl

public StreamRequest createVideoStitcherVodStreamRequest (String networkCode, String region, String projectNumber, String oAuthToken, String vodConfigId)

Creates a StreamRequest object to contain the data used to request a cloud video stitcher server-side ad insertion pod serving vod stream, with a vod config flow.

Parameters
networkCode
region
projectNumber
oAuthToken
vodConfigId

public StreamRequest createVodStreamRequest (String contentSourceId, String videoId, String apiKey)

This method is deprecated.
Use createVodStreamRequest(String contentSourceId, String videoId, String apiKey, String networkCode) instead.

Creates a StreamRequest object to contain the data used to request a server-side ad insertion video on demand stream.

Parameters
contentSourceId
videoId
apiKey

public StreamRequest createVodStreamRequest (String contentSourceId, String videoId, String apiKey, String networkCode)

Creates a StreamRequest object to contain the data used to request a server-side ad insertion video on demand stream.

Parameters
contentSourceId The content source ID for video on demand server-side ad insertion streams.
videoId The video ID for video on demand server-side ad insertion streams.
apiKey Optional: The stream request API key. Set up the key in the Ad Manager Admin UI and use it in the application to unlock the content. The key verifies applications to access the content.
networkCode Optional: The network code for the Ad Manager account that owns the stream. The code is recommended because it is used to apply settings selected in the Ad Manager UI such as programmatic limited ads enablement. To find the network code, see Find Ad Manager account information.

public static ImaSdkFactory getInstance ()

Returns the global ImaSdkFactory object.

public void initialize (Context context, ImaSdkSettings settings)

Starts to preload SDK resources in advance. Initialization only needs to be called once before the first adsloader is created. Initialization is optional but recommended, as it prepares components for each adsloader, improving the first ad/stream request response time.

Parameters
context Context for the SDK. Recommend to use the application context.
settings The settings for the SDK in an upcoming ad request. This parameter requires an ImaSdkSettings object.