java - 如何正确使用 UUID.fromString 方法?

标签 java android bluetooth-lowenergy android-ble rxandroidble

我正在尝试读/写这些 ble 特征:

enter image description here

现在,我正在尝试阅读 AA01*

我正在使用 this library去做吧。

这是我的代码:

private void connectToSensorTag(RxBleDevice rxBleDevice) {
    rxBleDevice.establishConnection(getApplicationContext(), false)
            .doOnError(new Action1<Throwable>() {
                @Override
                public void call(Throwable throwable) {
                    int i = 0;
                }
            })
            .flatMap(rxBleConnection -> rxBleConnection.readCharacteristic(UUID.fromString("AA01*")))
            .subscribe(new Subscriber<byte[]>() {
                @Override
                public void onCompleted() {
                    int i = 0;
                }

                @Override
                public void onError(Throwable e) {
                    int i = 0;
                }

                @Override
                public void onNext(byte[] bytes) {
                    int i = 0;
                }
            });

我收到此错误:

java.lang.IllegalArgumentException: Invalid UUID: AA01*

我还尝试了 this similar question 中的解决方案但没有任何效果。同样的错误。

最佳答案

在 BLE 规范中有两种 UUID。

  • 完全合格的 128 位长,通常分配给 BLE 设备的特定供应商以实现非标准功能: UUID.fromString("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx");

  • 也是完全限定(但由标准定义)具有相同前缀和后缀的 UUID:UUID.fromString("F000xxxx-0451-4000-B000-000000000000"); 其中 xxxx 是填写从 SensorTag 规范中获得的四个字符的位置。为方便起见,标准 UUID 通常使用四个字符标识符来引用。

此外,如果您使用的是 SensorTag 设备,您可以查看今年 MCE^3 session 上展示的库演示应用程序:

谈话:https://www.youtube.com/watch?v=0aKfUGCxUDM

演示应用程序库:https://github.com/dariuszseweryn/2016_MCE_Demo_RxAndroidBLE

希望对你有帮助。

最好的问候。

关于java - 如何正确使用 UUID.fromString 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38550124/

相关文章:

java - 如何覆盖单元测试中被测试类调用的方法

java - LDAP : How to retrieve user data from multiple AD groups in JAVA

java - 为什么我的客户端线程/监听器没有收到来自服务器的广播消息?

android - 当进程被终止时,AlarmManager 中的警报被删除

java - 当手机处于打瞌睡模式时扫描蓝牙 LE 设备不起作用。打瞌睡模式时不会调用 CallBack 方法

Java 错误 : org. apache.jasper.JasperException:无法编译 JSP 类:

android - 如何为应用程序使用设备默认主题?

c# - Windows UWP 在发现后连接到 BLE 设备

ios - 为什么第二部手机与设备配对后,CBCentralManager 会向第一部手机报告 "Peer removed pairing information"?

java - 在 eclipse java 中组织导入