detectFaceInImageFile method
Implementation
@override
Future<Rect?> detectFaceInImageFile(String filePath) async {
if (!isSupported) return null;
try {
final Object? result = await methodChannel.invokeMethod<Object?>(
'analyzeImageFile',
{'filePath': filePath},
);
if (result is Map) {
final map = Map<String, dynamic>.from(result);
final int faceCount = (map['faceCount'] as num?)?.toInt() ?? 0;
if (faceCount <= 0) return null;
if (map.containsKey('boundingBoxLeft')) {
return Rect.fromLTRB(
(map['boundingBoxLeft'] as num).toDouble(),
(map['boundingBoxTop'] as num).toDouble(),
(map['boundingBoxRight'] as num).toDouble(),
(map['boundingBoxBottom'] as num).toDouble(),
);
}
}
return null;
} on PlatformException {
return null;
}
}