android蓝牙配对 如何自动配对设置PIN码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android蓝牙配对 如何自动配对设置PIN码相关的知识,希望对你有一定的参考价值。

如题,在android程序里,如果让程序自动以0000的PIN码 自动尝试进行配对,而不用用户自己输入PIN码(当然也不会弹出那个输入对话框)

Android对于音频设备是自动输入0000的pin码的,参照$frameworks/base/core/java/android/server/BluetoothEventLoop.java 的onRequestPinCode()你若是在app里编写代码,可以在收到ACTION_PAIRING_REQUEST的时候,直接调用BluetoothDevice.setpin()reference $package/apps/Settings/src/android/settings/bluetooth/BluetoothPairingDialog.java 的onPair(); 参考技术A 解决自动配对的问题了,只不过又遇到了一个问题,自动配对后。没法直接连接蓝牙设备进行串口通信。得要重启手机后才行。郁闷 参考技术B 我也有这个需求,是否Android的API没有提供该功能啊?感觉可以用反射调用setPin(),以及屏蔽输入框。

Android 低功耗蓝牙 - 如何访问之前配对的设备?

【中文标题】Android 低功耗蓝牙 - 如何访问之前配对的设备?【英文标题】:Android Bluetooth Low Energy - How do I access previously paired device? 【发布时间】:2015-09-21 16:23:23 【问题描述】:

我正在开发一个通过低功耗蓝牙连接到设备的 Android 应用。

我的问题是我无法找到一种方法来连接我之前连接的设备。在手机的蓝牙设置中,蓝牙设备显示为“已配对”,所以我想从应用程序连接到它以与它“交谈”。

有人知道怎么做吗?

提前致谢!

【问题讨论】:

【参考方案1】:

您可以从 BluetoothAdapter 获取绑定设备列表:

Set<BluetoothDevice> devices = myBluetoothAdapter.getBondedDevices();

然后识别您感兴趣的设备并连接:

myBluetoothGatt = myBluetoothDevice.connectGatt(context, false, myGattCallback);

【讨论】:

以上是关于android蓝牙配对 如何自动配对设置PIN码的主要内容,如果未能解决你的问题,请参考以下文章

如何将不需要pin的蓝牙设备与android配对

在 Android 中手动配对蓝牙设备?

syu android蓝牙连接方法

蓝牙无线键盘如何连接电脑?

苹果5蓝牙耳机怎么用

Linux命令行如何接受没有pin的蓝牙设备配对