@@ -27,6 +27,7 @@ import android.content.Intent
2727import android.content.ServiceConnection
2828import android.content.SharedPreferences
2929import android.net.Uri
30+ import android.os.Build
3031import android.os.Bundle
3132import android.os.IBinder
3233import android.provider.Settings
@@ -183,17 +184,30 @@ fun Main() {
183184 var canDrawOverlays by remember { mutableStateOf(Settings .canDrawOverlays(context)) }
184185 val overlaySkipped = remember { mutableStateOf(context.getSharedPreferences(" settings" , MODE_PRIVATE ).getBoolean(" overlay_permission_skipped" , false )) }
185186
186- val permissionState = rememberMultiplePermissionsState(
187- permissions = listOf (
187+ val bluetoothPermissions = if ( Build . VERSION . SDK_INT >= Build . VERSION_CODES . S ) {
188+ listOf (
188189 " android.permission.BLUETOOTH_CONNECT" ,
189190 " android.permission.BLUETOOTH_SCAN" ,
190191 " android.permission.BLUETOOTH" ,
191192 " android.permission.BLUETOOTH_ADMIN" ,
192- " android.permission.BLUETOOTH_ADVERTISE" ,
193- " android.permission.POST_NOTIFICATIONS" ,
194- " android.permission.READ_PHONE_STATE" ,
195- " android.permission.ANSWER_PHONE_CALLS" ,
193+ " android.permission.BLUETOOTH_ADVERTISE"
194+ )
195+ } else {
196+ listOf (
197+ " android.permission.BLUETOOTH" ,
198+ " android.permission.BLUETOOTH_ADMIN" ,
199+ " android.permission.ACCESS_FINE_LOCATION"
196200 )
201+ }
202+ val otherPermissions = listOf (
203+ " android.permission.POST_NOTIFICATIONS" ,
204+ " android.permission.READ_PHONE_STATE" ,
205+ " android.permission.ANSWER_PHONE_CALLS"
206+ )
207+ val allPermissions = bluetoothPermissions + otherPermissions
208+
209+ val permissionState = rememberMultiplePermissionsState(
210+ permissions = allPermissions
197211 )
198212 val airPodsService = remember { mutableStateOf<AirPodsService ?>(null ) }
199213
0 commit comments