Как программно отключить или удалить сопряженное устройство Bluetooth на Android? - PullRequest
34 голосов
/ 07 марта 2012

Проект состоит в том, чтобы использовать мой телефон Android для связи с моими устройствами Arduino. но как я могу расстроить парных. Я вижу, что кажется, что парный список хранится там, где bluetoothadapter может получить его в любое время.

PS: Во-первых, я знаю, что долгое нажатие сопряженного устройства разорвет его.
но вопрос здесь в том, как я могу сделать это программно?

2-й, я проверил bluetoothdevice и класс bluetoothAdapter, функции для этого нет.

спасибо.

Ответы [ 4 ]

59 голосов
/ 22 июня 2012

Этот код работает для меня.

private void pairDevice(BluetoothDevice device) {
    try {
        if (D)
            Log.d(TAG, "Start Pairing...");

        waitingForBonding = true;

        Method m = device.getClass()
            .getMethod("createBond", (Class[]) null);
        m.invoke(device, (Object[]) null);

        if (D)
            Log.d(TAG, "Pairing finished.");
    } catch (Exception e) {
        Log.e(TAG, e.getMessage());
    }
}

private void unpairDevice(BluetoothDevice device) {
    try {
        Method m = device.getClass()
            .getMethod("removeBond", (Class[]) null);
        m.invoke(device, (Object[]) null);
    } catch (Exception e) {
        Log.e(TAG, e.getMessage());
    }
}
12 голосов
/ 03 сентября 2015

отключить все устройства:

Set<BluetoothDevice> pairedDevices = mBluetoothAdapter.getBondedDevices();
        if (pairedDevices.size() > 0) {
            for (BluetoothDevice device : pairedDevices) {
                try {
                    Method m = device.getClass()
                            .getMethod("removeBond", (Class[]) null);
                    m.invoke(device, (Object[]) null);
                } catch (Exception e) {
                    Log.e("Removing has been failed.", e.getMessage());
                }
            }
        }
1 голос
/ 15 апреля 2012

в классе BluetoothService есть метод removebond () для отключения сопряженных устройств.Наконец этот метод вызывает rmovebondnative ().

0 голосов
/ 21 июня 2012

Если вы хотите удалить устройство bluetooth для этой цели, в первую очередь вам необходимо отключить все устройства и, щелкнув по опции serch, вы найдете все устройства, удаленные из списка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...