From 96577161813cacab5e47975942324feb92166e7c Mon Sep 17 00:00:00 2001 From: Javier Date: Fri, 26 Mar 2021 15:45:44 +0100 Subject: Support device removal by swiping left/right --- app/src/main/java/com/javispedro/rempe/Device.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'app/src/main/java/com/javispedro/rempe/Device.java') diff --git a/app/src/main/java/com/javispedro/rempe/Device.java b/app/src/main/java/com/javispedro/rempe/Device.java index d3a0d05..fed7291 100644 --- a/app/src/main/java/com/javispedro/rempe/Device.java +++ b/app/src/main/java/com/javispedro/rempe/Device.java @@ -59,13 +59,16 @@ public class Device { public void close() { Log.d(TAG, "close (" + mDeviceNumber + ")"); + if (mEnvPcc != null) { + mEnvPcc.subscribeTemperatureDataEvent(null); + mEnvPcc.subscribeRssiEvent(null); + mEnvPcc.releaseAccess(); + mEnvPcc = null; + } if (mEnvPccHandle != null) { mEnvPccHandle.close(); mEnvPccHandle = null; } - if (mEnvPcc != null) { - mEnvPcc = null; - } mConnectResult = RequestAccessResult.SUCCESS; mCurState = DeviceState.DEAD; if (mObserver != null) { @@ -88,6 +91,8 @@ public class Device { private void setEnvPcc(AntPlusEnvironmentPcc envPcc) { if (mEnvPcc != null) { + mEnvPcc.subscribeTemperatureDataEvent(null); + mEnvPcc.subscribeRssiEvent(null); mEnvPcc.releaseAccess(); mEnvPcc = null; } @@ -130,7 +135,7 @@ public class Device { return mConnectResult; } - private AntPluginPcc.IPluginAccessResultReceiver mResultReceiver = new AntPluginPcc.IPluginAccessResultReceiver() { + private final AntPluginPcc.IPluginAccessResultReceiver mResultReceiver = new AntPluginPcc.IPluginAccessResultReceiver() { @Override public void onResultReceived(AntPlusEnvironmentPcc result, RequestAccessResult resultCode, DeviceState initialDeviceState) { Log.d(TAG, "onResultReceived resultCode=" + resultCode + " initialDeviceState=" + initialDeviceState); @@ -149,7 +154,7 @@ public class Device { } }; - private AntPluginPcc.IDeviceStateChangeReceiver mDeviceStateChangeReceiver = new AntPluginPcc.IDeviceStateChangeReceiver() { + private final AntPluginPcc.IDeviceStateChangeReceiver mDeviceStateChangeReceiver = new AntPluginPcc.IDeviceStateChangeReceiver() { @Override public void onDeviceStateChange(DeviceState newDeviceState) { Log.d(TAG, "onDeviceStateChange newDeviceState=" + newDeviceState); -- cgit v1.2.3