getGoogleHealthConnectWritePermissions method

Future<List<GoogleHealthParameterType>> getGoogleHealthConnectWritePermissions()

Implementation

Future<List<GoogleHealthParameterType>>
    getGoogleHealthConnectWritePermissions() async {
  final client = await _getClient();
  final healthPermissions = await getGoogleHealthPermissionFromClient(client);

  List<GoogleHealthParameterType> parameterTypes = [];

  for (final permission in healthPermissions) {
    if (permission.healthDataAccess == HealthDataAccess.READ_WRITE ||
        permission.healthDataAccess == HealthDataAccess.WRITE) {
      final parameterType = GoogleHealthConnect.getParameterFromDataType(
          permission.healthDataType);
      if (!parameterTypes.any((element) => element == parameterType)) {
        parameterTypes.add(parameterType);
      }
    }
  }

  return parameterTypes;
}