我们如何实现Android的数值比较?
我做了大量的研究,我知道我需要设置IOCapability为KeyboardDisplay。
如果其他BLE设备自身的IOCapability使其匹配数值比较的矩阵结果,则其将与数值比较配对。
但是我在网上找不到任何示例代码。
我们应该以某种方式使用蓝牙配置管理器来正确设置IO功能?
即使用setIoCapability(整数功能)和IO_CAPABILITY_KBDISP
参见此处:https://developer.android.com/reference/com/google/android/things/bluetooth/BluetoothConfigManager
谢谢。
2条答案
按热度按时间pw136qt21#
你是对的,通常两个设备的IO能力决定了配对弹出是否应该出现,然而,Android的情况并非如此。在Android上,这通常是由设备硬件处理的,所以不幸的是,没有办法保证你可以让配对对话框弹出。然而,有黑客,你可以使用,曾为其他人在过去工作.看看下面的链接:-
y4ekin9u2#
Android中的配对由系统处理。系统设置IO能力。对于普通智能手机,您通常同时拥有显示器和键盘,因此将使用它们。任何最新的Android版本还支持LE安全连接(LESC),其中引入了数字比较。
正如您所说,只要远程设备具有显示器和是/否输入作为IO能力,并且支持LESC,就会使用数值比较。
如果不是这种情况,请检查hci日志或使用空气嗅探器检查配对请求和配对响应消息,以查看每个设备声明的功能。