Fixed Exoplayer doesn't work with mute=true #1696
This commit is contained in:
parent
c29244bf89
commit
3012b81701
@ -116,6 +116,7 @@ class ReactExoplayerView extends FrameLayout implements
|
|||||||
private boolean isInBackground;
|
private boolean isInBackground;
|
||||||
private boolean isPaused;
|
private boolean isPaused;
|
||||||
private boolean isBuffering;
|
private boolean isBuffering;
|
||||||
|
private boolean muted = false;
|
||||||
private float rate = 1f;
|
private float rate = 1f;
|
||||||
private float audioVolume = 1f;
|
private float audioVolume = 1f;
|
||||||
private int minLoadRetryCount = 3;
|
private int minLoadRetryCount = 3;
|
||||||
@ -576,10 +577,14 @@ class ReactExoplayerView extends FrameLayout implements
|
|||||||
if (player != null) {
|
if (player != null) {
|
||||||
if (focusChange == AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK) {
|
if (focusChange == AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK) {
|
||||||
// Lower the volume
|
// Lower the volume
|
||||||
player.setVolume(audioVolume * 0.8f);
|
if (!muted) {
|
||||||
|
player.setVolume(audioVolume * 0.8f);
|
||||||
|
}
|
||||||
} else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
|
} else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
|
||||||
// Raise it back to normal
|
// Raise it back to normal
|
||||||
player.setVolume(audioVolume * 1);
|
if (!muted) {
|
||||||
|
player.setVolume(audioVolume * 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -912,6 +917,7 @@ class ReactExoplayerView extends FrameLayout implements
|
|||||||
|
|
||||||
private void applyModifiers() {
|
private void applyModifiers() {
|
||||||
setRepeatModifier(repeat);
|
setRepeatModifier(repeat);
|
||||||
|
setMutedModifier(muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setRepeatModifier(boolean repeat) {
|
public void setRepeatModifier(boolean repeat) {
|
||||||
@ -1069,6 +1075,7 @@ class ReactExoplayerView extends FrameLayout implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setMutedModifier(boolean muted) {
|
public void setMutedModifier(boolean muted) {
|
||||||
|
this.muted = muted;
|
||||||
audioVolume = muted ? 0.f : 1.f;
|
audioVolume = muted ? 0.f : 1.f;
|
||||||
if (player != null) {
|
if (player != null) {
|
||||||
player.setVolume(audioVolume);
|
player.setVolume(audioVolume);
|
||||||
|
Loading…
Reference in New Issue
Block a user