安卓获取重力加速度例子
packageuni.sensor;importjava.util.Iterator;importjava.util.List;importandroid.app.Activity;importandroid.content.Context;importandroid.hardware.Sensor;importandroid.hardware.SensorEvent;importandroid.hardware.SensorEventListener;importandroid.hardware.SensorManager;importandroid.os.Bundle;importandroid.util.Log;publicclassSensorDemoActivityextendsActivity{//设置LOG标签privatestaticfinalStringTAG="sensor";privateSensorManagersm;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);//创建一个SensorManager来获取系统的传感器服务sm=(SensorManager)getSystemService(Context.SENSOR_SERVICE);//选取加速度感应器intsensorType=Sensor.TYPE_ACCELEROMETER;sm.registerListener(myAccelerometerListener,sm.getDefaultSensor(sensorType),SensorManager.SENSOR_DELAY_NORMAL);}finalSensorEventListenermyAccelerometerListener=newSensorEventListener(){//复写onSensorChanged方法publicvoidonSensorChanged(SensorEventsensorEvent){if(sensorEvent.sensor.getType()==Sensor.TYPE_ACCELEROMETER){Log.i(TAG,"onSensorChanged");//图解中已经解释三个值的含义floatX_lateral=sensorEvent.values[0];floatY_longitudinal=sensorEvent.values[1];floatZ_vertical=sensorEvent.values[2];Log.i(TAG,"\nheading"+X_lateral);Log.i(TAG,"\npitch"+Y_longitudinal);Log.i(TAG,"\nroll"+Z_vertical);}}//复写onAccuracyChanged方法publicvoidonAccuracyChanged(Sensorsensor,intaccuracy){Log.i(TAG,"onAccuracyChanged");}};publicvoidonPause(){sm.unregisterListener(myAccelerometerListener);super.onPause();}}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。