19908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta/* 2409cee69b2b09bcd11f1273752c016116436f247Jakub Pawlowski * Copyright (C) 2017 The Android Open Source Project 39908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * 49908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * Licensed under the Apache License, Version 2.0 (the "License"); 59908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * you may not use this file except in compliance with the License. 69908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * You may obtain a copy of the License at 79908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * 89908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * http://www.apache.org/licenses/LICENSE-2.0 99908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * 109908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * Unless required by applicable law or agreed to in writing, software 119908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * distributed under the License is distributed on an "AS IS" BASIS, 129908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 139908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * See the License for the specific language governing permissions and 149908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * limitations under the License. 159908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta */ 169908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta 179908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Battapackage android.bluetooth; 189908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta 199908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Battaimport android.bluetooth.BluetoothDevice; 209908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta 219908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta/** 229908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta * This abstract class is used to implement {@link BluetoothGattServer} callbacks. 239908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta */ 24d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowskipublic abstract class BluetoothGattServerCallback { 259908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta 269908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta /** 27d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Callback indicating when a remote device has been connected or disconnected. 28d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 29d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device Remote device that has been connected or disconnected. 30d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param status Status of the connect or disconnect operation. 31d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param newState Returns the new connection state. Can be one of 32d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * {@link BluetoothProfile#STATE_DISCONNECTED} or 33d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * {@link BluetoothProfile#STATE_CONNECTED} 34d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 35d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onConnectionStateChange(BluetoothDevice device, int status, 36d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski int newState) { 37d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 38d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 39d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 40d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Indicates whether a local service has been added successfully. 41d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 42d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param status Returns {@link BluetoothGatt#GATT_SUCCESS} if the service 43d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * was added successfully. 44d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param service The service that has been added 45d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 46d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onServiceAdded(int status, BluetoothGattService service) { 47d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 48d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 49d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 50d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * A remote client has requested to read a local characteristic. 51d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 52d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>An application must call {@link BluetoothGattServer#sendResponse} 53d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * to complete the request. 54d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 55d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that has requested the read operation 56d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param requestId The Id of the request 57d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param offset Offset into the value of the characteristic 58d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param characteristic Characteristic to be read 59d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 60d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onCharacteristicReadRequest(BluetoothDevice device, int requestId, 61d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski int offset, BluetoothGattCharacteristic characteristic) { 62d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 63d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 64d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 65d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * A remote client has requested to write to a local characteristic. 66d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 67d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>An application must call {@link BluetoothGattServer#sendResponse} 68d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * to complete the request. 69d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 70d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that has requested the write operation 71d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param requestId The Id of the request 72d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param characteristic Characteristic to be written to. 73d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param preparedWrite true, if this write operation should be queued for 74d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * later execution. 75d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param responseNeeded true, if the remote device requires a response 76d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param offset The offset given for the value 77d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param value The value the client wants to assign to the characteristic 78d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 79d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onCharacteristicWriteRequest(BluetoothDevice device, int requestId, 80d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski BluetoothGattCharacteristic characteristic, 81d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski boolean preparedWrite, boolean responseNeeded, 82d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski int offset, byte[] value) { 83d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 84d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 85d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 86d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * A remote client has requested to read a local descriptor. 87d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 88d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>An application must call {@link BluetoothGattServer#sendResponse} 89d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * to complete the request. 90d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 91d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that has requested the read operation 92d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param requestId The Id of the request 93d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param offset Offset into the value of the characteristic 94d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param descriptor Descriptor to be read 95d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 96d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onDescriptorReadRequest(BluetoothDevice device, int requestId, 97d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski int offset, BluetoothGattDescriptor descriptor) { 98d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 99d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 100d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 101d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * A remote client has requested to write to a local descriptor. 102d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 103d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>An application must call {@link BluetoothGattServer#sendResponse} 104d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * to complete the request. 105d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 106d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that has requested the write operation 107d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param requestId The Id of the request 108d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param descriptor Descriptor to be written to. 109d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param preparedWrite true, if this write operation should be queued for 110d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * later execution. 111d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param responseNeeded true, if the remote device requires a response 112d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param offset The offset given for the value 113d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param value The value the client wants to assign to the descriptor 114d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 115d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onDescriptorWriteRequest(BluetoothDevice device, int requestId, 116d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski BluetoothGattDescriptor descriptor, 117d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski boolean preparedWrite, boolean responseNeeded, 118d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski int offset, byte[] value) { 119d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 120d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 121d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 122d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Execute all pending write operations for this device. 123d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 124d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>An application must call {@link BluetoothGattServer#sendResponse} 125d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * to complete the request. 126d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 127d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that has requested the write operations 128d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param requestId The Id of the request 129d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param execute Whether the pending writes should be executed (true) or 130d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * cancelled (false) 131d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 132d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onExecuteWrite(BluetoothDevice device, int requestId, boolean execute) { 133d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 134d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 135d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 136d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Callback invoked when a notification or indication has been sent to 137d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * a remote device. 138d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 139d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>When multiple notifications are to be sent, an application must 140d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * wait for this callback to be received before sending additional 141d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * notifications. 142d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 143d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device the notification has been sent to 144d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param status {@link BluetoothGatt#GATT_SUCCESS} if the operation was successful 145d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 146d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onNotificationSent(BluetoothDevice device, int status) { 147d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 148d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 149d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 150d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Callback indicating the MTU for a given device connection has changed. 151d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 152d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * <p>This callback will be invoked if a remote client has requested to change 153d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * the MTU for a given connection. 154d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 155d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that requested the MTU change 156d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param mtu The new MTU size 157d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski */ 158d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski public void onMtuChanged(BluetoothDevice device, int mtu) { 159d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski } 160d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski 161d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski /** 162d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Callback triggered as result of {@link BluetoothGattServer#setPreferredPhy}, or as a result 163d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * of remote device changing the PHY. 164d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 165d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device 166d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param txPhy the transmitter PHY in use. One of {@link BluetoothDevice#PHY_LE_1M}, 167d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED} 168d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param rxPhy the receiver PHY in use. One of {@link BluetoothDevice#PHY_LE_1M}, 169d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED} 170e7c6e6ae1f44ecd4123d75ce5f52de74d7cf027aJakub Pawlowski * @param status Status of the PHY update operation. 171e7c6e6ae1f44ecd4123d75ce5f52de74d7cf027aJakub Pawlowski * {@link BluetoothGatt#GATT_SUCCESS} if the operation succeeds. 1729908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta */ 173409cee69b2b09bcd11f1273752c016116436f247Jakub Pawlowski public void onPhyUpdate(BluetoothDevice device, int txPhy, int rxPhy, int status) { 1749908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta } 1759908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta 1769908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta /** 177d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * Callback triggered as result of {@link BluetoothGattServer#readPhy} 178d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * 179d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param device The remote device that requested the PHY read 180d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param txPhy the transmitter PHY in use. One of {@link BluetoothDevice#PHY_LE_1M}, 181d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED} 182d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * @param rxPhy the receiver PHY in use. One of {@link BluetoothDevice#PHY_LE_1M}, 183d64bb883d822e1db445e09e77150ffd281e83cbeJakub Pawlowski * {@link BluetoothDevice#PHY_LE_2M}, and {@link BluetoothDevice#PHY_LE_CODED} 184e7c6e6ae1f44ecd4123d75ce5f52de74d7cf027aJakub Pawlowski * @param status Status of the PHY read operation. 185e7c6e6ae1f44ecd4123d75ce5f52de74d7cf027aJakub Pawlowski * {@link BluetoothGatt#GATT_SUCCESS} if the operation succeeds. 1869908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta */ 187409cee69b2b09bcd11f1273752c016116436f247Jakub Pawlowski public void onPhyRead(BluetoothDevice device, int txPhy, int rxPhy, int status) { 18816bf846990293e1f19f042eed8e2ce5e7348ac5aAndre Eisenbach } 189326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski 190326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski /** 191326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * Callback indicating the connection parameters were updated. 192326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * 193326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * @param device The remote device involved 194326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * @param interval Connection interval used on this connection, 1.25ms unit. Valid 195326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * range is from 6 (7.5ms) to 3200 (4000ms). 196326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * @param latency Slave latency for the connection in number of connection events. Valid 197326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * range is from 0 to 499 198326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * @param timeout Supervision timeout for this connection, in 10ms unit. Valid range is 199326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * from 10 (0.1s) to 3200 (32s) 200326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * @param status {@link BluetoothGatt#GATT_SUCCESS} if the connection has been updated 201326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * successfully 202326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski * @hide 203326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski */ 204326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski public void onConnectionUpdated(BluetoothDevice gatt, int interval, int latency, int timeout, 205326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski int status) { 206326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski } 207326f7b31b9ab7bf82e3c05f9b606d10ece306dc0Jakub Pawlowski 2089908112fd085d8b0d91e0562d32eebd1884f09a5Ganesh Ganapathi Batta} 209