For Android 14, added also FOREGROUND_SERVICE_MICROPHONE permission
This commit is contained in:
@ -7,6 +7,7 @@
|
|||||||
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
|
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_PHONE_CALL" />
|
||||||
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE" />
|
||||||
<uses-permission android:name="android.permission.MANAGE_OWN_CALLS" />
|
<uses-permission android:name="android.permission.MANAGE_OWN_CALLS" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import android.content.Context
|
|||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.content.IntentFilter
|
import android.content.IntentFilter
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
|
import android.content.pm.ServiceInfo.FOREGROUND_SERVICE_TYPE_MICROPHONE
|
||||||
import android.content.pm.ServiceInfo.FOREGROUND_SERVICE_TYPE_PHONE_CALL
|
import android.content.pm.ServiceInfo.FOREGROUND_SERVICE_TYPE_PHONE_CALL
|
||||||
import android.database.ContentObserver
|
import android.database.ContentObserver
|
||||||
import android.media.*
|
import android.media.*
|
||||||
@ -1161,10 +1162,20 @@ class BaresipService: Service() {
|
|||||||
.setCustomContentView(notificationLayout)
|
.setCustomContentView(notificationLayout)
|
||||||
if (VERSION.SDK_INT >= 31)
|
if (VERSION.SDK_INT >= 31)
|
||||||
snb.foregroundServiceBehavior = Notification.FOREGROUND_SERVICE_DEFAULT
|
snb.foregroundServiceBehavior = Notification.FOREGROUND_SERVICE_DEFAULT
|
||||||
if (VERSION.SDK_INT >= 29)
|
try {
|
||||||
startForeground(STATUS_NOTIFICATION_ID, snb.build(), FOREGROUND_SERVICE_TYPE_PHONE_CALL)
|
if (VERSION.SDK_INT >= 29)
|
||||||
else
|
startForeground(
|
||||||
startForeground(STATUS_NOTIFICATION_ID, snb.build())
|
STATUS_NOTIFICATION_ID, snb.build(),
|
||||||
|
if (VERSION.SDK_INT >= 30)
|
||||||
|
FOREGROUND_SERVICE_TYPE_PHONE_CALL or FOREGROUND_SERVICE_TYPE_MICROPHONE
|
||||||
|
else
|
||||||
|
FOREGROUND_SERVICE_TYPE_PHONE_CALL
|
||||||
|
)
|
||||||
|
else
|
||||||
|
startForeground(STATUS_NOTIFICATION_ID, snb.build())
|
||||||
|
} catch (e: Exception) {
|
||||||
|
Log.e(TAG, "Failed to start foreground service")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateStatusNotification() {
|
private fun updateStatusNotification() {
|
||||||
|
|||||||
Reference in New Issue
Block a user