各センサーを別のスレッドに配置する必要はありません。
public void onSensorChanged(SensorEvent sensorEvent) {
sensorName = sensorEvent.sensor.getName();
Log.d(sensorName + ": X: " + sensorEvent.values[0] + "; Y: " + sensorEvent.values[1] + "; Z: " + sensorEvent.values[2] + ";");
}
:ヨは
public class SensorActivity extends Activity, implements SensorEventListener {
private final SensorManager mSensorManager;
private final Sensor mAccelerometer;
private final Sensor mGyroscope;
public SensorActivity() {
mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
mGyroscope = mSensorManager.getDefaultSensor(TYPE_GYROSCOPE);
}
protected void onResume() {
super.onResume();
mSensorManager.registerListener(this, mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL);
mSensorManager.registerListener(this, mGyroscope, SensorManager.SENSOR_DELAY_NORMAL);
}
protected void onPause() {
super.onPause();
mSensorManager.unregisterListener(this);
}
がsensorEventListハンドラを実装します(特別な方法がonSensorChanged)と、受信したデータを属する人チェックし、必要異なるセンサを登録し、登録解除するクラスSensorManagerを使用することができます
あなたのアプローチを示すことができますか(コード)。 –
次のリンクがいくつかあります。 https://source.android.com/devices/sensors/sensor-types.html https://source.android.com/devices/sensors/index.html http:// developer.android.com/guide/topics/sensors/sensors_overview.html –