android 自动配对具有特定名称的蓝牙设备

android automaticly pair bluetooth device with specific name

我正在寻找一种方法来扫描具有特定名称的所有蓝牙设备(比方说 "SC_0001"、"SC_0002"、e.t.c。)并自动将它们与我的 phone.

我已经创建了一个可以列出所有配对设备并让用户 select 一个的应用程序。但我不希望用户必须手动配对所有这些设备(这会花费太多时间)。

您可以使用蓝牙设备的getname()方法class
根据 getname()

的文档

Get the friendly Bluetooth name of the remote device.

The local adapter will automatically retrieve remote names when performing a device scan, and will cache them. This method just returns the name for this device from the cache.

然后,使用str1.equals(str2)方法比较两个字符串。
编辑 1
这是方法,您可以获取未配对设备的列表。

                         public void onReceive(Context context, Intent intent) {
                         String action = intent.getAction();

                         // When discovery finds a device
                         if (BluetoothDevice.ACTION_FOUND.equals(action)) {
                             // Get the BluetoothDevice object from the Intent
                             BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
                             // If it's already paired, skip it, because it's been listed already
                             if (device.getBondState() != BluetoothDevice.BOND_BONDED) 
                             {
                                // compare device.getName() and your string here, if satisfied, add them to the list-view.
                                 tv.setText(device.getName() + "\n" + device.getAddress());

这里是 link 文档。 BluetoothDevices