diff --git a/android/build.gradle b/android/build.gradle index 65bbc8e..d2b789f 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -5,7 +5,7 @@ buildscript { } dependencies { - classpath "com.android.tools.build:gradle:8.8.0" + classpath "com.android.tools.build:gradle:9.2.1" } } @@ -143,16 +143,15 @@ dependencies { // Add a dependency on NitroModules implementation project(":react-native-nitro-modules") - implementation("org.videolan.android:libvlc-all:4.0.0-eap24") - implementation("androidx.media3:media3-common:1.4.1") - implementation("androidx.media3:media3-session:1.4.1") - implementation("androidx.media3:media3-ui:1.4.1") - implementation 'androidx.media3:media3-exoplayer:1.10.0' - implementation("androidx.media3:media3-exoplayer-hls:1.10.0") - - implementation("androidx.media3:media3-cast:1.10.0") + implementation("org.videolan.android:libvlc-all:4.0.0-eap29") + implementation("androidx.media3:media3-common:1.11.0") + implementation("androidx.media3:media3-session:1.11.0") + implementation("androidx.media3:media3-ui:1.11.0") + implementation 'androidx.media3:media3-exoplayer:1.11.0' + implementation("androidx.media3:media3-exoplayer-hls:1.11.0") + implementation("androidx.media3:media3-cast:1.11.0") implementation("com.google.android.gms:play-services-cast-framework:22.3.1") - implementation("androidx.mediarouter:mediarouter:1.7.0") + implementation("androidx.mediarouter:mediarouter:1.8.1") } if (isNewArchitectureEnabled()) { diff --git a/android/src/main/java/dev/zoriya/omni/EventMap.kt b/android/src/main/java/dev/zoriya/omni/EventMap.kt index 3fbac47..4756de6 100644 --- a/android/src/main/java/dev/zoriya/omni/EventMap.kt +++ b/android/src/main/java/dev/zoriya/omni/EventMap.kt @@ -116,6 +116,14 @@ class EventMap(private val tracks: TrackProvider) : HybridOmniEventMapSpec(), Pl sourceListeners.forEach { it(source) } } + fun emitPrev() { + onPrevListeners.forEach { it() } + } + + fun emitNext() { + onNextListeners.forEach { it() } + } + private fun selectedTrack(trackType: Int): Track? { val list = when (trackType) { TRACK_TYPE_VIDEO -> tracks.videos diff --git a/android/src/main/java/dev/zoriya/omni/OmniPlayer.kt b/android/src/main/java/dev/zoriya/omni/OmniPlayer.kt index c6f22e5..c1b5590 100644 --- a/android/src/main/java/dev/zoriya/omni/OmniPlayer.kt +++ b/android/src/main/java/dev/zoriya/omni/OmniPlayer.kt @@ -447,11 +447,11 @@ class OmniPlayer( } override fun playPrev() { - runOnMainThreadSync { player.seekToPreviousMediaItem() } + runOnMainThreadSync { eventMap.emitPrev() } } override fun playNext() { - runOnMainThreadSync { player.seekToNextMediaItem() } + runOnMainThreadSync { eventMap.emitNext() } } override fun selectVideo(video: Track) { diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties index 2a84e18..37f78a6 100644 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/example/android/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME