Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions Example/PrebidDemoJava/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,9 @@ dependencies {
implementation libs.google.play.services.ads

// Video Player
implementation 'com.google.android.exoplayer:exoplayer:2.15.1'
implementation 'com.google.android.exoplayer:exoplayer-core:2.15.1'
implementation 'com.google.android.exoplayer:exoplayer-ui:2.15.1'
implementation 'com.google.android.exoplayer:extension-ima:2.15.1'
implementation 'androidx.media3:media3-ui:1.6.1'
implementation 'androidx.media3:media3-exoplayer:1.6.1'
implementation 'androidx.media3:media3-exoplayer-ima:1.6.1'

// Multidex
implementation 'androidx.multidex:multidex:2.0.0'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,23 @@
import android.view.ViewGroup;

import androidx.annotation.Nullable;

import com.google.android.exoplayer2.MediaItem;
import com.google.android.exoplayer2.SimpleExoPlayer;
import com.google.android.exoplayer2.ext.ima.ImaAdsLoader;
import com.google.android.exoplayer2.source.MediaSource;
import com.google.android.exoplayer2.source.ProgressiveMediaSource;
import com.google.android.exoplayer2.source.ads.AdsMediaSource;
import com.google.android.exoplayer2.ui.PlayerView;
import com.google.android.exoplayer2.upstream.DataSource;
import com.google.android.exoplayer2.upstream.DataSpec;
import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
import androidx.annotation.OptIn;
import androidx.media3.common.MediaItem;
import androidx.media3.common.util.UnstableApi;
import androidx.media3.datasource.DataSource;
import androidx.media3.datasource.DataSpec;
import androidx.media3.datasource.DefaultDataSource;
import androidx.media3.exoplayer.ExoPlayer;
import androidx.media3.exoplayer.ima.ImaAdsLoader;
import androidx.media3.exoplayer.source.MediaSource;
import androidx.media3.exoplayer.source.ProgressiveMediaSource;
import androidx.media3.exoplayer.source.ads.AdsMediaSource;
import androidx.media3.ui.PlayerView;

import org.prebid.mobile.InStreamVideoAdUnit;
import org.prebid.mobile.Signals;
import org.prebid.mobile.Util;
import org.prebid.mobile.VideoParameters;
import org.prebid.mobile.javademo.R;
import org.prebid.mobile.javademo.activities.BaseAdActivity;

import java.util.Collections;
Expand All @@ -38,7 +38,7 @@ public class GamOriginalApiVideoInStream extends BaseAdActivity {
private static final String VIDEO_URL = "https://storage.googleapis.com/gvabox/media/samples/stock.mp4";

private InStreamVideoAdUnit adUnit;
private SimpleExoPlayer player;
private ExoPlayer player;
private Uri adsUri;
private ImaAdsLoader adsLoader;
private PlayerView playerView;
Expand Down Expand Up @@ -76,15 +76,16 @@ private void createAd() {
});
}

