1
0
mirror of https://github.com/oliexdev/openScale.git synced 2025-09-02 21:02:48 +02:00

try to fix the problem if the broadcast receiver is not probably unregistered.

This commit is contained in:
OliE
2018-02-25 16:29:04 +01:00
parent 2982543669
commit e1d74bf94f

View File

@@ -420,9 +420,19 @@ public abstract class BluetoothCommunication {
filter.addAction(BluetoothDevice.ACTION_FOUND); filter.addAction(BluetoothDevice.ACTION_FOUND);
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED); filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
context.registerReceiver(mReceiver, filter); if (isReceiverRegistered == false) {
isReceiverRegistered = true; context.registerReceiver(mReceiver, filter);
btAdapter.startDiscovery(); isReceiverRegistered = true;
btAdapter.startDiscovery();
} else {
try {
context.unregisterReceiver(mReceiver);
isReceiverRegistered = false;
} catch (Exception e) {
isReceiverRegistered = false;
}
startSearching(deviceName);
}
} }
private final BroadcastReceiver mReceiver = new BroadcastReceiver() { private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@@ -463,8 +473,12 @@ public abstract class BluetoothCommunication {
} }
if (isReceiverRegistered == true) { if (isReceiverRegistered == true) {
context.unregisterReceiver(mReceiver); try {
isReceiverRegistered = false; context.unregisterReceiver(mReceiver);
isReceiverRegistered = false;
} catch (Exception e) {
isReceiverRegistered = false;
}
} }
searchHandler.removeCallbacksAndMessages(null); searchHandler.removeCallbacksAndMessages(null);