2013-10-31 75 views
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); 

回答

0

你的问题是有点模糊,但它听起来像你对我要的是GATT服务器通知或指示[1]。如果你连接到一个设备(这个标签服务器)并且你想从这个设备接收数据时有数据要发送,那么你要做的是指示(确认发送)或通知(未确认)这个数据。

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

这通常会用于温度服务。只要传感器上的测量温度发生变化,通知就会以新值发送到连接的设备。

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