Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java BLE/Bluetooth智能库_Java_Bluetooth_Bluetooth Lowenergy_Desktop - Fatal编程技术网

Java BLE/Bluetooth智能库

Java BLE/Bluetooth智能库,java,bluetooth,bluetooth-lowenergy,desktop,Java,Bluetooth,Bluetooth Lowenergy,Desktop,我正在尝试编写一个桌面应用程序,用于连接蓝牙智能/BLE设备,例如Polar心脏监护仪 有没有一种公认的方法可以做到这一点,Java API还是库 这是针对桌面应用程序而不是android。我在网上看到的一切都过时了,特别是android。我宁愿尽量避免编写一些特定于平台的JNI恶作剧 谢谢。我在一个桌面应用程序(基于Linux)中使用了Java。它有自己的特点,但我不必直接处理。在Java中,有很多方法可以读取USB/串行端口,但我发现这是一种可移植且简单的方法 不过要提醒一下,这是低水平的。

我正在尝试编写一个桌面应用程序,用于连接蓝牙智能/BLE设备,例如Polar心脏监护仪

有没有一种公认的方法可以做到这一点,Java API还是库

这是针对桌面应用程序而不是android。我在网上看到的一切都过时了,特别是android。我宁愿尽量避免编写一些特定于平台的JNI恶作剧

谢谢。

我在一个桌面应用程序(基于Linux)中使用了Java。它有自己的特点,但我不必直接处理。在Java中,有很多方法可以读取USB/串行端口,但我发现这是一种可移植且简单的方法


不过要提醒一下,这是低水平的。我当时正在处理一个脉冲血氧计,它刚刚丢弃了二进制数据,所以还不算太糟。如果你开始进入关贸总协定等等,这将是一个相当大的工作量来处理。

如果你计划使用基于linux的系统,你可以使用bluez5

Bluez5在DBus中公开接口,因此可以使用您选择的DBus绑定(C、python、C#Mono..)与bluez进行交互。使用DBUSAPI,您将能够进行扫描、连接、配对、通知、读/写、播发等操作

您可以在这里找到bluez公开的dbus api的描述(我建议查看适配器api、设备api和gatt api):

在深入研究代码之前,您可以使用bluetoothctl(一种可用于配对、连接、服务发现、gatt属性读取和写入等的工具)。 此外,您可以在此处找到bluetoothctl的源代码:

bluetoothctl是使用GLib GDBus(C中GLib的dbus绑定)构建的,您可以找到几乎所有您想用bluez做的事情的代码示例