如何释放Exoplayer PlayerView的播放器?

问题描述 投票:0回答:1

我在应用程序的两个片段中使用了PlayerView的两个不同实例(com.google.android.exoplayer2.ui.PlayerView)。这两个Playerview实例都为播放器使用相同的SimpleExoPlayer实例。在fragment1中,playerView1正常工作,当我转到fragment2时,使用相同SimpleExoPlayer实例的playerView2也可以正常工作。问题是当我回到fragment1时,playerView1没有显示任何内容。我认为在回到第一个片段之前,我应该释放playerView2的播放器,但我不知道如何。

在fragment1(kotlin)中:

playerView1.player = myGlobalSimpleExoPlayer

在fragment2(kotlin)中:

playerView2.player = myGlobalSimpleExoPlayer
android exoplayer
1个回答
0
投票

经过尝试不同的方法,终于找到了解决方案。我在这里分享解决方案,也许对其他有相同问题的人有用。

在设置PlayerView的播放器之前的每个片段中,我都为播放器设置了null值(每次切换片段时都应该这样做,而不仅是第一次):

playerView.player = null // add this before setting the actual player
playerView.player = myGlobalSimpleExoPlayer
© www.soinside.com 2019 - 2024. All rights reserved.