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(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
context.registerReceiver(mReceiver, filter);
isReceiverRegistered = true;
btAdapter.startDiscovery();
if (isReceiverRegistered == false) {
context.registerReceiver(mReceiver, filter);
isReceiverRegistered = true;
btAdapter.startDiscovery();
} else {
try {
context.unregisterReceiver(mReceiver);
isReceiverRegistered = false;
} catch (Exception e) {
isReceiverRegistered = false;
}
startSearching(deviceName);
}
}
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@@ -463,8 +473,12 @@ public abstract class BluetoothCommunication {
}
if (isReceiverRegistered == true) {
context.unregisterReceiver(mReceiver);
isReceiverRegistered = false;
try {
context.unregisterReceiver(mReceiver);
isReceiverRegistered = false;
} catch (Exception e) {
isReceiverRegistered = false;
}
}
searchHandler.removeCallbacksAndMessages(null);