Advertisement
Guest User

Untitled

a guest
May 28th, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.79 KB | None | 0 0
  1. package com.example.torton.mysensorlistener;
  2.  
  3.  
  4. import android.app.Activity;
  5. import android.content.Context;
  6. import android.hardware.Sensor;
  7. import android.hardware.SensorEvent;
  8. import android.hardware.SensorEventListener;
  9. import android.hardware.SensorManager;
  10. import android.os.Bundle;
  11. import android.view.View;
  12. import android.widget.Button;
  13. import android.widget.TextView;
  14. import android.widget.Toast;
  15.  
  16. import java.util.List;
  17.  
  18. public class SensorActivity extends Activity implements SensorEventListener {
  19.  
  20. private SensorManager sensorManager;
  21. private Sensor accelerometer;
  22.  
  23. @Override
  24. protected void onPause() {
  25. super.onPause();
  26. // unregister sensor listenerth
  27. if( accelerometer != null && sensorManager != null ) {
  28. sensorManager.unregisterListener(this, accelerometer);
  29. }
  30. }
  31.  
  32. @Override
  33. protected void onResume() {
  34. super.onResume();
  35. // register sensor listener
  36. if( accelerometer != null && sensorManager != null ){
  37. sensorManager.registerListener(this, accelerometer, SensorManager.SENSOR_DELAY_UI);
  38. }
  39. }
  40.  
  41. @Override
  42. protected void onCreate(Bundle savedInstanceState) {
  43. super.onCreate(savedInstanceState);
  44. setContentView(R.layout.activity_sensor);
  45. Button startSensorsButton = findViewById(R.id.startSensorsButton);
  46. startSensorsButton.setOnClickListener( view-> {
  47. startSensors();
  48. });
  49.  
  50. }
  51.  
  52. private void startSensors() {
  53. // Rekisteröidytään kuuntelemaan sensoreita
  54. sensorManager = (SensorManager)getSystemService(Context.SENSOR_SERVICE);
  55. // Listataan alla olevat sensorit
  56. List<Sensor> sensorsOnDevice = sensorManager.getSensorList(Sensor.TYPE_ALL);
  57. for( Sensor s : sensorsOnDevice ){
  58. Toast.makeText(this, "Name: " + s.getName() + " Vendor: " + s.getVendor(),
  59. Toast.LENGTH_SHORT).show();
  60. }
  61. accelerometer = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
  62. if( accelerometer != null ){
  63. // rekisteröidytään kuuntelijaksi
  64. sensorManager.registerListener( this, accelerometer, SensorManager.SENSOR_DELAY_UI );
  65. }
  66. }
  67.  
  68. @Override
  69. public void onSensorChanged(SensorEvent sensorEvent) {
  70. // Käsitellään sensoritapahtuma
  71. float xSensor = sensorEvent.values[0];
  72. float ySensor = sensorEvent.values[1];
  73. float zSensor = sensorEvent.values[2];
  74.  
  75. // Päivitetään UI
  76. TextView sensorTextView = findViewById(R.id.sensorTextView);
  77. sensorTextView.setText( "X: " + xSensor + " Y: " + ySensor + " Z: " + zSensor );
  78.  
  79. }
  80. @Override
  81. public void onAccuracyChanged(Sensor sensor, int i) {
  82.  
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement