X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altosdroid%2Fsrc%2Forg%2Faltusmetrum%2FAltosDroid%2FAltosDroid.java;h=3855f6f9a262670f7c4925e940cd1485fb0b25ef;hb=162c640d382b9f823573578fe97584adc94cd9b6;hp=743d20c6767dc2fc52ad74e811b520f7c25d8d68;hpb=24fe48f66f94c99b8197a612afe6f98e980e9796;p=fw%2Faltos diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java index 743d20c6..3855f6f9 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java @@ -18,6 +18,7 @@ package org.altusmetrum.AltosDroid; import java.lang.ref.WeakReference; + import android.app.Activity; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; @@ -31,6 +32,8 @@ import android.os.Handler; import android.os.Message; import android.os.Messenger; import android.os.RemoteException; +import android.speech.tts.TextToSpeech; +import android.speech.tts.TextToSpeech.OnInitListener; import android.text.method.ScrollingMovementMethod; import android.util.Log; //import android.view.KeyEvent; @@ -45,7 +48,7 @@ import android.view.Window; //import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; -import org.altusmetrum.AltosDroid.R; +//import org.altusmetrum.AltosDroid.R; /** * This is the main Activity that displays the current chat session. @@ -58,12 +61,9 @@ public class AltosDroid extends Activity { // Message types sent from the TelemetryService Handler public static final int MSG_STATE_CHANGE = 1; public static final int MSG_DEVNAME = 2; - public static final int MSG_INCOMING_TELEM = 3; - public static final int MSG_TOAST = 4; - - // Key names received from the TelemetryService Handler - public static final String KEY_DEVNAME = "key_devname"; - public static final String KEY_TOAST = "key_toast"; + public static final int MSG_TOAST = 3; + public static final int MSG_DEVCONFIG = 4; + public static final int MSG_TELEMETRY = 5; // Intent request codes private static final int REQUEST_CONNECT_DEVICE = 1; @@ -84,6 +84,8 @@ public class AltosDroid extends Activity { // Local Bluetooth adapter private BluetoothAdapter mBluetoothAdapter = null; + private TextToSpeech tts; + private boolean tts_enabled = false; // The Handler that gets information back from the Telemetry Service static class IncomingHandler extends Handler { @@ -111,22 +113,24 @@ public class AltosDroid extends Activity { break; } break; - case MSG_INCOMING_TELEM: - byte[] buf = (byte[]) msg.obj; + case MSG_DEVCONFIG: + case MSG_TELEMETRY: + //byte[] buf = (byte[]) msg.obj; // construct a string from the buffer - String telem = new String(buf); - ad.mSerialView.append(telem); + //String telem = new String(buf); + //ad.mSerialView.append(telem); break; case MSG_DEVNAME: // save the connected device's name - ad.mConnectedDeviceName = msg.getData().getString(KEY_DEVNAME); - Toast.makeText(ad.getApplicationContext(), "Connected to " + ad.mConnectedDeviceName = (String) msg.obj; + if (ad.mConnectedDeviceName != null) + Toast.makeText(ad.getApplicationContext(), "Connected to " + ad.mConnectedDeviceName, Toast.LENGTH_SHORT).show(); break; case MSG_TOAST: Toast.makeText( ad.getApplicationContext(), - msg.getData().getString(KEY_TOAST), + (String) msg.obj, Toast.LENGTH_SHORT).show(); break; } @@ -183,6 +187,14 @@ public class AltosDroid extends Activity { return; } + // Enable Text to Speech + tts = new TextToSpeech(this, new OnInitListener() { + public void onInit(int status) { + if (status == TextToSpeech.SUCCESS) tts_enabled = true; + if (tts_enabled) tts.speak("AltosDroid ready", TextToSpeech.QUEUE_ADD, null ); + } + }); + // Start Telemetry Service startService(new Intent(AltosDroid.this, TelemetryService.class)); @@ -237,6 +249,8 @@ public class AltosDroid extends Activity { doUnbindService(); + if (tts != null) tts.shutdown(); + if(D) Log.e(TAG, "--- ON DESTROY ---"); } @@ -330,6 +344,7 @@ public class AltosDroid extends Activity { Toast.makeText(this, R.string.bt_not_enabled, Toast.LENGTH_SHORT).show(); finish(); } + break; } }