歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android 電子羅盤開發

Android 電子羅盤開發

日期:2017/3/1 10:48:32   编辑:Linux編程

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"/>

Copyright © Linux教程網 All Rights Reserved