1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-07-22 06:41:06 +02:00

Bangle.js:actTrk: fix packet counting

This commit is contained in:
Ganblejs 2024-03-03 14:06:38 +01:00 committed by José Rebelo
parent 8338b03b3b
commit e492160531
2 changed files with 12 additions and 4 deletions

View File

@ -117,8 +117,9 @@ public class BangleJSActivityTrack extends BangleJSDeviceSupport {
} else { } else {
currPacketCount = 0; currPacketCount = 0;
} }
if (false && currPacketCount != prevPacketCount+1) { if (currPacketCount != prevPacketCount+1) {
LOG.error("Activity Track Packets came out of order - aborting."); LOG.error("Activity Track Packets came out of order - aborting.");
LOG.info("packetCount Aborting: " + prevPacketCount);
returnArray = new JSONArray().put(stopObj).put(tracksList).put(prevPacketCount); returnArray = new JSONArray().put(stopObj).put(tracksList).put(prevPacketCount);
device.unsetBusyTask(); device.unsetBusyTask();
GB.updateTransferNotification(context.getString(R.string.busy_task_fetch_activity_data), "", false, 100, context); GB.updateTransferNotification(context.getString(R.string.busy_task_fetch_activity_data), "", false, 100, context);
@ -143,12 +144,16 @@ public class BangleJSActivityTrack extends BangleJSDeviceSupport {
if (tracksList.length()==0) { if (tracksList.length()==0) {
device.unsetBusyTask(); device.unsetBusyTask();
GB.updateTransferNotification(context.getString(R.string.busy_task_fetch_activity_data), "", false, 100, context); GB.updateTransferNotification(context.getString(R.string.busy_task_fetch_activity_data), "", false, 100, context);
returnArray = new JSONArray().put(null).put(tracksList).put(-1); int resetPacketCount = -1;
LOG.info("packetCount reset1: " + resetPacketCount);
returnArray = new JSONArray().put(null).put(tracksList).put(resetPacketCount);
return returnArray; return returnArray;
} else { } else {
JSONObject requestTrackObj = BangleJSActivityTrack.compileTrackRequest(tracksList.getString(0), 1==tracksList.length()); JSONObject requestTrackObj = BangleJSActivityTrack.compileTrackRequest(tracksList.getString(0), 1==tracksList.length());
tracksList.remove(0); tracksList.remove(0);
returnArray = new JSONArray().put(requestTrackObj).put(tracksList).put(currPacketCount); int resetPacketCount = -1;
LOG.info("packetCount reset2: " + resetPacketCount);
returnArray = new JSONArray().put(requestTrackObj).put(tracksList).put(resetPacketCount);
return returnArray; return returnArray;
} }
} else { // We received a lines of the csv, now we append it to the file in storage. } else { // We received a lines of the csv, now we append it to the file in storage.
@ -176,6 +181,8 @@ public class BangleJSActivityTrack extends BangleJSDeviceSupport {
} }
} }
LOG.info("packetCount should not be reached: " + currPacketCount);
returnArray = new JSONArray().put(null).put(tracksList).put(currPacketCount); returnArray = new JSONArray().put(null).put(tracksList).put(currPacketCount);
return returnArray; return returnArray;
} }

View File

@ -575,11 +575,12 @@ public class BangleJSDeviceSupport extends AbstractBTLEDeviceSupport {
} }
break; break;
case "actTrk": case "actTrk":
LOG.info("packetCount1: " + packetCount);
JSONArray returnArray = BangleJSActivityTrack.handleActTrk(json, tracksList, packetCount, getDevice(), getContext()); JSONArray returnArray = BangleJSActivityTrack.handleActTrk(json, tracksList, packetCount, getDevice(), getContext());
if (!returnArray.isNull(0)) uartTxJSON("requestActivityTrackLog", returnArray.getJSONObject(0)); if (!returnArray.isNull(0)) uartTxJSON("requestActivityTrackLog", returnArray.getJSONObject(0));
tracksList = returnArray.getJSONArray(1); tracksList = returnArray.getJSONArray(1);
packetCount = returnArray.getInt(2); packetCount = returnArray.getInt(2);
LOG.info("packetCount2: " + packetCount);
break; break;
case "http": case "http":
handleHttp(json); handleHttp(json);