startAccelerometer method

  1. @override
Future<Stream<SensorEvent>> startAccelerometer(
  1. double samplingRate
)
override

Starts streaming accelerometer data from the smartphone at the given samplingRate (Hz). Returns a stream of SensorEvents.

Implementation

@override
Future<Stream<SensorEvent>> startAccelerometer(double samplingRate) async {
  try {
    final samplingPeriod = Duration(
      microseconds: (1000000 / samplingRate).round(),
    );
    _accStream ??= accelerometerEventStream(
      samplingPeriod: samplingPeriod,
    ).map((e) => SensorEvent(e.x, e.y, e.z, e.timestamp));
    return _accStream!;
  } catch (e) {
    if (kDebugMode) {
      print('Error starting accelerometer: $e');
    }
    rethrow;
  }
}