diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2015-01-27 21:23:50 +0100 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2015-01-27 21:23:50 +0100 |
commit | c4685214d8db34166213ffa373a16af1a99401a5 (patch) | |
tree | 56e24e25119f28ff8c0a730c4d5313bc523a5c66 /app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java | |
parent | 138b49247a72890df66af9a01e1179dab72a4b71 (diff) | |
download | io.trygvis.soilmoisture-android-c4685214d8db34166213ffa373a16af1a99401a5.tar.gz io.trygvis.soilmoisture-android-c4685214d8db34166213ffa373a16af1a99401a5.tar.bz2 io.trygvis.soilmoisture-android-c4685214d8db34166213ffa373a16af1a99401a5.tar.xz io.trygvis.soilmoisture-android-c4685214d8db34166213ffa373a16af1a99401a5.zip |
o Adding 'recently seen' on BtDevice. Updated when scanning.
o Removing BtScanResult, it was never used.
o Getting MainActivity to listen on device property changed so the UI is properly updated.
o Adding a status bar with color to indicate if the device is available, connected or not seen.
Diffstat (limited to 'app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java')
-rw-r--r-- | app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java b/app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java index 85a6afb..3e1c93b 100644 --- a/app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java +++ b/app/src/main/java/io/trygvis/soilmoisture/DefaultSoilMoistureService.java @@ -119,7 +119,8 @@ public class DefaultSoilMoistureService extends Service implements SoilMoistureS sendBroadcast(createNewDevice(address)); boolean candidate = btDevice.getAddress().startsWith("FB:") || - btDevice.getAddress().startsWith("FD:"); + btDevice.getAddress().startsWith("FD:") || + btDevice.getAddress().startsWith("CE:"); if (!candidate) { Log.w(TAG, "Skipping device: " + btDevice.getAddress()); @@ -131,6 +132,11 @@ public class DefaultSoilMoistureService extends Service implements SoilMoistureS probe(smDevice.getBtDevice().getAddress()); } } + + @Override + public void onDevicePropertyUpdated(String address) { + sendBroadcast(createDevicePropertyUpdated(getDevice(address))); + } }; private BtPromise readAttribute(String value, byte[] req, Function<byte[], BtPromise.PromiseResult> handler) { @@ -159,7 +165,7 @@ public class DefaultSoilMoistureService extends Service implements SoilMoistureS GetSensorNameRes res = parseResponse(bytes, GET_SENSOR_NAME, GetSensorNameRes.class); String name = res.name; - device.getSensorByIndex(index).ifPresent(sensor -> { + device.getSensorByNumber(index).ifPresent(sensor -> { sensor.setName(name); sendBroadcast(createDevicePropertyUpdated(device)); }); @@ -198,6 +204,7 @@ public class DefaultSoilMoistureService extends Service implements SoilMoistureS return continueDirectly(); }). onFinally(success -> { + Log.i(TAG, "finally, smDevice.getIsUseful()=" + smDevice.getIsUseful()); if (smDevice.getIsUseful() == null) { smDevice.setIsUseful(false); } @@ -256,7 +263,11 @@ public class DefaultSoilMoistureService extends Service implements SoilMoistureS values.put(Tables.C_INDEX, i); id = db.insert(Tables.T_SM_SENSOR, null, values); + Log.i(TAG, "Created new sensor row, id=" + id); + device.addSensor(new SmSensor(device, id, (byte) i)); + } else { + Log.i(TAG, "Using existing sensor row, id=" + id); } } |