Android蓝牙低功耗 - 无法通过字节操作从BluetoothGattCharacteristic正确获取数据

时间:2016-03-06 09:07:52

标签: android bluetooth android-bluetooth bluetooth-lowenergy

Hy大家, 我正在使用蓝牙低功耗(BLE)开发Android应用程序。我已经连接到我的设备了,而且还有一个特点。我正确收到了我的通知和数据。然后我想从这个BluetoothGattCharacteristic获得不同的信息。

这是我的问题:在我的BluetoothGattCharacteristic中,我想收到两个信息,所以我使用字节掩码来获取这些数据。数据存储在unsignedInt32中。

以下是我获取所需数据的代码,其中特征是BluetoothGattCharacteristic值:

int value_one = (characteristic.getIntValue(BluetoothGattCharacteristic.FORMAT_UINT32, 0) & 0x03FFFFFF);

int value_two = ((characteristic.getIntValue(BluetoothGattCharacteristic.FORMAT_UINT32, 0) & 0xFC000000)>>26); 

为了给你一些细节,我收到了正确的value_one,但是关于value_two,我会显示我的数据直到达到31,然后我开始得到负面数据。 像这样0,1,2,3 ... 30,31, -32,-31,-30,-29 ... etc

我陷入了这个问题。如果你可以帮助我,那将是惊人的!

感谢您的时间和帮助。

0 个答案:

没有答案