From c2af2dd15cabec9edfca6e3471cc3093d783f92c Mon Sep 17 00:00:00 2001 From: Andreas Shimokawa Date: Fri, 28 Jul 2017 23:54:29 +0200 Subject: [PATCH] Pebble: Pass booleans from Javascript Appmessage as such and convert to int16 later when sending to pebble https://developer.pebble.com/guides/communication/using-pebblekit-js/#type-conversion --- .../gadgetbridge/activities/ExternalPebbleJSActivity.java | 3 --- .../gadgetbridge/service/devices/pebble/PebbleSupport.java | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/ExternalPebbleJSActivity.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/ExternalPebbleJSActivity.java index f59975f1..09463985 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/ExternalPebbleJSActivity.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/ExternalPebbleJSActivity.java @@ -221,9 +221,6 @@ public class ExternalPebbleJSActivity extends GBActivity { if (passKey) { Object obj = in.get(inKey); - if (obj instanceof Boolean) { - obj = ((Boolean) obj) ? "true" : "false"; - } out.put(outKey, obj); } else { GB.toast("Discarded key " + inKey + ", not found in the local configuration and is not an integer key.", Toast.LENGTH_SHORT, GB.WARN); diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleSupport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleSupport.java index b3b21b30..d9bd9f2d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleSupport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleSupport.java @@ -87,6 +87,8 @@ public class PebbleSupport extends AbstractSerialDeviceSupport { byteArray[i] = ((Integer) jsonArray.get(i)).byteValue(); } object = byteArray; + } else if (object instanceof Boolean) { + object = (short) (((Boolean) object) ? 1 : 0); } pairs.add(new Pair<>(Integer.parseInt(keyStr), object)); }