Request audio focus fixes and improvements
Dependencies downgrade
This commit is contained in:
@ -54,7 +54,7 @@ dependencies {
|
||||
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
|
||||
implementation "androidx.preference:preference-ktx:1.1.1"
|
||||
implementation "androidx.exifinterface:exifinterface:1.3.3"
|
||||
implementation "androidx.core:core-ktx:1.7.0"
|
||||
implementation "androidx.core:core-ktx:1.6.0"
|
||||
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.1'
|
||||
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
|
||||
}
|
||||
|
||||
@ -522,7 +522,7 @@ class BaresipService: Service() {
|
||||
stopMediaPlayer()
|
||||
if (am.mode != AudioManager.MODE_IN_COMMUNICATION)
|
||||
am.mode = AudioManager.MODE_IN_COMMUNICATION
|
||||
requestAudioFocus(AudioAttributes.USAGE_VOICE_COMMUNICATION,
|
||||
requestAudioFocus(AudioManager.STREAM_VOICE_CALL,
|
||||
AudioAttributes.CONTENT_TYPE_SPEECH)
|
||||
setCallVolume()
|
||||
proximitySensing(true)
|
||||
@ -641,7 +641,7 @@ class BaresipService: Service() {
|
||||
stopMediaPlayer()
|
||||
if (am.mode != AudioManager.MODE_IN_COMMUNICATION)
|
||||
am.mode = AudioManager.MODE_IN_COMMUNICATION
|
||||
requestAudioFocus(AudioAttributes.USAGE_VOICE_COMMUNICATION,
|
||||
requestAudioFocus(AudioManager.STREAM_VOICE_CALL,
|
||||
AudioAttributes.CONTENT_TYPE_SPEECH)
|
||||
setCallVolume()
|
||||
proximitySensing(true)
|
||||
@ -1047,7 +1047,7 @@ class BaresipService: Service() {
|
||||
}
|
||||
if ((VERSION.SDK_INT >= 26) && (audioFocusRequest == null)) {
|
||||
@TargetApi(26)
|
||||
audioFocusRequest = AudioFocusRequest.Builder(AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE)
|
||||
audioFocusRequest = AudioFocusRequest.Builder(AudioManager.AUDIOFOCUS_GAIN_TRANSIENT)
|
||||
.run {
|
||||
setAudioAttributes(AudioAttributes.Builder().run {
|
||||
setUsage(usage)
|
||||
@ -1071,7 +1071,7 @@ class BaresipService: Service() {
|
||||
}
|
||||
} else {
|
||||
@Suppress("DEPRECATION")
|
||||
if (am.requestAudioFocus(null, usage, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT_EXCLUSIVE) ==
|
||||
if (am.requestAudioFocus(null, usage, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT) ==
|
||||
AudioManager.AUDIOFOCUS_REQUEST_GRANTED) {
|
||||
Log.d(TAG, "Audio focus granted for usage $usage")
|
||||
audioFocusUsage = usage
|
||||
@ -1121,8 +1121,7 @@ class BaresipService: Service() {
|
||||
|
||||
private fun startRinging() {
|
||||
am.mode = AudioManager.MODE_RINGTONE
|
||||
requestAudioFocus(AudioAttributes.USAGE_NOTIFICATION_RINGTONE,
|
||||
AudioAttributes.CONTENT_TYPE_MUSIC)
|
||||
requestAudioFocus(AudioManager.STREAM_RING, AudioAttributes.CONTENT_TYPE_MUSIC)
|
||||
if (VERSION.SDK_INT >= 28) {
|
||||
rt.isLooping = true
|
||||
rt.play()
|
||||
|
||||
Reference in New Issue
Block a user