Callback
abstract class Callback
kotlin.Any | |
↳ | android.bluetooth.BluetoothHidDevice.Callback |
The template class that applications use to call callback functions on events from the HID host. Callback functions are wrapped in this class and registered to the Android system during app registration.
Summary
Public constructors | |
---|---|
Callback() |
Public methods | |
---|---|
open Unit |
onAppStatusChanged(pluggedDevice: BluetoothDevice!, registered: Boolean) Callback called when application registration state changes. |
open Unit |
onConnectionStateChanged(device: BluetoothDevice!, state: Int) Callback called when connection state with remote host was changed. |
open Unit |
onGetReport(device: BluetoothDevice!, type: Byte, id: Byte, bufferSize: Int) Callback called when GET_REPORT is received from remote host. |
open Unit |
onInterruptData(device: BluetoothDevice!, reportId: Byte, data: ByteArray!) Callback called when report data is received over interrupt channel. |
open Unit |
onSetProtocol(device: BluetoothDevice!, protocol: Byte) Callback called when SET_PROTOCOL is received from remote host. |
open Unit |
onSetReport(device: BluetoothDevice!, type: Byte, id: Byte, data: ByteArray!) Callback called when SET_REPORT is received from remote host. |
open Unit |
onVirtualCableUnplug(device: BluetoothDevice!) Callback called when Virtual Cable is removed. |
Public constructors
Public methods
onAppStatusChanged
open fun onAppStatusChanged(
pluggedDevice: BluetoothDevice!,
registered: Boolean
): Unit
Callback called when application registration state changes. Usually it's called due to either Executor, Callback)
or BluetoothHidDevice#unregisterApp()
, but can be also unsolicited in case e.g. Bluetooth was turned off in which case application is unregistered automatically.
Parameters | |
---|---|
pluggedDevice |
BluetoothDevice!: BluetoothDevice object which represents host that currently has Virtual Cable established with device. Only valid when application is registered, can be null . |
registered |
Boolean: true if application is registered, false otherwise. |
onConnectionStateChanged
open fun onConnectionStateChanged(
device: BluetoothDevice!,
state: Int
): Unit
Callback called when connection state with remote host was changed. Application can assume than Virtual Cable is established when called with android.bluetooth.BluetoothProfile#STATE_CONNECTED
state
.
Parameters | |
---|---|
device |
BluetoothDevice!: BluetoothDevice object representing host device which connection state was changed. |
state |
Int: Connection state as defined in BluetoothProfile . |
onGetReport
open fun onGetReport(
device: BluetoothDevice!,
type: Byte,
id: Byte,
bufferSize: Int
): Unit
Callback called when GET_REPORT is received from remote host. Should be replied by application using BluetoothHidDevice#replyReport(BluetoothDevice, byte, byte,
.
Parameters | |
---|---|
type |
Byte: Requested Report Type. |
id |
Byte: Requested Report Id, can be 0 if no Report Id are defined in descriptor. |
bufferSize |
Int: Requested buffer size, application shall respond with at least given number of bytes. |
onInterruptData
open fun onInterruptData(
device: BluetoothDevice!,
reportId: Byte,
data: ByteArray!
): Unit
Callback called when report data is received over interrupt channel. Report Type is assumed to be BluetoothHidDevice#REPORT_TYPE_OUTPUT
.
Parameters | |
---|---|
reportId |
Byte: Report Id. |
data |
ByteArray!: Report data. |
onSetProtocol
open fun onSetProtocol(
device: BluetoothDevice!,
protocol: Byte
): Unit
Callback called when SET_PROTOCOL is received from remote host. Application shall use this information to send only reports valid for given protocol mode. By default, android.bluetooth.BluetoothHidDevice#PROTOCOL_REPORT_MODE
shall be assumed.
Parameters | |
---|---|
protocol |
Byte: Protocol Mode. |
onSetReport
open fun onSetReport(
device: BluetoothDevice!,
type: Byte,
id: Byte,
data: ByteArray!
): Unit
Callback called when SET_REPORT is received from remote host. In case received data are invalid, application shall respond with android.bluetooth.BluetoothHidDevice#reportError(android.bluetooth.BluetoothDevice,byte)
.
Parameters | |
---|---|
type |
Byte: Report Type. |
id |
Byte: Report Id. |
data |
ByteArray!: Report data. |
onVirtualCableUnplug
open fun onVirtualCableUnplug(device: BluetoothDevice!): Unit
Callback called when Virtual Cable is removed. After this callback is received connection will be disconnected automatically.