From 9a41508d92f95012a37bb75603e6e48a2c405204 Mon Sep 17 00:00:00 2001 From: Mike Beattie Date: Mon, 27 Aug 2012 19:41:29 +1200 Subject: [PATCH] altosdroid: Add Connected/Connect_failed messages Signed-off-by: Mike Beattie --- .../src/org/altusmetrum/AltosDroid/AltosBluetooth.java | 2 ++ .../org/altusmetrum/AltosDroid/TelemetryService.java | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java index bb188d80..19b2a2a5 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java @@ -103,6 +103,7 @@ public class AltosBluetooth extends AltosLink { input = null; output = null; AltosBluetooth.this.notifyAll(); + handler.obtainMessage(TelemetryService.MSG_CONNECT_FAILED).sendToTarget(); if (D) Log.e(TAG, "ConnectThread: Failed to establish connection"); return; } @@ -147,6 +148,7 @@ public class AltosBluetooth extends AltosLink { private void connection_failed() { if (D) Log.e(TAG, "Bluetooth Socket IO failed!"); + handler.obtainMessage(TelemetryService.MSG_DISCONNECTED).sendToTarget(); } public void print(String data) { diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java index e9254bad..ecafc74a 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java @@ -47,6 +47,8 @@ public class TelemetryService extends Service { static final int MSG_UNREGISTER_CLIENT = 2; static final int MSG_CONNECT = 3; static final int MSG_CONNECTED = 4; + static final int MSG_CONNECT_FAILED = 5; + static final int MSG_DISCONNECTED = 6; public static final int STATE_NONE = 0; public static final int STATE_READY = 1; @@ -101,6 +103,14 @@ public class TelemetryService extends Service { s.setState(STATE_CONNECTED); s.mAltosBluetooth.add_monitor(s.telem); break; + case MSG_CONNECT_FAILED: + if (D) Log.d(TAG, "Connection failed... retrying"); + s.startAltosBluetooth(); + break; + case MSG_DISCONNECTED: + if (D) Log.d(TAG, "Disconnected from " + s.device.getName()); + s.stopAltosBluetooth(); + break; default: super.handleMessage(msg); } -- 2.30.2