在没有 GUI 和 HAL 的 android 系统上解决配对 pin 交换
Posted
技术标签:
【中文标题】在没有 GUI 和 HAL 的 android 系统上解决配对 pin 交换【英文标题】:Getting around pairing pin exchange on an android system without GUI and HAL 【发布时间】:2021-02-26 07:38:41 【问题描述】:在 android 系统上没有蓝牙 hal 并且只有
hciconfig, hcitool, sdptool and rfcomm
我想配对主机和设备(主机:华硕BT400加密狗)。
我在安卓系统上做
hciconfig hci0 up
hciconfig hci0 sspmode 1
sdptool add SP
rfcomm ...
在我开始的主机上bluetoothctl
然后做
power on
agent on
default-agent
scan on
pair <bd-addr>
但是现在我被要求输入 PIN。
目标 Andoid 没有蓝牙 hal 和 GUI,没有 pin diablog。我仍然想找回别针 为这个系统,以便我可以从主机配对。
我可以通过命令行检索 PIN 吗?
如果有人知道,我可以重新编译 Android 内核并 printk() pin 出现在什么地方?
我不能使用除了可用的hciconfig, hcitool, sdptool and rfcomm
之外的任何其他 bluez 工具,但是如果有一些 ioctl() 或套接字要连接到
看针出现我也许可以写我自己的c-sn-p?在哪里可以找到此类 util 的模板?
最简单的方法是什么?
【问题讨论】:
【参考方案1】:我还在目标上编译了btmgmt
。随着btmgmt
在目标和主机上运行,我可以从控制台开始配对周期并在控制台中输入 PIN。
查看btmgmt
的源代码,似乎可以通过观察 MGMT_OP_PIN_CODE_REPLY 事件并发送 MGMT_EV_PIN_CODE_REQUEST 来自动化配对来自动化配对。
【讨论】:
以上是关于在没有 GUI 和 HAL 的 android 系统上解决配对 pin 交换的主要内容,如果未能解决你的问题,请参考以下文章