diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/InternetHelperPreferencesActivity.kt b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/InternetHelperPreferencesActivity.kt index 4fa1823d03..7d881fd29e 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/InternetHelperPreferencesActivity.kt +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/InternetHelperPreferencesActivity.kt @@ -28,7 +28,7 @@ import nodomain.freeyourgadget.gadgetbridge.util.PermissionsUtils.PACKAGE_INTERN class InternetHelperPreferencesActivity : AbstractGBActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - setContentView(R.layout.activity_internet_helper_preferences) + setContentView(R.layout.activity_settings) supportFragmentManager .beginTransaction() diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/deviceevents/GBDeviceEventAppMessage.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/deviceevents/GBDeviceEventAppMessage.java index 8c059ebfe5..e2b4f71d4e 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/deviceevents/GBDeviceEventAppMessage.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/deviceevents/GBDeviceEventAppMessage.java @@ -33,7 +33,6 @@ public class GBDeviceEventAppMessage extends GBDeviceEvent { public UUID appUUID; public int id; public String message; - public GBDevice device; @NonNull @Override @@ -43,7 +42,6 @@ public class GBDeviceEventAppMessage extends GBDeviceEvent { ", appUUID=" + appUUID + ", message='" + message + '\'' + ", id=" + id + - ", device=" + device + '}'; } diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java index d862ad8a40..5bc71acb31 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java @@ -105,20 +105,20 @@ class PebbleIoThread extends GBDeviceIoThread { private int mBytesWritten = -1; private void sendAppMessageJS(GBDeviceEventAppMessage appMessage) { - sendAppMessage(appMessage); + sendAppMessage(gbDevice, appMessage); if (appMessage.type == GBDeviceEventAppMessage.TYPE_APPMESSAGE) { write(mPebbleProtocol.encodeApplicationMessageAck(appMessage.appUUID, (byte) appMessage.id)); } } - private static void sendAppMessage(GBDeviceEventAppMessage message) { - if (! ((PebbleCoordinator) message.device.getDeviceCoordinator()).isBackgroundJsEnabled(message.device)) { + private static void sendAppMessage(GBDevice device, GBDeviceEventAppMessage message) { + if (! ((PebbleCoordinator) device.getDeviceCoordinator()).isBackgroundJsEnabled(device)) { LOG.info("App message received but Pebble JS Service not running"); return; } final String jsEvent; try { - PebbleJsService.Companion.getInstance().checkAppRunning(message.device, message.appUUID); + PebbleJsService.Companion.getInstance().checkAppRunning(device, message.appUUID); } catch (NullPointerException | IllegalStateException ex) { LOG.warn("Unable to send app message: {}", message, ex); return; @@ -134,7 +134,7 @@ class PebbleIoThread extends GBDeviceIoThread { final String appMessage = PebbleUtils.parseIncomingAppMessage(message.message, message.appUUID, message.id); LOG.debug("to WEBVIEW: event: {} message: {}", jsEvent, appMessage); - PebbleJsService.Companion.getInstance().evaluateJsForDevice(message.device, "if (typeof Pebble == 'object') Pebble.evaluate('" + jsEvent + "',[" + appMessage + "]);", s -> { + PebbleJsService.Companion.getInstance().evaluateJsForDevice(device, "if (typeof Pebble == 'object') Pebble.evaluate('" + jsEvent + "',[" + appMessage + "]);", s -> { //TODO: the message should be acked here instead of in PebbleIoThread LOG.debug("Callback from appmessage: {}", s); }); diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleProtocol.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleProtocol.java index c4dc75cc12..7ba49e5695 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleProtocol.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleProtocol.java @@ -1782,7 +1782,6 @@ public class PebbleProtocol extends GBDeviceProtocol { appMessage.appUUID = uuid; appMessage.id = last_id & 0xff; appMessage.message = jsonArray.toString(); - appMessage.device = getDevice(); return new GBDeviceEvent[]{appMessage, sendBytesAck}; } @@ -2563,7 +2562,6 @@ public class PebbleProtocol extends GBDeviceProtocol { } evtAppMessage.id = idLookup[last_id & 0xff]; evtAppMessage.appUUID = currentRunningApp; - evtAppMessage.device = getDevice(); } devEvts = new GBDeviceEvent[]{evtAppMessage}; break; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/FileUtils.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/FileUtils.java index 83f08c6227..b9931272ca 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/FileUtils.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/FileUtils.java @@ -43,12 +43,9 @@ import java.io.InputStreamReader; import java.io.OutputStream; import java.nio.channels.FileChannel; import java.nio.charset.StandardCharsets; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Locale; import java.util.Objects; import nodomain.freeyourgadget.gadgetbridge.GBApplication; diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/PebbleUtils.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/PebbleUtils.java index 475bccbaf8..440b1a2c03 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/PebbleUtils.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/util/PebbleUtils.java @@ -208,10 +208,12 @@ public class PebbleUtils { // Delay start until service is ready new Handler(Looper.getMainLooper()).postDelayed(() -> { PebbleJsService s = PebbleJsService.Companion.getInstance(); - if (s != null) { + if (s == null) { + LOG.warn("Couldn't start PebbleJsService"); + } else { s.startJsForDevice(device, uuid); } - }, 600); + }, 1000); return; } diff --git a/app/src/main/res/layout/activity_internet_helper_preferences.xml b/app/src/main/res/layout/activity_internet_helper_preferences.xml deleted file mode 100644 index 0be06087fd..0000000000 --- a/app/src/main/res/layout/activity_internet_helper_preferences.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - \ No newline at end of file