有沒有一種方法可以每隔5分鐘從Android傳感器獲取值?採樣Android傳感器
例如,是否有一種方法可以每隔5分鐘輪詢一次AMBIENT_TEMPERATURE傳感器,而不管溫度是否發生變化?
現在,我只能訪問onSensorChanged(SensorEvent arg0)
當它被調用時的值,所以如果溫度沒有從啓動變化,我永遠不能訪問溫度值?
謝謝! =]
有沒有一種方法可以每隔5分鐘從Android傳感器獲取值?採樣Android傳感器
例如,是否有一種方法可以每隔5分鐘輪詢一次AMBIENT_TEMPERATURE傳感器,而不管溫度是否發生變化?
現在,我只能訪問onSensorChanged(SensorEvent arg0)
當它被調用時的值,所以如果溫度沒有從啓動變化,我永遠不能訪問溫度值?
謝謝! =]
據我記得,傳感器每onSensorChanged
-event返回一個值。您可以設置一個線程,每5分鐘讀入一次值。
編輯:
public class OrientationHandler implements SensorEventListener {
private SensorManager sensorManager = null;
private static float[] values = new float[3];
public OrientationHandler(Context context) {
sensorManager = (SensorManager) context
.getSystemService(Context.SENSOR_SERVICE);
sensorManager.registerListener(this, sensorManager
.getDefaultSensor(Sensor.TYPE_ORIENTATION),
SensorManager.SENSOR_DELAY_FASTEST);
}
public void onSensorChanged(SensorEvent event) {
if (event.sensor.getType() == Sensor.TYPE_ORIENTATION) {
synchronized (this) {
OrientationHandler.values = event.values;
}
}
}
}
OrientationHandler.values可以從類外部訪問(如果你自己寫一個公共的getter方法)。
您可以嘗試使用報警服務並每五分鐘重複設置一次。
雖然我從來沒有使用傳感器,但無論如何,我認爲有一些方法可以獲得傳感器值一次。
我建議你閱讀this first,然後this瞭解如何設置一個重複報警,它是廣播接收機可以更新您的傳感器信息。
希望這有助於=)
你看過這個嗎? http://stackoverflow.com/questions/6985396/is-there-any-android-api-to-find-sense-room-temperature-programmatically-in-andr – sschrass