当前位置: 代码迷 >> Android >> Android 传感器编程请问
  详细解决方案

Android 传感器编程请问

热度:48   发布时间:2016-05-01 13:01:09.0
Android 传感器编程请教
场景是一个小球的应用,通过控制手机的移动 来实现小球的移动




如果我想手机向左移动的时候 小球就向左移动 我的意思是平移 不是手机倾斜

该用哪个传感器呢? 加速度传感器么?

还有我想往上挥动手机的时候 小球就往上移动 该用哪个传感器组合呢?

------解决方案--------------------
加速传感器(根据这个加速度大小判断力的大小):
private SensorManager mSensorManager;
private Sensor mSensor;
........
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);



.....

public void onSensorChanged(SensorEvent event){

// event.values[0]: x-axis 方向加速度

// event.values[1]: y-axis 方向加速度

// event.values[2]: z-axis 方向加速度
  
}
------解决方案--------------------
加速度传感器
2.3以下和以上的加速度传感器有点区别
2.3以下可以得到加速器的值
2.3及2.3以上提供了线性加速器和重力加速器 相加得到加速器的值

另记得用的时候注册传感器 销毁的时候也要解除
if (accelerometerLsn != null && accelerometerSensor != null)
sensorMgr.unregisterListener(accelerometerLsn, accelerometerSensor); 
  相关解决方案