From 05222c1b79c5a0e51e3d04828b736cc433a0f9c5 Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Mon, 17 Nov 2025 15:46:45 -0600 Subject: [PATCH] feat(bluetooth): Request location permission for BLE scan pre S (#3724) --- .../mesh/ui/connections/components/BLEDevices.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/geeksville/mesh/ui/connections/components/BLEDevices.kt b/app/src/main/java/com/geeksville/mesh/ui/connections/components/BLEDevices.kt index f62407607..4e82cdd0c 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/connections/components/BLEDevices.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/connections/components/BLEDevices.kt @@ -19,6 +19,7 @@ package com.geeksville.mesh.ui.connections.components import android.Manifest import android.content.Intent +import android.os.Build import android.provider.Settings.ACTION_BLUETOOTH_SETTINGS import androidx.activity.compose.rememberLauncherForActivityResult import androidx.activity.result.contract.ActivityResultContracts @@ -94,7 +95,11 @@ fun BLEDevices( // Define permissions needed for Bluetooth scanning based on Android version. val bluetoothPermissionsList = remember { - listOf(Manifest.permission.BLUETOOTH_SCAN, Manifest.permission.BLUETOOTH_CONNECT) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { + listOf(Manifest.permission.BLUETOOTH_SCAN, Manifest.permission.BLUETOOTH_CONNECT) + } else { + listOf(Manifest.permission.ACCESS_FINE_LOCATION) + } } val context = LocalContext.current