diff --git a/app/build.gradle b/app/build.gradle index fa2a4cd2c..681a26fbd 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -152,6 +152,7 @@ ext { roomVersion = "2.5.2" workVersion = "2.8.1" espressoVersion = "3.5.1" + media3_version = "1.1.1" } configurations.all { @@ -263,7 +264,9 @@ dependencies { implementation "com.afollestad.material-dialogs:lifecycle:${materialDialogsVersion}" implementation 'com.google.code.gson:gson:2.10.1' - implementation 'com.google.android.exoplayer:exoplayer:2.19.0' + + implementation "androidx.media3:media3-exoplayer:$media3_version" + implementation "androidx.media3:media3-ui:$media3_version" implementation 'com.github.chrisbanes:PhotoView:2.3.0' implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.27' diff --git a/app/src/main/java/com/nextcloud/talk/activities/FullScreenMediaActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/FullScreenMediaActivity.kt index 7a665183d..b393d1abe 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/FullScreenMediaActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/activities/FullScreenMediaActivity.kt @@ -30,13 +30,15 @@ import android.view.Menu import android.view.MenuItem import android.view.View import android.view.WindowManager +import androidx.annotation.OptIn import androidx.appcompat.app.AppCompatActivity import androidx.core.content.FileProvider +import androidx.media3.common.MediaItem +import androidx.media3.common.Player +import androidx.media3.common.util.UnstableApi +import androidx.media3.exoplayer.ExoPlayer +import androidx.media3.ui.PlayerView import autodagger.AutoInjector -import com.google.android.exoplayer2.MediaItem -import com.google.android.exoplayer2.Player -import com.google.android.exoplayer2.SimpleExoPlayer -import com.google.android.exoplayer2.ui.StyledPlayerView import com.nextcloud.talk.BuildConfig import com.nextcloud.talk.R import com.nextcloud.talk.application.NextcloudTalkApplication @@ -49,7 +51,7 @@ class FullScreenMediaActivity : AppCompatActivity(), Player.Listener { lateinit var binding: ActivityFullScreenMediaBinding private lateinit var path: String - private lateinit var player: SimpleExoPlayer + private lateinit var player: ExoPlayer override fun onCreateOptionsMenu(menu: Menu): Boolean { menuInflater.inflate(R.menu.menu_preview, menu) @@ -81,6 +83,7 @@ class FullScreenMediaActivity : AppCompatActivity(), Player.Listener { } } + @OptIn(UnstableApi::class) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -104,7 +107,7 @@ class FullScreenMediaActivity : AppCompatActivity(), Player.Listener { } binding.playerView.setControllerVisibilityListener( - StyledPlayerView.ControllerVisibilityListener { v -> + PlayerView.ControllerVisibilityListener { v -> if (v != 0) { hideSystemUI() supportActionBar?.hide() @@ -132,7 +135,7 @@ class FullScreenMediaActivity : AppCompatActivity(), Player.Listener { } private fun initializePlayer() { - player = SimpleExoPlayer.Builder(applicationContext).build() + player = ExoPlayer.Builder(applicationContext).build() binding.playerView.player = player player.playWhenReady = true player.addListener(this) diff --git a/app/src/main/res/layout/activity_full_screen_media.xml b/app/src/main/res/layout/activity_full_screen_media.xml index a60868913..4d836b517 100644 --- a/app/src/main/res/layout/activity_full_screen_media.xml +++ b/app/src/main/res/layout/activity_full_screen_media.xml @@ -36,7 +36,7 @@ android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" /> -