我正在尝试为 Android 开发 BLE 蓝牙 (SMART) 应用程序。我正在使用Broadcom-ble API
我需要将警报从 Bluegiga 加密狗发送到 Android 手机。我从 bluegiga 发送警报值,例如 0、1、2。每当我发送警报时,都会在我的应用程序中调用以下回调:
@Override
public void onCharacteristicWrite(String address, BleCharacteristic charObj) {
Log.d(TAG, "onCharacteristicWrite(" + address + ", " + charObj + ")");
}
当我尝试从 charObj 获取警报值时,以下代码行给出了 nullpointer
byte alertLevel = charObj.getValue()[0];
我已经检查并确认,charObj 不为空。但是 charObj.getValue() 返回 null。
有人可以告诉我,尽管当我从 bluegiga 发送警报时正确调用了回调,但为什么我无法从我的应用程序中检索发送的值?
任何帮助表示赞赏。