我正在使用 Web 蓝牙 API 写入 PCB 板的特性。我能够在 Windows 笔记本电脑上通过 Chrome 成功写入特征。
如果我在 Android 10 上通过 Chrome 尝试相同的代码,我会收到 DOM 异常:GATT 错误未知。
我正在写入一个长度为 493 的 Uint8Array。我尝试写入整个数据,并且还以 10 个块为单位写入。在这两种情况下,我都在移动设备中遇到错误。
有人可以帮忙吗?
我使用的是 Chrome 浏览器版本 91。
更新: 添加了代码片段。我正在调用 Python API 来获取要写入特征的数据并将数据转换为 Uint8Array。我试图通过移动设备写入整个数据,但它不起作用。找到 this link 表示以块的形式写入数据。所以我也试过了。还是一样的错误。
更新 2:我尝试了 class Rating(db.Model):
__tablename__ = "songs_ratings"
id = db.Column(db.Integer, db.ForeignKey("songs.id"), primary_key=True) # <- added FK
rating = db.Column(db.Numeric(precision=3, scale=2), index=True, nullable=False)
song = db.relationship("Song", back_populates="rating")
和 writeValue
方法。我收到 GATT 服务器断开连接错误。我尝试了 this 链接来尝试修复相同的问题。但它仍然存在。我附上了相同的屏幕截图。
更新 3:
我尝试添加一个事件侦听器。我在笔记本电脑和移动设备上尝试了相同的代码。它在笔记本电脑上成功运行并在移动设备上出错。我附上了笔记本电脑和手机的屏幕截图。
答案 0 :(得分:0)
要获得帮助,您可能需要将问题简化为简单的代码 您可以共享的示例。理想情况下,这些可以与其他人也可以测试的常见设备配合使用。
https://www.chromium.org/developers/how-tos/file-web-bluetooth-bugs 包含有关如何捕获日志和使用其他设备进行测试的提示。