mirror of
https://github.com/zoriya/react-native-video.git
synced 2026-06-07 04:15:57 +00:00
fix: access AudioFocusChangeListener on main thread (#4821)
This commit is contained in:
+20
-18
@@ -29,28 +29,30 @@ class AudioFocusManager() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private val audioFocusChangeListener = AudioManager.OnAudioFocusChangeListener { focusChange ->
|
private val audioFocusChangeListener = AudioManager.OnAudioFocusChangeListener { focusChange ->
|
||||||
when (focusChange) {
|
Threading.runOnMainThread {
|
||||||
AudioManager.AUDIOFOCUS_GAIN -> {
|
when (focusChange) {
|
||||||
unDuckActivePlayers()
|
AudioManager.AUDIOFOCUS_GAIN -> {
|
||||||
}
|
unDuckActivePlayers()
|
||||||
AudioManager.AUDIOFOCUS_LOSS -> {
|
}
|
||||||
pauseActivePlayers()
|
AudioManager.AUDIOFOCUS_LOSS -> {
|
||||||
currentMixAudioMode = null
|
|
||||||
audioFocusRequest = null
|
|
||||||
}
|
|
||||||
AudioManager.AUDIOFOCUS_LOSS_TRANSIENT -> {
|
|
||||||
val mixAudioMode = determineRequiredMixMode()
|
|
||||||
if (mixAudioMode != MixAudioMode.MIXWITHOTHERS) {
|
|
||||||
pauseActivePlayers()
|
pauseActivePlayers()
|
||||||
currentMixAudioMode = null
|
currentMixAudioMode = null
|
||||||
audioFocusRequest = null
|
audioFocusRequest = null
|
||||||
}
|
}
|
||||||
}
|
AudioManager.AUDIOFOCUS_LOSS_TRANSIENT -> {
|
||||||
AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK -> {
|
val mixAudioMode = determineRequiredMixMode()
|
||||||
val mixAudioMode = determineRequiredMixMode()
|
if (mixAudioMode != MixAudioMode.MIXWITHOTHERS) {
|
||||||
when (mixAudioMode) {
|
pauseActivePlayers()
|
||||||
MixAudioMode.DONOTMIX -> pauseActivePlayers()
|
currentMixAudioMode = null
|
||||||
else -> duckActivePlayers()
|
audioFocusRequest = null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK -> {
|
||||||
|
val mixAudioMode = determineRequiredMixMode()
|
||||||
|
when (mixAudioMode) {
|
||||||
|
MixAudioMode.DONOTMIX -> pauseActivePlayers()
|
||||||
|
else -> duckActivePlayers()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user