1 /* 2 * Copyright 2013 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package android.bluetooth; 18 19 import android.app.PendingIntent; 20 import android.bluetooth.BluetoothDevice; 21 import android.bluetooth.BluetoothGattService; 22 import android.bluetooth.le.AdvertiseSettings; 23 import android.bluetooth.le.AdvertiseData; 24 import android.bluetooth.le.AdvertisingSetParameters; 25 import android.bluetooth.le.DistanceMeasurementMethod; 26 import android.bluetooth.le.DistanceMeasurementParams; 27 import android.bluetooth.le.IDistanceMeasurementCallback; 28 import android.bluetooth.le.PeriodicAdvertisingParameters; 29 import android.bluetooth.le.ScanFilter; 30 import android.bluetooth.le.ScanResult; 31 import android.bluetooth.le.ScanSettings; 32 import android.bluetooth.le.ResultStorageDescriptor; 33 import android.content.AttributionSource; 34 import android.os.ParcelUuid; 35 import android.os.WorkSource; 36 37 import android.bluetooth.IBluetoothGattCallback; 38 import android.bluetooth.IBluetoothGattServerCallback; 39 import android.bluetooth.le.IAdvertisingSetCallback; 40 import android.bluetooth.le.IPeriodicAdvertisingCallback; 41 import android.bluetooth.le.IScannerCallback; 42 43 /** 44 * API for interacting with BLE / GATT 45 * @hide 46 */ 47 interface IBluetoothGatt { 48 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") getDevicesMatchingConnectionStates(in int[] states, in AttributionSource attributionSource)49 List<BluetoothDevice> getDevicesMatchingConnectionStates(in int[] states, in AttributionSource attributionSource); 50 51 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") registerScanner(in IScannerCallback callback, in WorkSource workSource, in AttributionSource attributionSource)52 void registerScanner(in IScannerCallback callback, in WorkSource workSource, in AttributionSource attributionSource); 53 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") unregisterScanner(in int scannerId, in AttributionSource attributionSource)54 void unregisterScanner(in int scannerId, in AttributionSource attributionSource); 55 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") startScan(in int scannerId, in ScanSettings settings, in List<ScanFilter> filters, in AttributionSource attributionSource)56 void startScan(in int scannerId, in ScanSettings settings, in List<ScanFilter> filters, 57 in AttributionSource attributionSource); 58 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") startScanForIntent(in PendingIntent intent, in ScanSettings settings, in List<ScanFilter> filters, in AttributionSource attributionSource)59 void startScanForIntent(in PendingIntent intent, in ScanSettings settings, in List<ScanFilter> filters, 60 in AttributionSource attributionSource); 61 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") stopScanForIntent(in PendingIntent intent, in AttributionSource attributionSource)62 void stopScanForIntent(in PendingIntent intent, in AttributionSource attributionSource); 63 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") stopScan(in int scannerId, in AttributionSource attributionSource)64 void stopScan(in int scannerId, in AttributionSource attributionSource); 65 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") flushPendingBatchResults(in int scannerId, in AttributionSource attributionSource)66 void flushPendingBatchResults(in int scannerId, in AttributionSource attributionSource); 67 68 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") startAdvertisingSet(in AdvertisingSetParameters parameters, in AdvertiseData advertiseData, in AdvertiseData scanResponse, in PeriodicAdvertisingParameters periodicParameters, in AdvertiseData periodicData, in int duration, in int maxExtAdvEvents, in int gattServerIf, in IAdvertisingSetCallback callback, in AttributionSource attributionSource)69 void startAdvertisingSet(in AdvertisingSetParameters parameters, in AdvertiseData advertiseData, 70 in AdvertiseData scanResponse, in PeriodicAdvertisingParameters periodicParameters, 71 in AdvertiseData periodicData, in int duration, in int maxExtAdvEvents, in int gattServerIf, 72 in IAdvertisingSetCallback callback, in AttributionSource attributionSource); 73 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") stopAdvertisingSet(in IAdvertisingSetCallback callback, in AttributionSource attributionSource)74 void stopAdvertisingSet(in IAdvertisingSetCallback callback, in AttributionSource attributionSource); 75 76 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_ADVERTISE,android.Manifest.permission.BLUETOOTH_PRIVILEGED})") getOwnAddress(in int advertiserId, in AttributionSource attributionSource)77 void getOwnAddress(in int advertiserId, in AttributionSource attributionSource); 78 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") enableAdvertisingSet(in int advertiserId, in boolean enable, in int duration, in int maxExtAdvEvents, in AttributionSource attributionSource)79 void enableAdvertisingSet(in int advertiserId, in boolean enable, in int duration, in int maxExtAdvEvents, in AttributionSource attributionSource); 80 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") setAdvertisingData(in int advertiserId, in AdvertiseData data, in AttributionSource attributionSource)81 void setAdvertisingData(in int advertiserId, in AdvertiseData data, in AttributionSource attributionSource); 82 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") setScanResponseData(in int advertiserId, in AdvertiseData data, in AttributionSource attributionSource)83 void setScanResponseData(in int advertiserId, in AdvertiseData data, in AttributionSource attributionSource); 84 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") setAdvertisingParameters(in int advertiserId, in AdvertisingSetParameters parameters, in AttributionSource attributionSource)85 void setAdvertisingParameters(in int advertiserId, in AdvertisingSetParameters parameters, in AttributionSource attributionSource); 86 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") setPeriodicAdvertisingParameters(in int advertiserId, in PeriodicAdvertisingParameters parameters, in AttributionSource attributionSource)87 void setPeriodicAdvertisingParameters(in int advertiserId, in PeriodicAdvertisingParameters parameters, in AttributionSource attributionSource); 88 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") setPeriodicAdvertisingData(in int advertiserId, in AdvertiseData data, in AttributionSource attributionSource)89 void setPeriodicAdvertisingData(in int advertiserId, in AdvertiseData data, in AttributionSource attributionSource); 90 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_ADVERTISE)") setPeriodicAdvertisingEnable(in int advertiserId, in boolean enable, in AttributionSource attributionSource)91 void setPeriodicAdvertisingEnable(in int advertiserId, in boolean enable, in AttributionSource attributionSource); 92 93 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") registerSync(in ScanResult scanResult, in int skip, in int timeout, in IPeriodicAdvertisingCallback callback, in AttributionSource attributionSource)94 void registerSync(in ScanResult scanResult, in int skip, in int timeout, in IPeriodicAdvertisingCallback callback, in AttributionSource attributionSource); 95 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") unregisterSync(in IPeriodicAdvertisingCallback callback, in AttributionSource attributionSource)96 void unregisterSync(in IPeriodicAdvertisingCallback callback, in AttributionSource attributionSource); 97 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") transferSync(in BluetoothDevice bda, in int serviceData, in int syncHandle, in AttributionSource attributionSource)98 void transferSync(in BluetoothDevice bda, in int serviceData, in int syncHandle, in AttributionSource attributionSource); 99 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_SCAN)") transferSetInfo(in BluetoothDevice bda, in int serviceData, in int advertisingHandle, in IPeriodicAdvertisingCallback callback, in AttributionSource attributionSource)100 void transferSetInfo(in BluetoothDevice bda, in int serviceData, in int advertisingHandle, in IPeriodicAdvertisingCallback callback, in AttributionSource attributionSource); 101 102 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") registerClient(in ParcelUuid appId, in IBluetoothGattCallback callback, boolean eatt_support, in AttributionSource attributionSource)103 void registerClient(in ParcelUuid appId, in IBluetoothGattCallback callback, boolean eatt_support, in AttributionSource attributionSource); 104 105 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") unregisterClient(in int clientIf, in AttributionSource attributionSource)106 void unregisterClient(in int clientIf, in AttributionSource attributionSource); 107 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") clientConnect(in int clientIf, in String address, in int addressType, in boolean isDirect, in int transport, in boolean opportunistic, in int phy, in AttributionSource attributionSource)108 void clientConnect(in int clientIf, in String address, in int addressType, in boolean isDirect, in int transport, in boolean opportunistic, in int phy, in AttributionSource attributionSource); 109 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") clientDisconnect(in int clientIf, in String address, in AttributionSource attributionSource)110 void clientDisconnect(in int clientIf, in String address, in AttributionSource attributionSource); 111 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") clientSetPreferredPhy(in int clientIf, in String address, in int txPhy, in int rxPhy, in int phyOptions, in AttributionSource attributionSource)112 void clientSetPreferredPhy(in int clientIf, in String address, in int txPhy, in int rxPhy, in int phyOptions, in AttributionSource attributionSource); 113 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") clientReadPhy(in int clientIf, in String address, in AttributionSource attributionSources)114 void clientReadPhy(in int clientIf, in String address, in AttributionSource attributionSources); 115 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") refreshDevice(in int clientIf, in String address, in AttributionSource attributionSource)116 void refreshDevice(in int clientIf, in String address, in AttributionSource attributionSource); 117 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") discoverServices(in int clientIf, in String address, in AttributionSource attributionSource)118 void discoverServices(in int clientIf, in String address, in AttributionSource attributionSource); 119 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") discoverServiceByUuid(in int clientIf, in String address, in ParcelUuid uuid, in AttributionSource attributionSource)120 void discoverServiceByUuid(in int clientIf, in String address, in ParcelUuid uuid, in AttributionSource attributionSource); 121 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") readCharacteristic(in int clientIf, in String address, in int handle, in int authReq, in AttributionSource attributionSource)122 void readCharacteristic(in int clientIf, in String address, in int handle, in int authReq, in AttributionSource attributionSource); 123 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") readUsingCharacteristicUuid(in int clientIf, in String address, in ParcelUuid uuid, in int startHandle, in int endHandle, in int authReq, in AttributionSource attributionSource)124 void readUsingCharacteristicUuid(in int clientIf, in String address, in ParcelUuid uuid, 125 in int startHandle, in int endHandle, in int authReq, in AttributionSource attributionSource); 126 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") writeCharacteristic(in int clientIf, in String address, in int handle, in int writeType, in int authReq, in byte[] value, in AttributionSource attributionSource)127 int writeCharacteristic(in int clientIf, in String address, in int handle, 128 in int writeType, in int authReq, in byte[] value, in AttributionSource attributionSource); 129 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") readDescriptor(in int clientIf, in String address, in int handle, in int authReq, in AttributionSource attributionSource)130 void readDescriptor(in int clientIf, in String address, in int handle, in int authReq, in AttributionSource attributionSource); 131 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") writeDescriptor(in int clientIf, in String address, in int handle, in int authReq, in byte[] value, in AttributionSource attributionSource)132 int writeDescriptor(in int clientIf, in String address, in int handle, 133 in int authReq, in byte[] value, in AttributionSource attributionSource); 134 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") registerForNotification(in int clientIf, in String address, in int handle, in boolean enable, in AttributionSource attributionSource)135 void registerForNotification(in int clientIf, in String address, in int handle, in boolean enable, in AttributionSource attributionSource); 136 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") beginReliableWrite(in int clientIf, in String address, in AttributionSource attributionSource)137 void beginReliableWrite(in int clientIf, in String address, in AttributionSource attributionSource); 138 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") endReliableWrite(in int clientIf, in String address, in boolean execute, in AttributionSource attributionSource)139 void endReliableWrite(in int clientIf, in String address, in boolean execute, in AttributionSource attributionSource); 140 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") readRemoteRssi(in int clientIf, in String address, in AttributionSource attributionSource)141 void readRemoteRssi(in int clientIf, in String address, in AttributionSource attributionSource); 142 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") configureMTU(in int clientIf, in String address, in int mtu, in AttributionSource attributionSource)143 void configureMTU(in int clientIf, in String address, in int mtu, in AttributionSource attributionSource); 144 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") connectionParameterUpdate(in int clientIf, in String address, in int connectionPriority, in AttributionSource attributionSource)145 void connectionParameterUpdate(in int clientIf, in String address, in int connectionPriority, in AttributionSource attributionSource); 146 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") leConnectionUpdate(int clientIf, String address, int minInterval, int maxInterval, int peripheralLatency, int supervisionTimeout, int minConnectionEventLen, int maxConnectionEventLen, in AttributionSource attributionSource)147 void leConnectionUpdate(int clientIf, String address, int minInterval, 148 int maxInterval, int peripheralLatency, int supervisionTimeout, 149 int minConnectionEventLen, int maxConnectionEventLen, in AttributionSource attributionSource); 150 151 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") registerServer(in ParcelUuid appId, in IBluetoothGattServerCallback callback, boolean eatt_support, in AttributionSource attributionSource)152 void registerServer(in ParcelUuid appId, in IBluetoothGattServerCallback callback, boolean eatt_support, in AttributionSource attributionSource); 153 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") unregisterServer(in int serverIf, in AttributionSource attributionSource)154 void unregisterServer(in int serverIf, in AttributionSource attributionSource); 155 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") serverConnect(in int serverIf, in String address, in int addressType, in boolean isDirect, in int transport, in AttributionSource attributionSource)156 void serverConnect(in int serverIf, in String address, in int addressType, in boolean isDirect, in int transport, in AttributionSource attributionSource); 157 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") serverDisconnect(in int serverIf, in String address, in AttributionSource attributionSource)158 void serverDisconnect(in int serverIf, in String address, in AttributionSource attributionSource); 159 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") serverSetPreferredPhy(in int clientIf, in String address, in int txPhy, in int rxPhy, in int phyOptions, in AttributionSource attributionSource)160 void serverSetPreferredPhy(in int clientIf, in String address, in int txPhy, in int rxPhy, in int phyOptions, in AttributionSource attributionSource); 161 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") serverReadPhy(in int clientIf, in String address, in AttributionSource attributionSource)162 void serverReadPhy(in int clientIf, in String address, in AttributionSource attributionSource); 163 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") addService(in int serverIf, in BluetoothGattService service, in AttributionSource attributionSource)164 void addService(in int serverIf, in BluetoothGattService service, in AttributionSource attributionSource); 165 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") removeService(in int serverIf, in int handle, in AttributionSource attributionSource)166 void removeService(in int serverIf, in int handle, in AttributionSource attributionSource); 167 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") clearServices(in int serverIf, in AttributionSource attributionSource)168 void clearServices(in int serverIf, in AttributionSource attributionSource); 169 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") sendResponse(in int serverIf, in String address, in int requestId, in int status, in int offset, in byte[] value, in AttributionSource attributionSource)170 void sendResponse(in int serverIf, in String address, in int requestId, 171 in int status, in int offset, in byte[] value, in AttributionSource attributionSource); 172 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") sendNotification(in int serverIf, in String address, in int handle, in boolean confirm, in byte[] value, in AttributionSource attributionSource)173 int sendNotification(in int serverIf, in String address, in int handle, 174 in boolean confirm, in byte[] value, in AttributionSource attributionSource); 175 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") disconnectAll(in AttributionSource attributionSource)176 void disconnectAll(in AttributionSource attributionSource); 177 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") numHwTrackFiltersAvailable(in AttributionSource attributionSource)178 int numHwTrackFiltersAvailable(in AttributionSource attributionSource); 179 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") leSubrateRequest(in int clientIf, in String address, in int subrateMin, in int subrateMax, in int maxLatency, in int contNumber, in int supervisionTimeout, in AttributionSource attributionSource)180 void leSubrateRequest(in int clientIf, in String address, in int subrateMin, in int subrateMax, in int maxLatency, 181 in int contNumber, in int supervisionTimeout, in AttributionSource attributionSource); 182 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.BLUETOOTH_CONNECT)") subrateModeRequest(in int clientIf, in String address, in int subrateMode, in AttributionSource attributionSource)183 void subrateModeRequest(in int clientIf, in String address, in int subrateMode, in AttributionSource attributionSource); 184 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT,android.Manifest.permission.BLUETOOTH_PRIVILEGED})") getSupportedDistanceMeasurementMethods(in AttributionSource attributionSource)185 List<DistanceMeasurementMethod> getSupportedDistanceMeasurementMethods(in AttributionSource attributionSource); 186 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT,android.Manifest.permission.BLUETOOTH_PRIVILEGED})") startDistanceMeasurement(in ParcelUuid uuid, in DistanceMeasurementParams params, in IDistanceMeasurementCallback callback, in AttributionSource attributionSource)187 void startDistanceMeasurement(in ParcelUuid uuid, in DistanceMeasurementParams params, in IDistanceMeasurementCallback callback, 188 in AttributionSource attributionSource); 189 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT,android.Manifest.permission.BLUETOOTH_PRIVILEGED})") stopDistanceMeasurement(in ParcelUuid uuid, in BluetoothDevice device, in int method, in AttributionSource attributionSource)190 int stopDistanceMeasurement(in ParcelUuid uuid, in BluetoothDevice device, in int method, in AttributionSource attributionSource); 191 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT,android.Manifest.permission.BLUETOOTH_PRIVILEGED})") getChannelSoundingMaxSupportedSecurityLevel(in BluetoothDevice remoteDevice, in AttributionSource attributionSource)192 int getChannelSoundingMaxSupportedSecurityLevel(in BluetoothDevice remoteDevice, in AttributionSource attributionSource); 193 @JavaPassthrough(annotation="@android.annotation.RequiresPermission(allOf={android.Manifest.permission.BLUETOOTH_CONNECT,android.Manifest.permission.BLUETOOTH_PRIVILEGED})") getLocalChannelSoundingMaxSupportedSecurityLevel(in AttributionSource attributionSource)194 int getLocalChannelSoundingMaxSupportedSecurityLevel(in AttributionSource attributionSource); 195 } 196