关于安卓的方向传感器
澳门新葡京官网
澳门新葡京官网
当前位置 : 澳门新葡京官网 > 网上赌博新址

关于安卓的方向传感器

1.新手每天都碰到很多新问题,今天看书,随着书本写了一个方向传感器的小例子,就是想验证一下是否这么用方向传感器,可是写出来以后,Log出来的值都是0,和书本不一样呀,又上网查了一下,貌似没有写错,可就是结果不对呀
2.贴上全部代码,求大家指点呀

public class MainActivity extends AppCompatActivity {

private SensorManager sensorManager;
private SensorEventListener listener=new SensorEventListener {

    float[] magValues=new float[3];
    float[] accValues=new float[3];
    float[] r=new float[9];
    float[] values=new float[3];
    @Override
    public void onSensorChangedSensorEvent event {
        ifevent.sensor.getType==Sensor.TYPE_ACCELEROMETER{
            accValues=event.values.clone;
            Log.d"MainActivity","accelerometer";//结果不对,为了调试加入的
        }
        else ifevent.sensor.getType==Sensor.TYPE_MAGNETIC_FIELD{
            magValues=event.values.clone;
            Log.d"MainActivity","magnetic";//结果不对,为了调试加入的
        }
        SensorManager.getRotationMatrixr,null,accValues,magValues;
        SensorManager.getOrientationr,values;
        Log.d"MainActivity","values[0]="+Math.toDegreesvalues[0];
    }

    @Override
    public void onAccuracyChangedSensor sensor, int accuracy {

    }
};

@Override
protected void onCreateBundle savedInstanceState {
    super.onCreatesavedInstanceState;
    setContentViewR.layout.activity_main;
    sensorManager= SensorManager getSystemServiceContext.SENSOR_SERVICE;
    Sensor magneticSensor=sensorManager.getDefaultSensorSensor.TYPE_MAGNETIC_FIELD;
    Sensor accSensor=sensorManager.getDefaultSensorSensor.TYPE_ACCELEROMETER;
      sensorManager.registerListenerlistener,magneticSensor,SensorManager.SENSOR_DELAY_GAME;
    sensorManager.registerListenerlistener,accSensor,SensorManager.SENSOR_DELAY_GAME;
}

@Override
protected void onDestroy {
    super.onPause;
    ifsensorManager!=null{
        sensorManager.unregisterListenerlistener;
    }
}

}

运行结果永远是
D/MainActivity: accelerometer
D/MainActivity: values[0]=0

就是说magnetic永远触发不了

3.测试的是真机,华为手机,系统是安卓5.0的

要疯了,求指点

今天用了androidstudio自带的模拟器运行,模拟手机的晃动,移动,是能得到数值的,就是说上面的程序对于原生系统应该是没有问题的,难道是华为手机有特别规定?

栏目列表

广告位

澳门新葡京官网