altosdroid: Add Dumper class for testing
[fw/altos] / altosdroid / src / org / altusmetrum / AltosDroid / AltosDroid.java
index e3e6012e7357b0501b187c60ec92c1dd6eb40db3..c4aa41932e80c9c83bf44c2ba383cfc793f16c76 100644 (file)
@@ -97,6 +97,8 @@ public class AltosDroid extends Activity {
                                        ad.mTitle.setText(R.string.title_connected_to);
                                        ad.mTitle.append(str);
                                        Toast.makeText(ad.getApplicationContext(), "Connected to " + str, Toast.LENGTH_SHORT).show();
+                                       //TEST!
+                                       ad.mSerialView.setText(Dumper.dump(ad.mConfigData));
                                        break;
                                case TelemetryService.STATE_CONNECTING:
                                        ad.mTitle.setText(R.string.title_connecting);
@@ -110,10 +112,8 @@ public class AltosDroid extends Activity {
                                }
                                break;
                        case MSG_TELEMETRY:
-                               //byte[] buf = (byte[]) msg.obj;
-                               // construct a string from the buffer
-                               //String telem = new String(buf);
-                               //ad.mSerialView.append(telem);
+                               // TEST!
+                               ad.mSerialView.setText(Dumper.dump(msg.obj));
                                break;
                        }
                }
@@ -139,6 +139,30 @@ public class AltosDroid extends Activity {
        };
 
 
+       void doBindService() {
+               bindService(new Intent(this, TelemetryService.class), mConnection, Context.BIND_AUTO_CREATE);
+               mIsBound = true;
+       }
+
+       void doUnbindService() {
+               if (mIsBound) {
+                       // If we have received the service, and hence registered with it, then now is the time to unregister.
+                       if (mService != null) {
+                               try {
+                                       Message msg = Message.obtain(null, TelemetryService.MSG_UNREGISTER_CLIENT);
+                                       msg.replyTo = mMessenger;
+                                       mService.send(msg);
+                               } catch (RemoteException e) {
+                                       // There is nothing special we need to do if the service has crashed.
+                               }
+                       }
+                       // Detach our existing connection.
+                       unbindService(mConnection);
+                       mIsBound = false;
+               }
+       }
+
+
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
@@ -178,10 +202,6 @@ public class AltosDroid extends Activity {
                        }
                });
 
-               // Start Telemetry Service
-               startService(new Intent(AltosDroid.this, TelemetryService.class));
-
-               doBindService();
        }
 
        @Override
@@ -193,13 +213,17 @@ public class AltosDroid extends Activity {
                        Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
                        startActivityForResult(enableIntent, REQUEST_ENABLE_BT);
                }
+
+               // Start Telemetry Service
+               startService(new Intent(AltosDroid.this, TelemetryService.class));
+
+               doBindService();
        }
 
        @Override
        public synchronized void onResume() {
                super.onResume();
                if(D) Log.e(TAG, "+ ON RESUME +");
-
        }
 
        @Override
@@ -212,17 +236,16 @@ public class AltosDroid extends Activity {
        public void onStop() {
                super.onStop();
                if(D) Log.e(TAG, "-- ON STOP --");
+
+               doUnbindService();
        }
 
        @Override
        public void onDestroy() {
                super.onDestroy();
-
-               doUnbindService();
+               if(D) Log.e(TAG, "--- ON DESTROY ---");
 
                if (tts != null) tts.shutdown();
-
-               if(D) Log.e(TAG, "--- ON DESTROY ---");
        }
 
 
@@ -286,28 +309,4 @@ public class AltosDroid extends Activity {
                return false;
        }
 
-
-       void doBindService() {
-               bindService(new Intent(this, TelemetryService.class), mConnection, Context.BIND_AUTO_CREATE);
-               mIsBound = true;
-       }
-
-       void doUnbindService() {
-               if (mIsBound) {
-                       // If we have received the service, and hence registered with it, then now is the time to unregister.
-                       if (mService != null) {
-                               try {
-                                       Message msg = Message.obtain(null, TelemetryService.MSG_UNREGISTER_CLIENT);
-                                       msg.replyTo = mMessenger;
-                                       mService.send(msg);
-                               } catch (RemoteException e) {
-                                       // There is nothing special we need to do if the service has crashed.
-                               }
-                       }
-                       // Detach our existing connection.
-                       unbindService(mConnection);
-                       mIsBound = false;
-               }
-       }
-
 }