summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Grover <joeygrover@gmail.com>2022-03-23 14:46:45 -0400
committerJoey Grover <joeygrover@gmail.com>2022-03-23 14:46:45 -0400
commit06f3cd8e3f0db0d09438600de53ca4c363e6cbb1 (patch)
tree126ce436cbbb3379687eb4d9389bfc6f1d198a0c
parente1ed2b9437fb38fd68e83784f63c644b65e74fb3 (diff)
downloadsdl_android-06f3cd8e3f0db0d09438600de53ca4c363e6cbb1.tar.gz
Fix altTransport timer issues preventing RS close
-rw-r--r--android/sdl_android/src/main/java/com/smartdevicelink/transport/SdlRouterService.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/android/sdl_android/src/main/java/com/smartdevicelink/transport/SdlRouterService.java b/android/sdl_android/src/main/java/com/smartdevicelink/transport/SdlRouterService.java
index b571c7367..0cac878e1 100644
--- a/android/sdl_android/src/main/java/com/smartdevicelink/transport/SdlRouterService.java
+++ b/android/sdl_android/src/main/java/com/smartdevicelink/transport/SdlRouterService.java
@@ -1758,7 +1758,7 @@ public class SdlRouterService extends Service {
} else if (intent != null && TransportConstants.BIND_REQUEST_TYPE_ALT_TRANSPORT.equals(intent.getAction())) {
DebugTool.logInfo(TAG, "Received start intent with alt transport request.");
- startAltTransportTimer();
+ startAltTransportTimer(); //This timer is started to allow the router service to stay open while it waits for the USB transfer to take place
return true;
} else if (!bluetoothAvailable()) {//If bluetooth isn't on...there's nothing to see here
//Bluetooth is off, we should shut down
@@ -1980,6 +1980,12 @@ public class SdlRouterService extends Service {
usbSessionMap.clear();
}
}
+ //In case the USB connection has ended before the timer expired, we should stop it
+ if(altTransportTimerHandler != null && altTransportTimerRunnable != null) {
+ altTransportTimerHandler.removeCallbacks(altTransportTimerRunnable);
+ altTransportTimerHandler = null;
+ altTransportTimerRunnable = null;
+ }
break;
case TCP:
if (tcpTransport != null) {
@@ -2631,6 +2637,11 @@ public class SdlRouterService extends Service {
if (Looper.myLooper() == null) {
Looper.prepare();
}
+
+ if(altTransportTimerHandler != null && altTransportTimerRunnable != null) {
+ altTransportTimerHandler.removeCallbacks(altTransportTimerRunnable);
+ }
+
altTransportTimerHandler = new Handler(Looper.myLooper());
altTransportTimerRunnable = new Runnable() {
public void run() {