检查蓝牙配对

时间:2016-07-14 08:59:37

标签: android android-bluetooth

我正在尝试查看除了Bluetooth之外是否与任何设备配对。 要查看Bluetooth是否已启用,请使用以下内容:

BluetoothAdapter.getDefaultAdapter().isEnabled()

我需要知道BluetoothAdapter是否与任何设备配对。

谢谢,我希望你的回答

修改

如果我使用:

BluetoothAdapter.getDefaultAdapter().getBondedDevices();

and size()> 0,这是否意味着配对?或者已经存储了设备?

修改

对不起,但我需要的是不要获取配对设备的列表,但是如果某些设备已经在某些时候已配对连接到我的智能手机

2 个答案:

答案 0 :(得分:1)

您可以使用以下方法查询配对设备:

Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
// If there are paired devices
if (pairedDevices.size() > 0) {
    // Loop through paired devices
    for (BluetoothDevice device : pairedDevices) {
        // Add the name and address to an array adapter to show in a ListView
        mArrayAdapter.add(device.getName() + "\n" + device.getAddress());
    }
}
  

在执行设备发现之前,值得查询配对设备集以查看是否已知所需设备。为此,请调用getBondedDevices()。这将返回一组代表配对设备的BluetoothDevices。例如,您可以使用ArrayAdapter查询所有配对设备,然后向用户显示每个设备的名称。

正如官方文档描述here和简单蓝牙聊天应用here的好样本。

答案 1 :(得分:1)

获取已配对的设备列表使用此:

Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        if (pairedDevices == null || pairedDevices.size() == 0) {
             Toast.makeText(getApplicationContext(),"No Paired Devices Found",Toast.LENGTH_SHORT).show();
        } else {
            ArrayList<BluetoothDevice> list = new ArrayList<BluetoothDevice>();
            list.addAll(pairedDevices);           
        }