📅  最后修改于: 2023-12-03 15:32:30.618000             🧑  作者: Mango
在 Kotlin 中,我们可以使用 VideoView
组件来添加视频播放的功能。
我们需要在 build.gradle
文件中添加以下依赖:
implementation 'com.google.android.exoplayer:exoplayer:2.10.5'
在布局文件中添加 VideoView
组件:
<com.google.android.exoplayer2.ui.PlayerView
android:id="@+id/player_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
在 Kotlin 代码中,我们需要初始化播放器:
private lateinit var playerView: PlayerView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// 初始化播放器
playerView = findViewById(R.id.player_view)
val player = SimpleExoPlayer.Builder(this).build()
playerView.player = player
// 加载视频资源
val mediaItem = MediaItem.fromUri("https://example.com/video.mp4")
player.setMediaItem(mediaItem)
}
在准备就绪后,我们可以调用 player.play()
方法播放视频:
player.prepare()
player.play()
我们也可以监听视频播放状态,来控制视频播放:
player.addListener(object : Player.EventListener {
override fun onPlayerStateChanged(playWhenReady: Boolean, playbackState: Int) {
when (playbackState) {
Player.STATE_BUFFERING -> {
// 视频正在缓冲中
}
Player.STATE_READY -> {
// 视频已准备就绪
}
Player.STATE_ENDED -> {
// 视频播放完毕
}
Player.STATE_IDLE -> {
// 播放器处于空闲状态
}
}
}
})
在活动或碎片销毁时,我们需要释放播放器:
override fun onDestroy() {
super.onDestroy()
player.release()
}
以上就是 Kotlin 中使用 VideoView
组件实现视频播放的方法。