0

我正在开发蓝牙 4.0。

我想在标签(服务器)发送数据时接收数据。

发送数据时标签不保存数据。

我希望使用以下来源

private BluetoothGattServerCallback mGattServerCallbacks = new BluetoothGattServerCallback() {
    @Override
    public void onCharacteristicWriteRequest(BluetoothDevice device, int requestId,
            BluetoothGattCharacteristic characteristic, boolean preparedWrite, boolean responseNeeded, int offset,
            byte[] value) {
}

mGattServerCallbacks conntect mBluetoothManager.openGattServer(this, mGattServerCallbacks);
4

1 回答 1

0

您的问题有点含糊,但在我看来,您想要的是 GATT 服务器通知或指示 [1]。如果您连接到一个设备(此标签服务器)并且您希望在该设备有数据要发送时从该设备接收数据,那么您所做的就是指示(确认发送)或通知(未确认)此数据。

在您的 Android 应用程序中,您可以在连接的设备上启用给定特征的通知,并且每次更改该特征时,您都会收到推送给您的数据。

这通常用于温度服务。每当传感器上的测量温度发生变化时,都会向连接的设备发送带有新值的通知。

[1] http://developer.android.com/reference/android/bluetooth/BluetoothGatt.html#setCharacteristicNotification(android.bluetooth.BluetoothGattCharacteristic , boolean)

于 2013-11-11T18:57:52.967 回答