ExoPlayer v2.14.2 MediaMelon SDK with Google IMA DAI

This procedure describes the MediaMelon SDK(with Google IMA DAI) Integration with a ExoPlayer Android . This is a sample integration done with the sample application from the Google IMA DAI.

Prerequisites:

  1. Google IMA DAI Sample app (link for the sample app - https://github.com/googleads/googleads-ima-android-dai) Documentation of the sample app -https://developers.google.com/interactive-media-ads/docs/sdks/android/dai

  2. MediaMelon SmartSight SDKexoplayer-smartstreaming-release.aar

  3. MediaMelon-assigned Customer ID

Note: If you do not know your Customer ID contact mediamelon at [email protected]

Step 1: Set up the build environment

The SDK files are added to the build environment and the required network permissions are enabled.

  1. Copy exoplayer-smartstreaming-release.aar provided with the release package to BasicExample/app/

  2. Add the following library to BasicExample/app/build.gradle :-

    dependencies {
        .
        .
        implementation 'com.google.ads.interactivemedia.v3:interactivemedia:3.24.0'
        implementation 'com.google.android.exoplayer:exoplayer:2.14.2'
        api files ('exoplayer-smartstreaming-release.aar')
        .
        .
    }

Step 2: Add MediaMelon library to Sample App.

Step 2.1 : Add the below imports to: BasicExample\app\src\main\java\com\google\ads\interactivemedia\v3\samples\videoplayerapp/MyActivity.java

Step 2.2 : Add the below imports to: BasicExample\app\src\main\java\com\google\ads\interactivemedia\v3\samples\samplevideoplayer/SampleVideoPlayer.java

Step 2.3 : Add the below imports to: BasicExample\app\src\main\java\com\google\ads\interactivemedia\v3\samples\videoplayerapp/SampleAdsWrapper.java

Step 3 : Integrate MediaMelon code to the Sample App

The below steps shows the procedure to integrate the MediaMelon library to the sample app. Note - Only the code written inside the <MediaMelon Integration> tag is to be added for MediaMelon specific integration , the rest of the code above and below the <MediaMelon Integration> tag is shown just to give a context ,as shown below :-

Step 3.1: Add the following code to: BasicExample\app\src\main\java\com\google\ads\interactivemedia\v3\samples\samplevideoplayer/SampleVideoPlayer.java

Step 3.2: Add the following code to: BasicExample\app\src\main\java\com\google\ads\interactivemedia\v3\samples\videoplayerapp/MyActivity.java

Variable

Description

$PLAYERNAME

String containing the player version (e.g. “Bitmovin_Android_Player_2.28.0”).

$CUSTOMERID

String containing your MediaMelon-assigned Customer ID.

$SUBSCRIBERID

String containing your subscriber’s ID. If you do not use subscriber IDs, enter null

$DOMAINNAME

String containing your section of your subscriber or assets. (Optional)

$SUBSCRIBERTYPE

String containing the subscriber type (e.g. “Free”, “Paid”). If you do not use subscriber types, enter null

$SUBSCRIBERTAG

String containing an additional subscriber-specific information. This is sent in clear (not hashed) to SmartSight and it is advised to not send sensitive information in this field.

$ASSETID

String containing Asset Id.

$ASSETNAME

String containing Asset Name.

$VIDEOID

String containing your video’s ID. If you do not use videos IDs, enter null.

$PLAYER_BRAND

String containing the player brand (e.g. “bitmovin”).

$PLAYER_MODEL

String containing the player model. For example - This could be a variant of player. Say name of third party player used by organisation. Or any human readable name of the player.

$PLAYER_VERSION

String containing the player version.

Step 3.3 : Add the following code to: BasicExample\app\src\main\java\com\google\ads\interactivemedia\v3\samples\videoplayerapp/SampleAdsWrapper.java

Step 4: Access the various ad events. You can implement your own business logic on one or more AD events .Please make sure all custom logic for each AD event is implemented here ONLY. List of all Google IMA DAI AD events can be found here :-https://developers.google.com/interactive-media-ads/docs/sdks/android/dai/api/reference/com/google/ads/interactivemedia/v3/api/AdEvent.AdEventType

Last updated