当前位置: 首页 > 知识库问答 >
问题:

使用自定义GATT服务的Web蓝牙?

索寒
2023-03-14

首先,BLE外设模拟器的源代码对于任何研究Web蓝牙的人来说都是一个巨大的资源。

有一份经批准的关贸总协定服务清单。

当我修改Android源代码以使用自定义的GATT服务(只需在Android代码中指定自己的UUID即可轻松完成)时,从网页到运行GATT服务器的Android应用程序的配对失败。

Web蓝牙留档确实声明,“如果设备通告的服务UUID与服务UUID集有非空交集,请添加设备以产生结果并中止这些子步骤[以进行配对]。”

这是否表示只支持获批准的GATT列表中的服务?如果是,理性是什么?这种限制似乎会限制创新。

共有2个答案

暴向笛
2023-03-14

我也在使用web bluetooth,我能够与自定义服务进行通信,但要从中读取数据,必须有设备文档来解释如何与这些服务进行通信。我认为这个被批准的列表就像是一般使用的列表,它不需要唯一的逻辑来获取数据。然而,两者之间存在差异,因为web bluetooth的一些特性被列入黑名单,但仍然可以使用ios/android工具获取数据。

林弘文
2023-03-14

如果我对堆栈溢出做了更多的研究,我就会意识到UUID规范需要小写的a-f。UUID生成的字符类型

以下值适用于自定义的服务和特性:

私有静态最终UUIDSERVICE_UUID=UUID. fromString("29143321-ef6c-4761-947c-c858f9a2e8f1");

专用静态最终UUID CHARACTERISTIC\u UUID=UUID。来自字符串(“92f3131b-ffa8-4dd1-a12b-641d65a78857”);

 类似资料:
  • 我正在考虑为一个定制应用程序实现一些GATT服务,但我现在正忙于研究。我知道服务UUID不是随机的,有些部分定义得很好,有些部分仍然让我困惑。 E、 g.设备信息服务的广告名称似乎是0000180a xxx,我可以在中找到“180a”https://www.bluetooth.com/specifications/gatt/services/,但子字段“型号字符串”的id为00002a24 xxx

  • 从蓝牙android API获取android辅助蓝牙gatt服务。 下面是我们获取ble服务的代码: 甚至尝试以独占方式获取辅助服务,但它返回空对象: 有人可以指出任何指针如何在Android中搜索辅助服务。

  • 我正在尝试构建一个使用蓝牙的android应用程序。在教程中,他们使用128位UUID,但我只有16位UUID。我必须使用服务UUID和蓝牙基础创建一个新的128位UUID。 例子: 警报通知服务UUID(16bit)= 通过组合这两个UUID,我们收到。。。 警报通知服务UUID(128bit)= 有没有合适的方法?

  • Appium 的 iOS 版本的后端用的是Facebook's WebDriverAgent。该后端是基于苹果公司的 XCTest 框架,所以也有所有XCTest 框架已知的问题。其中有些问题我们正在设法解决,有一些在现阶段可能无法解决。本文中描述的方法已经能够使您完全掌握在设备上如何构建、管理和运行WDA。通过这种方式,您可以在CI环境中对您的自动化测试进行微调,并使其在长期运行的情况下更加稳定

  • 运行后,Android部分返回connection be success(BluetoothGattCallback::onConnectionStateChange的参数为STATE_CONNECTED),但是linux中的程序(btgatt-server)没有得到任何响应,仍然阻止等待接受。(第485行)。 我还使用了另一个示例代码:l2cap-ble.c,结果完全相同。 有人能帮我吗?我的目

  • 问题内容: 我试图在Linux机器上使用GATT来设置具有许多特征的自定义服务。 使用[这个问题及其链接的问题,我能够识别出我需要编写的代码(利用该函数)。 我创建了一个单独的文件gatt_service.c,并编写了我认为需要的代码。但是,我无法解决如何将我的代码链接到Bluez库以编译和运行我的解决方案。例如,此站点(并非用于BLE开发)使用gcc参数链接到libbluetooth ,而我无法