checkPermissionsAndActivateServices function

Future<Result> checkPermissionsAndActivateServices(
  1. List<Feature> features
)

Checks permissions, and enables associated services. This is the only endpoint available of this package.

Implementation

Future<Result> checkPermissionsAndActivateServices(
    List<Feature> features) async {
  if (features.length == 0) throw ArgumentError('No input features provided.');

  Map<Feature, bool> results = Map();
  for (var feature in features) {
    bool result =
        await checkPermissions(feature) && await activateService(feature);
    results.putIfAbsent(feature, () => result);
  }

  return Result(results, allOk: !results.values.contains(false));
}