@Override public void onDestroy() { if (mAsyncTask != null) { mAsyncTask.cancel(true); try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } } if (mSensorManager != null) stopAccelerometer(); super.onDestroy(); try { mRawAccOutputStream.close(); } catch (Exception ex) { } }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setAmbientEnabled(); mAccBuffer = new ArrayBlockingQueue<>(Globals.ACCELEROMETER_BUFFER_CAPACITY); mContainerView = (BoxInsetLayout) findViewById(R.id.container); mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION); mAsyncTask = new OnSensorChangedTask(); mAsyncTask.execute(); stepsView = (TextView) findViewById(R.id.stepCount); activityView = (TextView) findViewById(R.id.activity_type); calView = (TextView) findViewById(R.id.calCount); distView = (TextView) findViewById(R.id.distCount); seekBar_height = (SeekBar) findViewById(R.id.height); heightPrint = (TextView) findViewById(R.id.heightInput); height = seekBar_height.getProgress() + 130; heightPrint.setText(height + "cm"); seekBar_weight = (SeekBar) findViewById(R.id.weight); weightPrint = (TextView) findViewById(R.id.weightInput); weight = seekBar_weight.getProgress() + 50; weightPrint.setText(weight + "kg"); seekBar_height.setOnSeekBarChangeListener( new SeekBar.OnSeekBarChangeListener() { int progress = 0; @Override public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) { progress = progresValue; } @Override public void onStartTrackingTouch(SeekBar seekBar) {} @Override public void onStopTrackingTouch(SeekBar seekBar) { height = seekBar.getProgress() + 130; heightPrint.setText(height + "cm"); } }); seekBar_weight.setOnSeekBarChangeListener( new SeekBar.OnSeekBarChangeListener() { int progress = 0; @Override public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) { progress = progresValue; } @Override public void onStartTrackingTouch(SeekBar seekBar) {} @Override public void onStopTrackingTouch(SeekBar seekBar) { weight = seekBar.getProgress() + 50; weightPrint.setText(weight + "kg"); } }); // Set the buttons and the text accordingly accelButton = (ToggleButton) findViewById(R.id.MonitorButton); accelButton.setChecked(isAccelRunning); accelButton.setOnCheckedChangeListener( new CompoundButton.OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton btn, boolean isChecked) { if (!isAccelRunning) { startAccelerometer(); accelButton.setChecked(true); } else { stopAccelerometer(); accelButton.setChecked(false); } } }); }