summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Beattie <mike@ethernal.org>2012-08-26 23:23:33 +1200
committerMike Beattie <mike@ethernal.org>2012-08-26 23:23:33 +1200
commita9ec3c96288b7ea4e40586321a0a98edf0c8fee5 (patch)
treeb6eb4147e64b8e1fd9a3b9a214cd34ab63df6312
parentd7173e814c49826f39bba1ff6b024819c555860c (diff)
altosdroid: Need access to handler inside AltosBluetooth
* Also move add_monitor() call Signed-off-by: Mike Beattie <mike@ethernal.org>
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java6
-rw-r--r--altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java7
2 files changed, 9 insertions, 4 deletions
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java
index c16e3cf5..3bfa3488 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosBluetooth.java
@@ -26,6 +26,7 @@ import java.util.UUID;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothSocket;
+import android.os.Handler;
import android.util.Log;
import org.altusmetrum.AltosLib.*;
@@ -39,6 +40,8 @@ public class AltosBluetooth extends AltosLink {
private ConnectThread connect_thread = null;
private Thread input_thread = null;
+ private Handler handler;
+
private BluetoothAdapter adapter;
private BluetoothDevice device;
private BluetoothSocket socket;
@@ -46,9 +49,10 @@ public class AltosBluetooth extends AltosLink {
private OutputStream output;
// Constructor
- public AltosBluetooth(BluetoothDevice in_device) {
+ public AltosBluetooth(BluetoothDevice in_device, Handler in_handler) {
adapter = BluetoothAdapter.getDefaultAdapter();
device = in_device;
+ handler = in_handler;
connect_thread = new ConnectThread(device);
connect_thread.start();
diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java
index 6a23dca3..1903cc1d 100644
--- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java
+++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryService.java
@@ -61,7 +61,8 @@ public class TelemetryService extends Service {
//private NotificationManager mNM;
ArrayList<Messenger> mClients = new ArrayList<Messenger>(); // Keeps track of all current registered clients.
- final Messenger mMessenger = new Messenger(new IncomingHandler()); // Target we publish for clients to send messages to IncomingHandler.
+ final Handler mHandler = new IncomingHandler(this);
+ final Messenger mMessenger = new Messenger(mHandler); // Target we publish for clients to send messages to IncomingHandler.
// Name of the connected device
private String mConnectedDeviceName = null;
@@ -93,6 +94,7 @@ public class TelemetryService extends Service {
case MSG_CONNECTED:
if (D) Log.d(TAG, "Connected to device");
s.setState(STATE_CONNECTED);
+ s.mAltosBluetooth.add_monitor(s.telem);
break;
default:
super.handleMessage(msg);
@@ -110,8 +112,7 @@ public class TelemetryService extends Service {
}
private void startAltosBluetooth(BluetoothDevice d) {
- mAltosBluetooth = new AltosBluetooth(d);
- mAltosBluetooth.add_monitor(telem);
+ mAltosBluetooth = new AltosBluetooth(d, mHandler);
setState(STATE_CONNECTING);
}