mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-19 18:55:05 +01:00
changes to allow bluetooth headset state change receiver to be exported. fixes bluetooth headset (dis)connection not being recognised during a call.
Signed-off-by: Gavin Element <github@bobfox.top> Signed-off-by: gavine99 <github@xymail.tk>
This commit is contained in:
parent
8e5ca5c637
commit
e68c023a27
@ -19,7 +19,7 @@ import android.os.Handler
|
|||||||
@SuppressLint("UnspecifiedRegisterReceiverFlag")
|
@SuppressLint("UnspecifiedRegisterReceiverFlag")
|
||||||
fun Context.registerBroadcastReceiver(receiver: BroadcastReceiver?, filter: IntentFilter, flag: ReceiverFlag): Intent? {
|
fun Context.registerBroadcastReceiver(receiver: BroadcastReceiver?, filter: IntentFilter, flag: ReceiverFlag): Intent? {
|
||||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
registerReceiver(receiver, filter, flag.getId())
|
registerReceiver(receiver, filter, flag.value)
|
||||||
} else {
|
} else {
|
||||||
registerReceiver(receiver, filter)
|
registerReceiver(receiver, filter)
|
||||||
}
|
}
|
||||||
@ -34,7 +34,7 @@ fun Context.registerPermissionHandlerBroadcastReceiver(
|
|||||||
flag: ReceiverFlag
|
flag: ReceiverFlag
|
||||||
): Intent? {
|
): Intent? {
|
||||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
registerReceiver(receiver, filter, broadcastPermission, scheduler, flag.getId())
|
registerReceiver(receiver, filter, broadcastPermission, scheduler, flag.value)
|
||||||
} else {
|
} else {
|
||||||
registerReceiver(receiver, filter, broadcastPermission, scheduler)
|
registerReceiver(receiver, filter, broadcastPermission, scheduler)
|
||||||
}
|
}
|
||||||
|
@ -12,11 +12,19 @@ import android.content.Context
|
|||||||
import android.os.Build
|
import android.os.Build
|
||||||
import androidx.annotation.RequiresApi
|
import androidx.annotation.RequiresApi
|
||||||
|
|
||||||
enum class ReceiverFlag {
|
enum class ReceiverFlag(val value: Int) {
|
||||||
NotExported;
|
Exported(
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
|
Context.RECEIVER_EXPORTED
|
||||||
fun getId(): Int {
|
} else {
|
||||||
return Context.RECEIVER_NOT_EXPORTED
|
0
|
||||||
}
|
}
|
||||||
|
),
|
||||||
|
NotExported(
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
|
||||||
|
Context.RECEIVER_NOT_EXPORTED
|
||||||
|
} else {
|
||||||
|
0
|
||||||
|
}
|
||||||
|
),
|
||||||
}
|
}
|
||||||
|
@ -292,7 +292,7 @@ public class WebRtcBluetoothManager {
|
|||||||
apprtcContext,
|
apprtcContext,
|
||||||
receiver,
|
receiver,
|
||||||
filter,
|
filter,
|
||||||
ReceiverFlag.NotExported);
|
ReceiverFlag.Exported);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void unregisterReceiver(BroadcastReceiver receiver) {
|
protected void unregisterReceiver(BroadcastReceiver receiver) {
|
||||||
|
Loading…
Reference in New Issue
Block a user