Welcome 微信登录

首页 / 操作系统 / Linux / Android 电子罗盘开发

Android 上电子罗盘的数据获取非常的简单, 它会返回一个值给我们, 而这个值就是度数。 我们只需要一个成员变量  Private SensorManager sensorManager;  该变量管理手机中的传感器信息。
  Public void onCreate(Bundle b)  {      //获取系统服务管理      sensorManager = (SensorManager)getSysytemService(SENSOR_SERVICE);  }
  这里我们还需要注册一下, 在OnResume重载成员方法中@Override  protected void onResume()  {    //使用方向传感器     sensorManager.registerListener(selistener, sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_NOMAL);     super.onResume();  }
       @Override       protectedvoid onPause()       {             //卸载传感器事件              sensor.unregisterListener(selistener);              super.onPause();       }
      //传感器消息触发事件       privatefinal SensorEventListener selistener = new SensorEventListener()       {                            publicvoid onSensorChanged(SensorEvent event)              {                     mAngle= event.values[SensorManager.DATA_X];                     textSensor.setText("角度:" + mAngle);              }                            publicvoid onAccuracyChanged(Sensor sensor, int accuracy)              {              }       }; 最后再加一个在AndroidManifest.xml 的</application> 下面, 允许程序使用传感器<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"/>