/// <summary> /// Stop the specified sensor type reading. /// </summary> /// <param name="sensorType">Sensor type</param> public override void Stop(SensorType sensorType) { switch (sensorType) { case SensorType.Accelerometer: AccelerometerActive = false; _sensorManager.UnregisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.Accelerometer)); break; case SensorType.Gyroscope: GyroActive = false; _sensorManager.UnregisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.Gyroscope)); break; case SensorType.DeviceMotion: DeviceMotionActive = false; _sensorManager.UnregisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.RotationVector)); break; case SensorType.Compass: CompassActive = false; break; case SensorType.LightLevel: LightLevelActive = false; _sensorManager.UnregisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.Light)); break; } }
/// <summary> /// Start the specified sensor type reading. /// </summary> /// <param name="sensorType">Sensor type</param> public override void Start(SensorType sensorType) { switch (sensorType) { case SensorType.Accelerometer: AccelerometerActive = true; _sensorManager.RegisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.Accelerometer), SensorDelay.Game); break; case SensorType.Gyroscope: GyroActive = true; _sensorManager.RegisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.Gyroscope), SensorDelay.Game); break; case SensorType.DeviceMotion: DeviceMotionActive = true; _sensorManager.RegisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.RotationVector), SensorDelay.Game); break; case SensorType.Compass: CompassActive = true; break; case SensorType.LightLevel: LightLevelActive = true; _sensorManager.RegisterListener(_sensorListener, _sensorManager.GetDefaultSensor(AndroidSensorType.Light), SensorDelay.Normal); break; } }