实现摇一摇,监听安卓加速器


  1.   

  2.     private SensorManager sensorManager = null;  

  3.     private SensorEventListener mListener = null;  

  4.       

  5.     @Override  

  6.     protected void onCreate(Bundle savedInstanceState)  

  7.     {  

  8.         super.onCreate(savedInstanceState);  

  9.         setContentView(R.layout.activity_main);  

  10.   

  11.          sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);  

  12.   

  13.         mListener = new SensorEventListener()  

  14.         {  

  15.   

  16.             @Override  

  17.             public void onSensorChanged(SensorEvent event)  

  18.             {  

  19.                 // TODO Auto-generated method stub  

  20.                 float[] values = event.values;  

  21.                 float x = values[0];  

  22.                 //float y = values[1];  

  23.                 float z = values[2];  

  24.   

  25.                   

  26.                 int medumValue = 15;  

  27.                 //一般摇一摇动作是其位置在空间的X轴和Z轴上的变动  

  28.                 if (Math.abs(x) > medumValue /*&& Math.abs(y) > medumValue*/ && Math.abs(z) > medumValue)  

  29.                 {  

  30.                     Intent intent =  new Intent(MainActivity.this, SecondActivity.class);  

  31.                     startActivity(intent);  

  32.                       

  33.                 }  

  34.   

  35.             }  

  36.   

  37.             @Override  

  38.             public void onAccuracyChanged(Sensor sensor, int accuracy)  

  39.             {  

  40.                 // TODO Auto-generated method stub  

  41.   

  42.             }  

  43.         };  

  44.     }  

  45.   

  46.     @Override  

  47.     protected void onResume()  

  48.     {  

  49.         super.onResume();  

  50.         //注册监听器  

  51.         if(sensorManager!= null)  

  52.             sensorManager.registerListener(mListener, sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),sensorManager.SENSOR_DELAY_GAME );  

  53.               

  54.     }  

  55.   

  56.     @Override  

  57.     protected void onStop()  

  58.     {  

  59.         super.onStop();  

  60.         //取消监听器  

  61.         sensorManager.unregisterListener(mListener);  

  62.           

  63.     }  


你可能感兴趣的:(实现摇一摇,监听安卓加速器)