@@ -38,7 +38,7 @@ internal class CallSoundPlayer(private val context: Context) {
38
38
fun playCallSound (soundUri : Uri ? , playIfMuted : Boolean = false) {
39
39
try {
40
40
synchronized(this ) {
41
- requestAudioFocus(playIfMuted) {
41
+ requestAudioFocus {
42
42
if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .P ) {
43
43
playWithRingtoneManager(soundUri, playIfMuted)
44
44
} else {
@@ -51,7 +51,7 @@ internal class CallSoundPlayer(private val context: Context) {
51
51
}
52
52
}
53
53
54
- private fun requestAudioFocus (playIfMuted : Boolean = false, onGranted : () -> Unit ) {
54
+ private fun requestAudioFocus (onGranted : () -> Unit ) {
55
55
if (audioManager == null ) {
56
56
(context.getSystemService(Context .AUDIO_SERVICE ) as ? AudioManager )?.let {
57
57
audioManager = it
@@ -61,32 +61,7 @@ internal class CallSoundPlayer(private val context: Context) {
61
61
}
62
62
}
63
63
64
- val isGranted = if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .O ) {
65
- audioFocusRequest = AudioFocusRequest
66
- .Builder (AudioManager .AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE )
67
- .setAudioAttributes(
68
- if (playIfMuted) {
69
- AudioAttributes .Builder ().setVoiceCommunicationAttributes().build()
70
- } else {
71
- AudioAttributes .Builder ().setNotificationRingtoneAttributes().build()
72
- },
73
- )
74
- .setAcceptsDelayedFocusGain(false )
75
- .build()
76
-
77
- audioFocusRequest?.let {
78
- audioManager?.requestAudioFocus(it) == AudioManager .AUDIOFOCUS_REQUEST_GRANTED
79
- } ? : false
80
- } else {
81
- audioManager?.requestAudioFocus(
82
- null ,
83
- if (playIfMuted) AudioManager .STREAM_VOICE_CALL else AudioManager .STREAM_RING ,
84
- AudioManager .AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE ,
85
- ) == AudioManager .AUDIOFOCUS_REQUEST_GRANTED
86
- }
87
-
88
- logger.d { " [requestAudioFocus] Audio focus " + if (isGranted) " granted" else " not granted" }
89
- if (isGranted) onGranted()
64
+ onGranted()
90
65
}
91
66
92
67
@RequiresApi(Build .VERSION_CODES .P )
0 commit comments