[Catalyst] Implement get{Read,Write}Permissions for Bluetooth

NO_IFTTT=Catalyst only

Fix: 385271230
Flag: com.android.settings.flags.catalyst_bluetooth_switchbar_screen
Test: devtool
Change-Id: I697a088d13fa019158c89835adb95759f7d30da7
This commit is contained in:
Jason Chiu
2024-12-26 10:51:51 +08:00
parent 0fef86f3f3
commit 2485a07426

View File

@@ -16,6 +16,7 @@
package com.android.settings.connecteddevice
import android.Manifest
import android.annotation.SuppressLint
import android.bluetooth.BluetoothAdapter
import android.content.BroadcastReceiver
@@ -35,6 +36,7 @@ import com.android.settingslib.WirelessUtils
import com.android.settingslib.datastore.AbstractKeyedDataObservable
import com.android.settingslib.datastore.DataChangeReason
import com.android.settingslib.datastore.KeyValueStore
import com.android.settingslib.datastore.Permissions
import com.android.settingslib.metadata.PreferenceMetadata
import com.android.settingslib.metadata.ReadWritePermit
import com.android.settingslib.metadata.SensitivityLevel
@@ -52,6 +54,11 @@ class BluetoothPreference(private val bluetoothDataStore: BluetoothDataStore) :
override val restrictionKeys: Array<String>
get() = arrayOf(UserManager.DISALLOW_BLUETOOTH, UserManager.DISALLOW_CONFIG_BLUETOOTH)
override fun getReadPermissions(context: Context) = Permissions.EMPTY
override fun getWritePermissions(context: Context) =
Permissions.allOf(Manifest.permission.BLUETOOTH_CONNECT)
override fun getReadPermit(context: Context, callingPid: Int, callingUid: Int) =
ReadWritePermit.ALLOW