感應器類型:
方向、加速度(重力)、光線、磁場、距離(臨近性)、溫度等。
(1), 方向感應器: Sensor.TYPE_ORIENTATION
(2),G_sensor 加速度(重力)感應器: Sensor.TYPE_ACCELEROMETER
(3),L_sensor 光線感應器: Sensor.TYPE_LIGHT
(4), M_sensor 磁場感應器: Sensor.TYPE_MAGNETIC_FIELD
(5),P_sensor 距離(臨近性)感應器: Sensor.TYPE_PROXIMITY
(6), 溫度感應器: Sensor.TYPE_TEMPERATURE
程式中的應用:
//擷取某種類型的感應器
Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
//註冊監聽,擷取感應器變化值
sensorManager.registerListener(listener, sensor, SensorManager.SENSOR_DELAY_GAME);
上面第三個參數為採樣率:最快、遊戲、普通、使用者介面。
當應用程式請求特定的採樣率時,其實只是對感應器子系統的一個建議,不保證特定的採樣率可用。
最快: SensorManager.SENSOR_DELAY_FASTEST
最低延遲,一般不是特別敏感的處理不推薦使用,該種模式可能造成手機電力大量消耗,由於傳遞的為未經處理資料,演算法不處理好將會影響遊戲邏輯和UI的效能。
遊戲: SensorManager.SENSOR_DELAY_GAME
遊戲延遲,一般絕大多數的即時性較高的遊戲都使用該層級。
普通: SensorManager.SENSOR_DELAY_NORMAL
標準延遲,對於一般的益智類或EASY層級的遊戲可以使用,但過低的採樣率可能對一些賽車類遊戲有跳幀現象。
使用者介面: SensorManager.SENSOR_DELAY_UI
一般對於螢幕方向自動旋轉使用,相對節省電能和邏輯處理,一般遊戲開發中我們不使用。