1
0
mirror of https://github.com/oliexdev/openScale.git synced 2025-08-23 08:43:15 +02:00

check if receiver is registered before unregister it.

This commit is contained in:
oliexdev
2018-02-01 20:17:22 +01:00
parent ed53b1d544
commit 70f263c08b

View File

@@ -52,6 +52,7 @@ public class BluetoothPreferences extends PreferenceFragment implements SharedPr
private CheckBoxPreference smartAssignEnable; private CheckBoxPreference smartAssignEnable;
private CheckBoxPreference ignoreOutOfRangeEnable; private CheckBoxPreference ignoreOutOfRangeEnable;
private PreferenceScreen btScanner; private PreferenceScreen btScanner;
public boolean isReceiverRegistered;
private BluetoothAdapter btAdapter = null; private BluetoothAdapter btAdapter = null;
@@ -67,6 +68,7 @@ public class BluetoothPreferences extends PreferenceFragment implements SharedPr
filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED); filter.addAction(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
getActivity().registerReceiver(mReceiver, filter); getActivity().registerReceiver(mReceiver, filter);
isReceiverRegistered = true;
btAdapter.startDiscovery(); btAdapter.startDiscovery();
} }
@@ -119,7 +121,9 @@ public class BluetoothPreferences extends PreferenceFragment implements SharedPr
@Override @Override
public void onDestroy() { public void onDestroy() {
getActivity().unregisterReceiver(mReceiver); if (isReceiverRegistered) {
getActivity().unregisterReceiver(mReceiver);
}
super.onDestroy(); super.onDestroy();
} }
@@ -137,6 +141,7 @@ public class BluetoothPreferences extends PreferenceFragment implements SharedPr
btScanner = (PreferenceScreen) findPreference(PREFERENCE_KEY_BLUETOOTH_SCANNER); btScanner = (PreferenceScreen) findPreference(PREFERENCE_KEY_BLUETOOTH_SCANNER);
btScanner.setOnPreferenceClickListener(new onClickListenerScannerSelect()); btScanner.setOnPreferenceClickListener(new onClickListenerScannerSelect());
isReceiverRegistered = false;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext());
btScanner.setSummary(prefs.getString("btDeviceName", "-")); btScanner.setSummary(prefs.getString("btDeviceName", "-"));