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