gpt4 book ai didi

android - 调用后如何恢复exoplayer

转载 作者:行者123 更新时间:2023-12-04 18:01:44 25 4
gpt4 key购买 nike

接到电话后,我无法在 exoplayer 中恢复视频。从头开始。

这是我在 onPause() 中的代码

@Override
protected void onPause() {
super.onPause();
TelephonyManager telePhoneManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
if (telePhoneManager != null) {
telePhoneManager.listen(phoneStateListener, PhoneStateListener.LISTEN_NONE);
}
if(!backPressed){
releasePlayer();
}else{
player.setBackgrounded(true);
}
shutterView.setVisibility(View.VISIBLE);
}

和onResume()如下,

 @Override
protected void onResume() {
super.onResume();
if (player == null) {
preparePlayer();
} else {
player.setBackgrounded(false);
}
}

谁能帮我解决这个问题?

最佳答案

为您的播放器设置 AudioAttributes。

AudioAttributes audioAttributes = new AudioAttributes.Builder()
.setUsage(C.USAGE_MEDIA)
.setContentType(C.CONTENT_TYPE_MOVIE)
.build();
.
.
.
simpleExoPlayer.setAudioAttributes(audioAttributes);

暂停()

 @Override
public void onPause() {
super.onPause();
releasePlayer();
}

onResume()

 @Override
public void onResume() {
super.onResume();
if (simpleExoPlayer == null) {
initializePlayer();
}
startPlay();
}

releasePlayer()

 private void releasePlayer() {
if (simpleExoPlayer != null) {
playbackPosition = simpleExoPlayer.getCurrentPosition();
currentWindow = simpleExoPlayer.getCurrentWindowIndex();
playWhenReady = simpleExoPlayer.getPlayWhenReady();
simpleExoPlayer.removeListener(componentListener);
simpleExoPlayer.release();
simpleExoPlayer = null;
}
}

关于android - 调用后如何恢复exoplayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34313569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com