Как программно отключить или удалить парное устройство Bluetooth на Android?
Проект должен использовать мой телефон Android для подключения к моим устройствам arduino. но как я могу устранить парные. Я вижу, что парный список хранится там, где bluetoothadapter может извлекаться в любое время.
PS:
1-й, я знаю, что долгое нажатие на сопряженное устройство будет его устранять.
но вопрос здесь в том, как я могу сделать это программно?
2nd, я проверил bluetoothdevice и bluetoothAdapter класс, нет никакой функции для реализации этого.
спасибо.
Ответы
Ответ 1
Этот код работает для меня.
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());
}
}
Ответ 2
отключить все устройства:
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());
}
}
}
Ответ 3
в классе BluetoothService существует метод removebond() для несанкционированных, сопряженных устройств. Наконец, этот метод вызывает rmovebondnative().
Ответ 4
Мой телефон подключен к двум Bluetooth-наушникам с профилем HEADSET. Как я могу отключить только одну из Bluetooth-наушников.
Ответ 5
Если вы используете Kotlin:
fun removeBond(device: BluetoothDevice) {
try {
device::class.java.getMethod("removeBond").invoke(device)
} catch (e: Exception) {
Log.e(TAG, "Removing bond has been failed. ${e.message}")
}
}
Ответ 6
Если вы хотите удалить пару Bluetooth-устройств, для этого в первую очередь вам необходимо отключить все устройство, а затем нажать кнопку "ОК", вы увидите, что все устройства удалены из списка.