android 不推荐使用SimpleExoPlayer.Builder(此).build()

jhiyze9q  于 2023-02-02  发布在  Android
关注(0)|答案(4)|浏览(236)

我在应用中使用Exoplayer,并将exoplayer初始化为

player = SimpleExoPlayer.Builder(this).build()

但Android Studio给我警告,因为它是弃用的。当我得到较低版本的Exoplayer 2.15.1,然后警告熄灭。但在最新版本的2.16.0,它是弃用警告。我们如何初始化exoplayer现在与最新版本?

1l5u6lss

1l5u6lss1#

2.16.1中执行以下操作。

ExoPlayer player = new ExoPlayer.Builder(context).build();

请参见:https://exoplayer.dev/hello-world.html

xurqigkl

xurqigkl2#

玩家初始化。

val exoPlayer = ExoPlayer.Builder(context).build().apply {
    setMediaItem(MediaItem.fromUri("http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"))
}

播放器视图现在已替换为样式化播放器视图

StyledPlayerView(context).apply {
            player = exoPlayer
            layoutParams = FrameLayout.LayoutParams(
                ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT
            )

        }

编写以下示例。

@Composable
fun VideoPlayer() {
    val context = LocalContext.current
    val exoPlayer = remember(context) {
        ExoPlayer.Builder(context).build().apply {
            setMediaItem(MediaItem.fromUri("http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"))
        }
    }

    DisposableEffect(key1 = exoPlayer) {
        onDispose {
            exoPlayer.release()
        }
    }

    AndroidView(modifier = Modifier
        .fillMaxWidth()
        .height(214.dp), factory = {
        StyledPlayerView(context).apply {
            player = exoPlayer
            layoutParams = FrameLayout.LayoutParams(
                ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT
            )

        }
    })
}
nnt7mjpx

nnt7mjpx3#

不推荐使用SimpleExoPlayer。您应该使用ExoPlayer
implementation 'com.google.android.exoplayer:exoplayer:2.18.2'
示例:

private var exoPlayer: ExoPlayer? = null
exoPlayer = ExoPlayer.Builder(this).build()
7fyelxc5

7fyelxc54#

SimpleExoPlayer已弃用。所有功能都已移至ExoPlayer。可以使用ExoPlayer.Builder代替SimpleExoPlayer.Builder
初始化你的exoplayer为

player = ExoPlayer.Builder(this).build()

您可以检查release notes中版本2.16.0的库中所做的更改

相关问题