streamError function
Implementation
@visibleForTesting
// ignore: public_member_api_docs
void streamError(
StreamController<LocationResult> streamController,
// ignore: avoid_annotating_with_dynamic
dynamic error,
) {
if (error is PlatformException) {
String? permissionStatusString;
if (error.details is Map) {
final details = error.details as Map;
permissionStatusString = details['permissionStatus'] as String?;
}
final errorCode = error.code.toErrorCode();
streamController.add(
LocationResult.error(
Error(
message: error.message ??
(errorCode == ErrorCode.unknown
? 'Unknown OS level error'
: 'Unknown permission related error'),
errorCode: errorCode,
),
permissionStatus: permissionStatusString.toPermissionStatus(),
),
);
return;
}
streamController.add(
LocationResult.unknownError,
);
}