performScan static method
Future<void>
performScan(
- String sdkLicenseKey,
- BlinkidFlutter blinkIdPlugin, {
- required MicroblinkErrorCallback onError,
- required MicroblinkSuccessCallback onSuccess,
Implementation
static Future<void> performScan(
String sdkLicenseKey,
BlinkidFlutter blinkIdPlugin, {
required MicroblinkErrorCallback onError,
required MicroblinkSuccessCallback onSuccess,
}) async {
try {
/// Set the BlinkID SDK settings
final sdkSettings = BlinkIdSdkSettings(sdkLicenseKey);
sdkSettings.downloadResources = true;
/// Create and modify the Session Settings
final sessionSettings = BlinkIdSessionSettings();
sessionSettings.scanningMode = ScanningMode.automatic;
/// Create and modify the scanning settings
final scanningSettings = BlinkIdScanningSettings();
scanningSettings.anonymizationMode = AnonymizationMode.fullResult;
scanningSettings.glareDetectionLevel = DetectionLevel.mid;
scanningSettings.blurDetectionLevel = DetectionLevel.mid;
/// Create and modify the Image settings
final imageSettings = CroppedImageSettings();
imageSettings.returnDocumentImage = true;
imageSettings.returnSignatureImage = true;
imageSettings.returnFaceImage = true;
/// Place the image settings in the scanning settings
scanningSettings.croppedImageSettings = imageSettings;
/// Place the Scanning settings in the Session settings
sessionSettings.scanningSettings = scanningSettings;
/// Place the optional ClassFilter class
/// The filter is currently modified to only accept Canada documents, and USA California documents
//final classFilter =
ClassFilter.withIncludedDocumentClasses([
DocumentFilter(Country.canada),
DocumentFilter(Country.usa, Region.california),
]);
/// Call the 'performScan' method and handle the results
/// Check how the results are handled in the blinkid_result_builder.dart file
await blinkIdPlugin
.performScan(sdkSettings, sessionSettings) //, classFilter)
.then((result) {
onSuccess(result);
/*resetImages();
setState(() {
if (result != null) {
resultString = BlinkIdResultBuilder.getIdResultString(result);
setImages(result);
}
});*/
})
.catchError((scanningError) {
onError(scanningError.message);
/*setState(() {
if (scanningError is PlatformException) {
final errorMessage = scanningError.message;
resultString = "BlinkID scanning error: $errorMessage";
resetImages();
}
});*/
});
} catch (blinkidScanningError) {
if (blinkidScanningError is PlatformException) {
final errorMessage = blinkidScanningError.message;
onError(errorMessage ?? "");
/*setState(() {
resultString = "BlinkID scanning error: $errorMessage";
resetImages();
});*/
}
}
}