initializeCafSdk method

  1. @override
Future<bool?> initializeCafSdk({
  1. required CafSdkConfiguration cafSdkConfiguration,
  2. CafDocumentDetectorConfiguration? documentDetectorConfiguration,
  3. CafDocumentDetectorUIConfiguration? documentDetectorUIConfiguration,
  4. CafFaceLivenessConfiguration? faceLivenessConfiguration,
  5. CafFaceLivenessUIConfiguration? faceLivenessUIConfiguration,
})
override

Implementation

@override
Future<bool?> initializeCafSdk({
  required CafSdkConfiguration cafSdkConfiguration,
  CafDocumentDetectorConfiguration? documentDetectorConfiguration,
  CafDocumentDetectorUIConfiguration? documentDetectorUIConfiguration,
  CafFaceLivenessConfiguration? faceLivenessConfiguration,
  CafFaceLivenessUIConfiguration? faceLivenessUIConfiguration,
}) async {
    CafSdkValidator.validatePresentationOrder(cafSdkConfiguration.configuration.presentationOrder);
    final result = await methodChannel.invokeMethod('initialize', {
      "jsonString": jsonEncode(cafSdkConfiguration)
    });

    if (result == true) {
      if (documentDetectorConfiguration != null) {
        await applyCafDocumentDetector(documentDetectorConfiguration);
      }

      if (documentDetectorUIConfiguration != null) {
        await applyCafDocumentDetectorUI(documentDetectorUIConfiguration);
      }

      if (faceLivenessConfiguration != null) {
        await applyCafFaceLiveness(faceLivenessConfiguration);
      }

      if (faceLivenessUIConfiguration != null) {
        await applyCafFaceLivenessUI(faceLivenessUIConfiguration);
      }

      await startCafSdk();
    }

    return result;
}