BluetoothGattServerCallback
abstract class BluetoothGattServerCallback
| kotlin.Any | |
| ↳ | android.bluetooth.BluetoothGattServerCallback | 
This abstract class is used to implement BluetoothGattServer callbacks.
Summary
| Public constructors | |
|---|---|
| Public methods | |
|---|---|
| open Unit | onCharacteristicReadRequest(device: BluetoothDevice!, requestId: Int, offset: Int, characteristic: BluetoothGattCharacteristic!)A remote client has requested to read a local characteristic. | 
| open Unit | onCharacteristicWriteRequest(device: BluetoothDevice!, requestId: Int, characteristic: BluetoothGattCharacteristic!, preparedWrite: Boolean, responseNeeded: Boolean, offset: Int, value: ByteArray!)A remote client has requested to write to a local characteristic. | 
| open Unit | onConnectionStateChange(device: BluetoothDevice!, status: Int, newState: Int)Callback indicating when a remote device has been connected or disconnected. | 
| open Unit | onDescriptorReadRequest(device: BluetoothDevice!, requestId: Int, offset: Int, descriptor: BluetoothGattDescriptor!)A remote client has requested to read a local descriptor. | 
| open Unit | onDescriptorWriteRequest(device: BluetoothDevice!, requestId: Int, descriptor: BluetoothGattDescriptor!, preparedWrite: Boolean, responseNeeded: Boolean, offset: Int, value: ByteArray!)A remote client has requested to write to a local descriptor. | 
| open Unit | onExecuteWrite(device: BluetoothDevice!, requestId: Int, execute: Boolean)Execute all pending write operations for this device. | 
| open Unit | onMtuChanged(device: BluetoothDevice!, mtu: Int)Callback indicating the MTU for a given device connection has changed. | 
| open Unit | onNotificationSent(device: BluetoothDevice!, status: Int)Callback invoked when a notification or indication has been sent to a remote device. | 
| open Unit | onPhyRead(device: BluetoothDevice!, txPhy: Int, rxPhy: Int, status: Int)Callback triggered as result of  | 
| open Unit | onPhyUpdate(device: BluetoothDevice!, txPhy: Int, rxPhy: Int, status: Int)Callback triggered as result of  | 
| open Unit | onServiceAdded(status: Int, service: BluetoothGattService!)Indicates whether a local service has been added successfully. | 
| open Unit | onSubrateChange(device: BluetoothDevice, subrateMode: Int, status: Int)Callback indicating LE connection's subrate parameters have changed. | 
Public constructors
Public methods
onCharacteristicReadRequest
open fun onCharacteristicReadRequest(
device: BluetoothDevice!,
requestId: Int,
offset: Int,
characteristic: BluetoothGattCharacteristic!
): Unit
A remote client has requested to read a local characteristic.
An application must call BluetoothGattServer.sendResponse to complete the request.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that has requested the read operation | 
| requestId | Int: The Id of the request | 
| offset | Int: Offset into the value of the characteristic | 
| characteristic | BluetoothGattCharacteristic!: Characteristic to be read | 
onCharacteristicWriteRequest
open fun onCharacteristicWriteRequest(
device: BluetoothDevice!,
requestId: Int,
characteristic: BluetoothGattCharacteristic!,
preparedWrite: Boolean,
responseNeeded: Boolean,
offset: Int,
value: ByteArray!
): Unit
A remote client has requested to write to a local characteristic.
An application must call BluetoothGattServer.sendResponse to complete the request.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that has requested the write operation | 
| requestId | Int: The Id of the request | 
| characteristic | BluetoothGattCharacteristic!: Characteristic to be written to. | 
| preparedWrite | Boolean: true, if this write operation should be queued for later execution. | 
| responseNeeded | Boolean: true, if the remote device requires a response | 
| offset | Int: The offset given for the value | 
| value | ByteArray!: The value the client wants to assign to the characteristic | 
onConnectionStateChange
open fun onConnectionStateChange(
device: BluetoothDevice!,
status: Int,
newState: Int
): Unit
Callback indicating when a remote device has been connected or disconnected.
| Parameters | |
|---|---|
| device | BluetoothDevice!: Remote device that has been connected or disconnected. | 
| status | Int: Status of the connect or disconnect operation. | 
| newState | Int: Returns the new connection state. Can be one of android.bluetooth.BluetoothProfile#STATE_DISCONNECTEDorBluetoothProfile.STATE_CONNECTED | 
onDescriptorReadRequest
open fun onDescriptorReadRequest(
device: BluetoothDevice!,
requestId: Int,
offset: Int,
descriptor: BluetoothGattDescriptor!
): Unit
A remote client has requested to read a local descriptor.
An application must call BluetoothGattServer.sendResponse to complete the request.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that has requested the read operation | 
| requestId | Int: The Id of the request | 
| offset | Int: Offset into the value of the characteristic | 
| descriptor | BluetoothGattDescriptor!: Descriptor to be read | 
onDescriptorWriteRequest
open fun onDescriptorWriteRequest(
device: BluetoothDevice!,
requestId: Int,
descriptor: BluetoothGattDescriptor!,
preparedWrite: Boolean,
responseNeeded: Boolean,
offset: Int,
value: ByteArray!
): Unit
A remote client has requested to write to a local descriptor.
An application must call BluetoothGattServer.sendResponse to complete the request.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that has requested the write operation | 
| requestId | Int: The Id of the request | 
| descriptor | BluetoothGattDescriptor!: Descriptor to be written to. | 
| preparedWrite | Boolean: true, if this write operation should be queued for later execution. | 
| responseNeeded | Boolean: true, if the remote device requires a response | 
| offset | Int: The offset given for the value | 
| value | ByteArray!: The value the client wants to assign to the descriptor | 
onExecuteWrite
open fun onExecuteWrite(
device: BluetoothDevice!,
requestId: Int,
execute: Boolean
): Unit
Execute all pending write operations for this device.
An application must call BluetoothGattServer.sendResponse to complete the request.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that has requested the write operations | 
| requestId | Int: The Id of the request | 
| execute | Boolean: Whether the pending writes should be executed (true) or cancelled (false) | 
onMtuChanged
open fun onMtuChanged(
device: BluetoothDevice!,
mtu: Int
): Unit
Callback indicating the MTU for a given device connection has changed.
This callback will be invoked if a remote client has requested to change the MTU for a given connection.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that requested the MTU change | 
| mtu | Int: The new MTU size | 
onNotificationSent
open fun onNotificationSent(
device: BluetoothDevice!,
status: Int
): Unit
Callback invoked when a notification or indication has been sent to a remote device.
When multiple notifications are to be sent, an application must wait for this callback to be received before sending additional notifications.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device the notification has been sent to | 
| status | Int: BluetoothGatt.GATT_SUCCESSif the operation was successful | 
onPhyRead
open fun onPhyRead(
device: BluetoothDevice!,
txPhy: Int,
rxPhy: Int,
status: Int
): Unit
Callback triggered as result of BluetoothGattServer.readPhy
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device that requested the PHY read | 
| txPhy | Int: the transmitter PHY in use. One of BluetoothDevice.PHY_LE_1M,android.bluetooth.BluetoothDevice#PHY_LE_2M, andBluetoothDevice.PHY_LE_CODED | 
| rxPhy | Int: the receiver PHY in use. One of BluetoothDevice.PHY_LE_1M,android.bluetooth.BluetoothDevice#PHY_LE_2M, andBluetoothDevice.PHY_LE_CODED | 
| status | Int: Status of the PHY read operation. BluetoothGatt.GATT_SUCCESSif the operation succeeds. | 
onPhyUpdate
open fun onPhyUpdate(
device: BluetoothDevice!,
txPhy: Int,
rxPhy: Int,
status: Int
): Unit
Callback triggered as result of BluetoothGattServer.setPreferredPhy, or as a result of remote device changing the PHY.
| Parameters | |
|---|---|
| device | BluetoothDevice!: The remote device | 
| txPhy | Int: the transmitter PHY in use. One of BluetoothDevice.PHY_LE_1M,android.bluetooth.BluetoothDevice#PHY_LE_2M, andBluetoothDevice.PHY_LE_CODED | 
| rxPhy | Int: the receiver PHY in use. One of BluetoothDevice.PHY_LE_1M,android.bluetooth.BluetoothDevice#PHY_LE_2M, andBluetoothDevice.PHY_LE_CODED | 
| status | Int: Status of the PHY update operation. BluetoothGatt.GATT_SUCCESSif the operation succeeds. | 
onServiceAdded
open fun onServiceAdded(
status: Int,
service: BluetoothGattService!
): Unit
Indicates whether a local service has been added successfully.
| Parameters | |
|---|---|
| status | Int: Returns BluetoothGatt.GATT_SUCCESSif the service was added successfully. | 
| service | BluetoothGattService!: The service that has been added | 
onSubrateChange
open fun onSubrateChange(
device: BluetoothDevice,
subrateMode: Int,
status: Int
): Unit
Callback indicating LE connection's subrate parameters have changed.
| Parameters | |
|---|---|
| device | BluetoothDevice: The remote device involved This value cannot be null. | 
| subrateMode | Int: for this LE connection. Value is android.bluetooth.BluetoothGatt#SUBRATE_MODE_OFF,android.bluetooth.BluetoothGatt#SUBRATE_MODE_LOW,android.bluetooth.BluetoothGatt#SUBRATE_MODE_BALANCED,android.bluetooth.BluetoothGatt#SUBRATE_MODE_HIGH,android.bluetooth.BluetoothGatt#SUBRATE_MODE_SYSTEM_UPDATE, orandroid.bluetooth.BluetoothGatt#SUBRATE_MODE_NOT_UPDATED | 
| status | Int: BluetoothGatt.GATT_SUCCESSif the connection subrating has been updated successfully Value isandroid.bluetooth.BluetoothStatusCodes#SUCCESS, android.bluetooth.BluetoothStatusCodes.REASON_SYSTEM_POLICY,android.bluetooth.BluetoothStatusCodes#ERROR_UNKNOWN, android.bluetooth.BluetoothStatusCodes.ERROR_HARDWARE_GENERIC, android.bluetooth.BluetoothStatusCodes.NOT_ALLOWED, android.bluetooth.BluetoothStatusCodes.ERROR_REMOTE_OPERATION_NOT_SUPPORTED, android.bluetooth.BluetoothStatusCodes.ERROR_LOCAL_NOT_ENOUGH_RESOURCES, or android.bluetooth.BluetoothStatusCodes.ERROR_BAD_PARAMETERS | 