@OptIn(markerClass = UnstableApi.class)
private void initializePlayer() {
SimpleExoPlayer.Builder playerBuilder = new SimpleExoPlayer.Builder(this);
ExoPlayer.Builder playerBuilder = new ExoPlayer.Builder(this);
player = playerBuilder.build();
playerView.setPlayer(player);
adsLoader.setPlayer(player);

Uri uri = Uri.parse(VIDEO_URL);
MediaItem mediaItem = MediaItem.fromUri(uri);
DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(this, getString(R.string.app_name));
DataSource.Factory dataSourceFactory = new DefaultDataSource.Factory(this);
ProgressiveMediaSource.Factory mediaSourceFactory = new ProgressiveMediaSource.Factory(dataSourceFactory);
MediaSource mediaSource = mediaSourceFactory.createMediaSource(mediaItem);

Expand Down
9 changes: 4 additions & 5 deletions Example/PrebidDemoKotlin/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ apply plugin: 'kotlin-android'

android {
namespace "org.prebid.mobile.prebidkotlindemo"
setCompileSdkVersion(34)
setCompileSdkVersion(35)
setBuildToolsVersion("35.0.1")
defaultConfig {
minSdkVersion 23
Expand Down Expand Up @@ -58,10 +58,9 @@ dependencies {
implementation 'androidx.multidex:multidex:2.0.1'

// Video Player
implementation 'com.google.android.exoplayer:exoplayer:2.15.1'
implementation 'com.google.android.exoplayer:exoplayer-core:2.15.1'
implementation 'com.google.android.exoplayer:exoplayer-ui:2.15.1'
implementation 'com.google.android.exoplayer:extension-ima:2.15.1'
implementation 'androidx.media3:media3-ui:1.6.1'
implementation 'androidx.media3:media3-exoplayer:1.6.1'
implementation 'androidx.media3:media3-exoplayer-ima:1.6.1'

// Tests
testImplementation 'junit:junit:4.13.2'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,19 @@ package org.prebid.mobile.prebidkotlindemo.activities.ads.gam.original
import android.net.Uri
import android.os.Bundle
import android.view.ViewGroup
import com.google.android.exoplayer2.MediaItem
import com.google.android.exoplayer2.SimpleExoPlayer
import com.google.android.exoplayer2.ext.ima.ImaAdsLoader
import com.google.android.exoplayer2.source.MediaSource
import com.google.android.exoplayer2.source.ProgressiveMediaSource
import com.google.android.exoplayer2.source.ads.AdsMediaSource
import com.google.android.exoplayer2.ui.PlayerView
import com.google.android.exoplayer2.upstream.DataSource
import com.google.android.exoplayer2.upstream.DataSpec
import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory
import androidx.annotation.OptIn
import androidx.media3.common.MediaItem
import androidx.media3.common.util.UnstableApi
import androidx.media3.datasource.DataSource
import androidx.media3.datasource.DataSpec
import androidx.media3.datasource.DefaultDataSource
import androidx.media3.exoplayer.ExoPlayer
import androidx.media3.exoplayer.ima.ImaAdsLoader
import androidx.media3.exoplayer.source.MediaSource
import androidx.media3.exoplayer.source.ProgressiveMediaSource
import androidx.media3.exoplayer.source.ads.AdsMediaSource
import androidx.media3.ui.PlayerView
import org.prebid.mobile.*
import org.prebid.mobile.prebidkotlindemo.R
import org.prebid.mobile.prebidkotlindemo.activities.BaseAdActivity

class GamOriginalApiInStreamActivity : BaseAdActivity() {
Expand All @@ -45,7 +46,7 @@ class GamOriginalApiInStreamActivity : BaseAdActivity() {
}

private var adUnit: InStreamVideoAdUnit? = null
private var player: SimpleExoPlayer? = null
private var player: ExoPlayer? = null
private var adsUri: Uri? = null
private var adsLoader: ImaAdsLoader? = null
private var playerView: PlayerView? = null
Expand Down Expand Up @@ -108,18 +109,19 @@ class GamOriginalApiInStreamActivity : BaseAdActivity() {
}
}

@OptIn(UnstableApi::class)
private fun initializePlayer() {
adsLoader = ImaAdsLoader.Builder(this).build()

val playerBuilder = SimpleExoPlayer.Builder(this)
val playerBuilder = ExoPlayer.Builder(this)
player = playerBuilder.build()
playerView!!.player = player
adsLoader!!.setPlayer(player)

val uri = Uri.parse(VIDEO_URL)

val mediaItem = MediaItem.fromUri(uri)
val dataSourceFactory: DataSource.Factory = DefaultDataSourceFactory(this, getString(R.string.app_name))
val dataSourceFactory: DataSource.Factory = DefaultDataSource.Factory(this)
val mediaSourceFactory = ProgressiveMediaSource.Factory(dataSourceFactory)
val mediaSource: MediaSource = mediaSourceFactory.createMediaSource(mediaItem)
val dataSpec = DataSpec(adsUri!!)
Expand Down