Как мне вернуться к циклическому воспроизведению моего плейлиста с помощью Exoplayer в Jetpack Compose?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Как мне вернуться к циклическому воспроизведению моего плейлиста с помощью Exoplayer в Jetpack Compose?

Сообщение Anonymous »

Рассмотрите мой код:

Код: Выделить всё

fun StartVideo() {
var videoIndex by remember{ mutableStateOf(1) }
val videoUri="https://example.com/video-"+videoIndex+".mp4";
val context = LocalContext.current
// Initialize ExoPlayer
val exoPlayer = remember{ ExoPlayer.Builder(context).build() }

// Create a MediaSource
val mediaSource = remember(videoUri) {
MediaItem.fromUri(videoUri)
}

// Set MediaSource to ExoPlayer

LaunchedEffect(mediaSource) {
exoPlayer.setMediaItem(mediaSource)
exoPlayer.prepare()
exoPlayer.playWhenReady=true
exoPlayer.addListener(
object: Player.Listener{
override fun onPlaybackStateChanged(state: Int) {
if (state == ExoPlayer.STATE_ENDED) {
Log.d("Video","Stopped Playing")
if(videoIndex!=2) {
videoIndex++
}
else {
videoIndex=1
Log.d("Video","Set to 1")
}
}
}
}
)
}

// Manage lifecycle events
DisposableEffect(Unit) {
onDispose {
exoPlayer.release()
}
}
// Use AndroidView to embed an Android View (PlayerView) into Compose
AndroidView(
factory = { ctx ->
PlayerView(ctx).apply {
player = exoPlayer
useController = true
}
},
modifier = Modifier
.fillMaxWidth()
.height(150.dp)
)
Я столкнулся с рядом проблем. Во-первых, на моем видеоплеере нет кнопок поиска, кнопок перехода к следующему и предыдущему видео. Во-вторых, я хочу учесть, что на этом сайте у меня есть два видео с именами video-1.mp4 и video-2.mp4. Теперь я сначала воспроизвожу видео-1.mp4, после этого увеличиваю значение на 1, а затем воспроизвожу видео-2.mp4. Но теперь, поскольку для videoIndex уже установлено значение 2, мне нужно вернуть ему значение 1. Итак, я это делаю. Но видео-1.mp4 не воспроизводится. Более того, почему мой логарифм показывает такой вывод:
Остановлено воспроизведение
Остановлено воспроизведение
Установлено значение 1
Остановлено воспроизведение
После печати не должно быть вывода «Остановлено воспроизведение». Установлено значение 1. Но почему он это делает?

Подробнее здесь: https://stackoverflow.com/questions/784 ... pack-compo
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»