Androidセンサーから5分ごとに値を取得する方法はありますか?
たとえば、温度の変化があるかどうかに関係なく、AMBIENT_TEMPERATURE センサーを 5 分ごとにポーリングする方法はありますか?
現在、呼び出されたときの値にしかアクセスできonSensorChanged(SensorEvent arg0)
ないため、起動時から温度が変化していない場合、温度値にアクセスすることはできませんか?
ありがとう!=]
Androidセンサーから5分ごとに値を取得する方法はありますか?
たとえば、温度の変化があるかどうかに関係なく、AMBIENT_TEMPERATURE センサーを 5 分ごとにポーリングする方法はありますか?
現在、呼び出されたときの値にしかアクセスできonSensorChanged(SensorEvent arg0)
ないため、起動時から温度が変化していない場合、温度値にアクセスすることはできませんか?
ありがとう!=]
私が思い出す限り、センサーはイベントごとに値をonSensorChanged
返します。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 メソッドを自分で作成した場合)。