Request audio focus fixes and improvements

Dependencies downgrade
This commit is contained in:
Juha Heinanen
2021-11-05 15:04:18 +02:00
parent fc52deed3e
commit 5d9eeb0ca1
2 changed files with 6 additions and 7 deletions

View File

@ -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"
}

View File

@ -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()