getMeasurement method

  1. @override
Future<Measurement?> getMeasurement()
override

Subclasses should implement this method to collect a Measurement.

Can return null if no data is available. Can return an Error measurement if an error occurs.

Implementation

@override
Future<Measurement?> getMeasurement() async {
  final level = await battery.Battery().batteryLevel;
  final state = await battery.Battery().batteryState;
  final batteryState = BatteryState.fromBatteryState(level, state);
  if (batteryState != _priorState) {
    _priorState = batteryState;
    return Measurement.fromData(batteryState);
  }
  return null;
}