@microblink/blinkid-react-native 7.7.0 → 8001.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BlinkidReactNative.podspec +2 -1
- package/README.md +621 -281
- package/android/build.gradle +56 -4
- package/android/gradle.properties +3 -4
- package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkIdClassInfoIdMappings.kt +33 -0
- package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkIdDeserializationUtilities.kt +370 -258
- package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkIdSerializationUtilities.kt +149 -41
- package/android/src/main/java/com/microblink/blinkid/reactnative/BlinkidReactNativeModule.kt +54 -31
- package/ios/BlinkidReactNative.mm +49 -52
- package/ios/BlinkidReactNativeModule.swift +114 -57
- package/ios/Frameworks/BlinkID.xcframework/Info.plist +5 -9
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/BlinkID +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Headers/BlinkID.h +893 -13
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Info.plist +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64.swiftdoc +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/{arm64-apple-ios.private.swiftinterface → arm64.swiftinterface} +2421 -2076
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/module.modulemap +1 -7
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/PrivacyInfo.xcprivacy +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/BlinkID +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Headers/BlinkID.h +893 -13
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Info.plist +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64.swiftdoc +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/{arm64-apple-ios-simulator.swiftinterface → arm64.swiftinterface} +2421 -2076
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/x86_64.swiftdoc +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/{x86_64-apple-ios-simulator.private.swiftinterface → x86_64.swiftinterface} +2421 -2076
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/module.modulemap +1 -7
- package/ios/Frameworks/BlinkIDUX.xcframework/Info.plist +5 -5
- package/ios/Frameworks/BlinkIDUX.xcframework/_CodeSignature/CodeDirectory +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/_CodeSignature/CodeResources +276 -276
- package/ios/Frameworks/BlinkIDUX.xcframework/_CodeSignature/CodeSignature +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Assets.car +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Info.plist +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ak.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/am.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ar.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/bn.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/cs.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/da.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/de.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/el.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en-GB.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es-MX.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fa.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fi.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fil.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr-CA.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ha.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/he.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hi.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hu.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/id.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/is.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/it.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ja.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ka-GE.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/kk.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/km-KH.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ko.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/lv.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ms.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nb.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ne.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nl.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pl.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ps-AF.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt-BR.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ro.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ru.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/si.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sk.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sl.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sv.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sw.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/th.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/tr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uk.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ur.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uz.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/vi.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/yo.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hans.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hant.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Info.plist +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.abi.json +3860 -1881
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.package.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.private.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Assets.car +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/Info.plist +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/_CodeSignature/CodeDirectory +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/_CodeSignature/CodeResources +114 -114
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ak.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/am.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ar.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/bn.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/cs.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/da.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/de.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/el.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en-GB.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/en.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es-MX.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/es.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fa.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fi.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fil.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr-CA.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/fr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ha.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/he.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hi.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/hu.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/id.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/is.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/it.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ja.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ka-GE.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/kk.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/km-KH.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ko.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/lv.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ms.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nb.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ne.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/nl.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pl.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ps-AF.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt-BR.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/pt.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ro.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ru.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/si.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sk.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sl.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sv.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/sw.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/th.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/tr.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uk.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/ur.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/uz.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/vi.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/yo.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hans.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/BlinkIDUX_BlinkIDUX.bundle/zh-Hant.lproj/Localizable.strings +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Info.plist +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.abi.json +3860 -1881
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.package.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/arm64-apple-ios-simulator.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.abi.json +3860 -1881
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.package.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/Modules/BlinkIDUX.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +87 -69
- package/ios/Frameworks/BlinkIDUX.xcframework/ios-arm64_x86_64-simulator/BlinkIDUX.framework/_CodeSignature/CodeResources +1 -1
- package/ios/Serialization/BlinkIdDeserializationUtils.swift +614 -0
- package/ios/{BlinkIdSerializationUtilities.swift → Serialization/BlinkIdSerializationUtils.swift} +294 -255
- package/lib/module/NativeBlinkidReactNative.js.map +1 -1
- package/lib/module/blinkIdResult.js +1 -822
- package/lib/module/blinkIdResult.js.map +1 -1
- package/lib/module/blinkIdSettings.js +1 -496
- package/lib/module/blinkIdSettings.js.map +1 -1
- package/lib/module/index.js +94 -17
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +715 -3373
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/src/NativeBlinkidReactNative.d.ts +36 -5
- package/lib/typescript/src/NativeBlinkidReactNative.d.ts.map +1 -1
- package/lib/typescript/src/blinkIdResult.d.ts +17 -20
- package/lib/typescript/src/blinkIdResult.d.ts.map +1 -1
- package/lib/typescript/src/blinkIdSettings.d.ts +195 -317
- package/lib/typescript/src/blinkIdSettings.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +48 -10
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +1062 -1210
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/package.json +5 -4
- package/src/NativeBlinkidReactNative.ts +39 -5
- package/src/blinkIdResult.ts +19 -466
- package/src/blinkIdSettings.ts +218 -389
- package/src/index.tsx +221 -35
- package/src/types.ts +1253 -1463
- package/android/.gradle/8.9/checksums/checksums.lock +0 -0
- package/android/.gradle/8.9/checksums/md5-checksums.bin +0 -0
- package/android/.gradle/8.9/checksums/sha1-checksums.bin +0 -0
- package/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
- package/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
- package/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
- package/android/.gradle/8.9/gc.properties +0 -0
- package/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/android/.gradle/buildOutputCleanup/cache.properties +0 -2
- package/android/.gradle/vcs-1/gc.properties +0 -0
- package/android/.project +0 -28
- package/ios/BlinkIdDeserializationUtilities.swift +0 -374
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Headers/BlinkID-Swift.h +0 -43937
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Headers/MBSampleBufferWrapper.h +0 -28
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios.abi.json +0 -78651
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios.swiftinterface +0 -2304
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/Modules/module.private.modulemap +0 -12
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/PrivateHeaders/SwiftCxxBridge.hpp +0 -19
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/_CodeSignature/CodeResources +0 -245
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64/BlinkID.framework/conan.xcconfig +0 -40
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Headers/BlinkID-Swift.h +0 -87870
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Headers/MBSampleBufferWrapper.h +0 -28
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios-simulator.abi.json +0 -78651
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +0 -2304
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/x86_64-apple-ios-simulator.abi.json +0 -78651
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/BlinkID.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +0 -2304
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/Modules/module.private.modulemap +0 -12
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/PrivateHeaders/SwiftCxxBridge.hpp +0 -19
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/_CodeSignature/CodeResources +0 -300
- package/ios/Frameworks/BlinkID.xcframework/ios-arm64_x86_64-simulator/BlinkID.framework/conan.xcconfig +0 -40
- package/lib/module/blinkIdUtilities.js +0 -21
- package/lib/module/blinkIdUtilities.js.map +0 -1
- package/lib/typescript/src/blinkIdUtilities.d.ts +0 -8
- package/lib/typescript/src/blinkIdUtilities.d.ts.map +0 -1
- package/src/android/.project +0 -28
- package/src/blinkIdUtilities.ts +0 -20
package/README.md
CHANGED
|
@@ -1,39 +1,60 @@
|
|
|
1
1
|
<p align="center" >
|
|
2
|
-
<img src="https://raw.githubusercontent.com/wiki/
|
|
2
|
+
<img src="https://raw.githubusercontent.com/wiki/microblink/blinkid-android/images/logo-microblink.png" alt="Microblink" title="Microblink">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
5
|
# _BlinkID_ React Native plugin
|
|
6
6
|
|
|
7
|
-
The BlinkID SDK is a comprehensive solution for implementing secure document scanning
|
|
8
|
-
It offers powerful capabilities for capturing and analyzing a wide range of identification documents. The
|
|
7
|
+
The BlinkID SDK is a comprehensive solution for implementing secure document scanning in React Native cross-platform applications.
|
|
8
|
+
It offers powerful capabilities for capturing and analyzing a wide range of identification documents. The React Native plugin wraps the native BlinkID SDK and BlinkID UX modules, providing a complete, ready-to-use scanning experience with a user-friendly interface.
|
|
9
9
|
|
|
10
|
-
**Please note that, for maximum performance and full access to all features, it’s best to go with one of our native SDKs (for [iOS](https://github.com/
|
|
10
|
+
**Please note that, for maximum performance and full access to all features, it’s best to go with one of our native SDKs (for [iOS](https://github.com/microblink/blinkid-ios) or [Android](https://github.com/microblink/blinkid-android)).**
|
|
11
11
|
|
|
12
12
|
However, since the wrapper is open source, you can add the features you need on your own.
|
|
13
13
|
|
|
14
|
+
> **Current version:** `@microblink/blinkid-react-native@8001.0.0` (BlinkID SDK v8001).
|
|
15
|
+
> If you are upgrading from v8000, see [What's new in v8001](#whats-new-in-v8001).
|
|
16
|
+
> If you are upgrading from v7.x, see [Migrating from v7.x](#migrating-from-v7x) (then apply the v8001 notes).
|
|
14
17
|
|
|
15
18
|
# Table of contents
|
|
16
19
|
- [Licensing](#licensing)
|
|
17
20
|
- [Requirements](#requirements)
|
|
18
21
|
- [Quickstart with the sample application](#quickstart-with-the-sample-application)
|
|
22
|
+
- [Android sample application](#android-sample-application)
|
|
23
|
+
- [On an emulator](#on-an-emulator)
|
|
24
|
+
- [On a physical device via USB](#on-a-physical-device-via-usb)
|
|
25
|
+
- [iOS sample application](#ios-sample-application)
|
|
19
26
|
- [Plugin integration](#plugin-integration)
|
|
27
|
+
- [Android setup](#android-setup)
|
|
28
|
+
- [iOS setup](#ios-setup)
|
|
29
|
+
- [Permissions](#permissions)
|
|
20
30
|
- [Plugin usage](#plugin-usage)
|
|
31
|
+
- [Imports and license key](#imports-and-license-key)
|
|
32
|
+
- [Configure scanning modules](#configure-scanning-modules)
|
|
33
|
+
- [Default BlinkID UX (camera scanning)](#default-blinkid-ux-camera-scanning)
|
|
34
|
+
- [BlinkID DirectAPI (static images)](#blinkid-directapi-static-images)
|
|
35
|
+
- [Document redaction](#document-redaction)
|
|
21
36
|
- [Plugin specifics](#plugin-specifics)
|
|
22
37
|
- [Scanning methods](#scanning-methods)
|
|
23
38
|
- [SDK loading & unloading](#sdk-loading--unloading)
|
|
24
|
-
- [BlinkID
|
|
25
|
-
- [BlinkID
|
|
39
|
+
- [BlinkID settings](#blinkid-settings)
|
|
40
|
+
- [BlinkID results](#blinkid-results)
|
|
41
|
+
- [What's new in v8001](#whats-new-in-v8001)
|
|
42
|
+
- [What's new in v8000](#whats-new-in-v8000)
|
|
43
|
+
- [Migrating from v7.x](#migrating-from-v7x)
|
|
26
44
|
- [Additional information and Support](#additional-information-and-support)
|
|
27
45
|
|
|
28
46
|
## <a name="licensing"></a> Licensing
|
|
29
|
-
A valid license key is required to initialize the BlinkID plugin.
|
|
47
|
+
A valid license key is required to initialize the BlinkID plugin.
|
|
48
|
+
|
|
49
|
+
A free trial license key can be requested after registering at the [Microblink Developer Hub](https://developer.microblink.com/).
|
|
30
50
|
|
|
31
51
|
|
|
32
52
|
## <a name="requirements"></a> Requirements
|
|
33
53
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
54
|
+
BlinkID React Native v8001 was built and tested with [React Native v0.82.x](https://github.com/facebook/react-native/releases/tag/v0.82.1)
|
|
55
|
+
- The BlinkID React Native SDK is also compatible with React Native applications running on the old architecture as it contains backward compatibility with Native Module implementation.
|
|
56
|
+
|
|
57
|
+
For additional help with React-Native setup, view the official documentation [here](https://reactnative.dev/docs/set-up-your-environment).
|
|
37
58
|
|
|
38
59
|
**Device requirements**
|
|
39
60
|
|
|
@@ -41,20 +62,22 @@ The BlinkID React Native plugin requires:
|
|
|
41
62
|
- iOS version 16.0 and above
|
|
42
63
|
- Android API version 24 and above
|
|
43
64
|
|
|
44
|
-
|
|
65
|
+
For more detailed information about the BlinkID Android and iOS requirements, view the native SDK documentation here ([Android](https://github.com/microblink/blinkid-android?tab=readme-ov-file#-device-requirements) & [iOS](https://github.com/microblink/blinkid-ios?tab=readme-ov-file#requirements)).
|
|
45
66
|
|
|
46
67
|
## <a name="quickstart-with-the-sample-application"></a> Quickstart with the sample application
|
|
47
|
-
The sample application demonstrates how the BlinkID plugin is implemented
|
|
68
|
+
The sample application demonstrates how the BlinkID plugin is implemented and shows how to configure scanning modules and obtain results.
|
|
48
69
|
|
|
49
70
|
It contains the implementation for:
|
|
50
|
-
1.
|
|
51
|
-
2. **Multiside DirectAPI scanning**
|
|
52
|
-
3. **Singleside DirectAPI scanning**
|
|
71
|
+
1. **Default BlinkID UX scanning** — camera-based scanning with configurable modules.
|
|
72
|
+
2. **Multiside DirectAPI scanning** — extracting document information from two static images (from the gallery).
|
|
73
|
+
3. **Singleside DirectAPI scanning** — extracting document information from a single static image (from the gallery).
|
|
74
|
+
|
|
75
|
+
The sample also includes a **module settings panel** where you can toggle and configure the document capture, barcode, MRZ, and VIZ modules, along with optional class filters and redaction settings.
|
|
53
76
|
|
|
54
|
-
To obtain and run the sample application, follow the steps below
|
|
55
|
-
Make sure you have Node & Watchman installed before running the sample application:
|
|
77
|
+
To obtain and run the sample application, follow the steps below.
|
|
78
|
+
Make sure you have **Node & Watchman** installed before running the sample application:
|
|
56
79
|
```bash
|
|
57
|
-
# install
|
|
80
|
+
# install Watchman
|
|
58
81
|
brew install watchman
|
|
59
82
|
|
|
60
83
|
# install Node
|
|
@@ -64,23 +87,34 @@ brew install node
|
|
|
64
87
|
**To install & run the sample application:**
|
|
65
88
|
1. Git clone the repository:
|
|
66
89
|
```bash
|
|
67
|
-
git clone https://github.com/
|
|
90
|
+
git clone https://github.com/microblink/blinkid-react-native.git
|
|
91
|
+
```
|
|
92
|
+
2. Position to the obtained `blinkid-react-native` folder
|
|
93
|
+
```bash
|
|
94
|
+
cd blinkid-react-native
|
|
68
95
|
```
|
|
69
|
-
|
|
96
|
+
3. Run the `initBlinkIdReactNativeSample.sh` script to create a sample app, with required configurations applied.
|
|
70
97
|
```bash
|
|
71
|
-
|
|
98
|
+
./initBlinkIdReactNativeSample.sh
|
|
72
99
|
```
|
|
73
|
-
|
|
100
|
+
4. After the script finishes running, position to the `BlinkIdSample` folder.
|
|
74
101
|
|
|
75
|
-
|
|
102
|
+
### <a name="android-sample-application"></a> Android sample application
|
|
76
103
|
|
|
77
|
-
|
|
104
|
+
Running the sample application on Android
|
|
78
105
|
|
|
106
|
+
#### <a name="on-an-emulator"></a> On an emulator:
|
|
107
|
+
|
|
108
|
+
1. Execute the following command:
|
|
109
|
+
```bash
|
|
110
|
+
npx react-native start
|
|
111
|
+
```
|
|
112
|
+
2. In another terminal, run:
|
|
79
113
|
```bash
|
|
80
114
|
npx react-native run-android
|
|
81
115
|
```
|
|
82
116
|
|
|
83
|
-
**
|
|
117
|
+
**Alternative: Run directly via Android Studio:**
|
|
84
118
|
|
|
85
119
|
1. Execute the following command:
|
|
86
120
|
```bash
|
|
@@ -88,7 +122,27 @@ npx react-native start
|
|
|
88
122
|
```
|
|
89
123
|
2. Open the `android` folder via Android Studio in the `BlinkIdSample` folder to run the Android sample application.
|
|
90
124
|
|
|
91
|
-
|
|
125
|
+
#### <a name="on-a-physical-device-via-usb"></a> On a physical device via USB:
|
|
126
|
+
|
|
127
|
+
1. Connect your device via USB and enable USB debugging in Developer Options.
|
|
128
|
+
2. Forward the Metro bundler port:
|
|
129
|
+
```bash
|
|
130
|
+
adb reverse tcp:8081 tcp:8081
|
|
131
|
+
```
|
|
132
|
+
3. Start Metro in one terminal:
|
|
133
|
+
```bash
|
|
134
|
+
npx react-native start
|
|
135
|
+
```
|
|
136
|
+
4. In another terminal, build and run on the device:
|
|
137
|
+
```bash
|
|
138
|
+
npx react-native run-android
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
or open it in Android Studio and run it on the physical device from there.
|
|
142
|
+
|
|
143
|
+
### <a name="ios-sample-application"></a> iOS sample application
|
|
144
|
+
|
|
145
|
+
Running the sample application on iOS
|
|
92
146
|
|
|
93
147
|
1. For running the sample application on iOS, execute the following command:
|
|
94
148
|
```bash
|
|
@@ -100,336 +154,622 @@ npx react-native start
|
|
|
100
154
|
|
|
101
155
|
## <a name="plugin-integration"></a> Plugin integration
|
|
102
156
|
|
|
103
|
-
1. To add the BlinkID plugin to a React Native project, first create empty project if needed:
|
|
157
|
+
1. To add the BlinkID plugin to a React Native project, first create an empty project if needed:
|
|
104
158
|
```bash
|
|
105
|
-
npx @react-native-community/cli init YourAppName --package-name YourPackageName --title YourAppTitle --version "
|
|
159
|
+
npx @react-native-community/cli init YourAppName --package-name YourPackageName --title YourAppTitle --version "0.82.0"
|
|
106
160
|
```
|
|
107
161
|
|
|
108
|
-
|
|
162
|
+
2. Install the `@microblink/blinkid-react-native` dependency:
|
|
109
163
|
```bash
|
|
110
|
-
|
|
164
|
+
npm install --save @microblink/blinkid-react-native@8001.0.0
|
|
111
165
|
```
|
|
112
166
|
|
|
113
|
-
|
|
167
|
+
3. Complete the platform-specific setup below.
|
|
114
168
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
repositories
|
|
118
|
-
|
|
119
|
-
|
|
169
|
+
### <a name="android-setup"></a> Android setup
|
|
170
|
+
|
|
171
|
+
Add **Maven Central** to your project repositories.
|
|
172
|
+
|
|
173
|
+
In `android/settings.gradle` (or your root `build.gradle`, depending on your React Native version):
|
|
174
|
+
|
|
175
|
+
```groovy
|
|
176
|
+
dependencyResolutionManagement {
|
|
177
|
+
repositories {
|
|
178
|
+
google()
|
|
179
|
+
mavenCentral()
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
Ensure your app uses **Kotlin v2.2.21** or newer, **minSdkVersion 24** or newer, and **compileSdkVersion 36** or newer. Use the Android Gradle Plugin and Gradle versions shipped with your React Native release (for example, React Native 0.82.x uses AGP 8.12 and Gradle 9.0).
|
|
185
|
+
|
|
186
|
+
`blinkid-ux` ships its Compose-based scanning UI as a precompiled AAR, so client apps do not need to enable the Compose compiler plugin, `buildFeatures.compose`, or a Compose BOM unless they compile their own Compose code.
|
|
187
|
+
|
|
188
|
+
Set the Kotlin version in your project-level `android/build.gradle`:
|
|
189
|
+
|
|
190
|
+
```groovy
|
|
191
|
+
buildscript {
|
|
192
|
+
ext {
|
|
193
|
+
kotlinVersion = "2.2.21"
|
|
194
|
+
}
|
|
120
195
|
}
|
|
121
196
|
```
|
|
122
197
|
|
|
123
|
-
|
|
198
|
+
The sample initialization script (`initBlinkIdReactNativeSample.sh`) contains the complete, tested Android configuration if you need a reference implementation.
|
|
199
|
+
|
|
200
|
+
### <a name="ios-setup"></a> iOS setup
|
|
201
|
+
|
|
202
|
+
1. Set the minimum iOS deployment target to **16.0** in your `ios/Podfile`:
|
|
203
|
+
```ruby
|
|
204
|
+
platform :ios, '16.0'
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
2. Install pods:
|
|
208
|
+
```bash
|
|
209
|
+
cd ios && pod install
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
The plugin ships with vendored `BlinkID.xcframework` and `BlinkIDUX.xcframework` frameworks.
|
|
213
|
+
|
|
214
|
+
### <a name="permissions"></a> Permissions
|
|
215
|
+
|
|
216
|
+
Add the required usage descriptions to your app:
|
|
217
|
+
|
|
218
|
+
**iOS** — in `Info.plist`:
|
|
219
|
+
```xml
|
|
220
|
+
<key>NSCameraUsageDescription</key>
|
|
221
|
+
<string>Camera access is required for document scanning</string>
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
If you use DirectAPI with images from the photo library, also add:
|
|
225
|
+
```xml
|
|
226
|
+
<key>NSPhotoLibraryUsageDescription</key>
|
|
227
|
+
<string>Photo library access is required for document image upload</string>
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
**Android** — camera permission is typically merged from the BlinkID UX library. If needed, add to `AndroidManifest.xml`:
|
|
231
|
+
```xml
|
|
232
|
+
<uses-permission android:name="android.permission.CAMERA" />
|
|
233
|
+
```
|
|
124
234
|
|
|
125
235
|
## <a name="plugin-usage"></a> Plugin usage
|
|
126
|
-
|
|
236
|
+
|
|
237
|
+
**Note:** The plugin usage process can be found in the sample app `App.tsx` file [here](https://github.com/microblink/blinkid-react-native/blob/master/sample_files/App.tsx).
|
|
238
|
+
|
|
239
|
+
### <a name="imports-and-license-key"></a> Imports and license key
|
|
240
|
+
|
|
241
|
+
After adding the blinkid-react-native dependency, import the API and set your platform-specific license key:
|
|
242
|
+
|
|
127
243
|
```typescript
|
|
244
|
+
import { Platform } from 'react-native';
|
|
128
245
|
import {
|
|
129
246
|
performScan,
|
|
130
247
|
performDirectApiScan,
|
|
248
|
+
loadBlinkIdSdk,
|
|
249
|
+
unloadBlinkIdSdk,
|
|
250
|
+
refreshLicenseLease,
|
|
251
|
+
CountryID,
|
|
252
|
+
DocumentTypeID,
|
|
253
|
+
RegionID,
|
|
254
|
+
type BlinkIdScanningResult,
|
|
255
|
+
type BlinkIdSdkSettings,
|
|
256
|
+
type BlinkIdSessionSettings,
|
|
257
|
+
type BlinkIdScanningSettings,
|
|
258
|
+
type BlinkIdScanningUxSettings,
|
|
131
259
|
} from '@microblink/blinkid-react-native';
|
|
260
|
+
|
|
261
|
+
const licenseKey = Platform.select({
|
|
262
|
+
ios: 'your-ios-key',
|
|
263
|
+
android: 'your-android-key',
|
|
264
|
+
})!;
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
All settings are **plain objects**. You do not need class constructors.
|
|
268
|
+
|
|
269
|
+
Use `CountryID` / `RegionID` / `DocumentTypeID` for class filters and redaction document filters. Nested `Country` / `Region` / `DocumentType` types (`{ id?, rawValue }`) appear only on **scan results** (`documentClassInfo`).
|
|
270
|
+
|
|
271
|
+
### <a name="configure-scanning-modules"></a> Configure scanning modules
|
|
272
|
+
|
|
273
|
+
Scanning behavior is configured through `BlinkIdScanningSettings`, which contains up to four module settings. Include only the modules you want to use — omitting a module disables it.
|
|
274
|
+
|
|
275
|
+
```typescript
|
|
276
|
+
const scanningSettings: BlinkIdScanningSettings = {
|
|
277
|
+
// Document capture: detection, image quality, cropped images
|
|
278
|
+
documentCaptureModule: {
|
|
279
|
+
cropType: 'not-cropped', // camera UX must use not-cropped; see DirectAPI for cropped/unknown
|
|
280
|
+
inputImageSelectionStrategy: 'balanced', // camera / video only
|
|
281
|
+
documentImageReturnEnabled: true,
|
|
282
|
+
faceImageExtractionEnabled: true,
|
|
283
|
+
dotsPerInch: 250,
|
|
284
|
+
blurSensitivityLevel: 'mid',
|
|
285
|
+
imageWithBlurRejected: true,
|
|
286
|
+
glareSensitivityLevel: 'mid',
|
|
287
|
+
imageWithGlareRejected: true,
|
|
288
|
+
passportDataPageScanOnly: true,
|
|
289
|
+
},
|
|
290
|
+
|
|
291
|
+
// MRZ extraction (passports, visas, etc.)
|
|
292
|
+
mrzModule: {
|
|
293
|
+
presenceMandatory: false,
|
|
294
|
+
},
|
|
295
|
+
|
|
296
|
+
// Barcode extraction (PDF417, QR, Aztec, etc.)
|
|
297
|
+
barcodeModule: {
|
|
298
|
+
pdf417ScanningEnabled: true,
|
|
299
|
+
qrScanningEnabled: true,
|
|
300
|
+
aztecScanningEnabled: false,
|
|
301
|
+
barcodeImageReturnEnabled: false,
|
|
302
|
+
},
|
|
303
|
+
|
|
304
|
+
// VIZ extraction (visual fields on the document)
|
|
305
|
+
vizModule: {
|
|
306
|
+
signatureImageExtractionEnabled: true,
|
|
307
|
+
characterValidationEnabled: true,
|
|
308
|
+
resultAggregationEnabled: true,
|
|
309
|
+
},
|
|
310
|
+
|
|
311
|
+
// Max character mismatches allowed per field during cross-side data matching (default: 0)
|
|
312
|
+
maxAllowedMismatchesPerField: 0,
|
|
313
|
+
};
|
|
314
|
+
|
|
315
|
+
const sessionSettings: BlinkIdSessionSettings = {
|
|
316
|
+
scanningMode: 'automatic', // or 'single'
|
|
317
|
+
scanningSettings,
|
|
318
|
+
// Timeouts are in milliseconds. Set to 0 to disable.
|
|
319
|
+
stepTimeoutDuration: 60000, // default: 60 s
|
|
320
|
+
inactivityTimeoutDuration: 10000, // default: 10 s
|
|
321
|
+
};
|
|
132
322
|
```
|
|
133
|
-
|
|
323
|
+
|
|
324
|
+
**Module-only scanning examples:**
|
|
325
|
+
|
|
326
|
+
- **Barcode only** — include `barcodeModule`, omit `mrzModule` and `vizModule`.
|
|
327
|
+
- **Document capture only** (similar to BlinkID Capture) — include only `documentCaptureModule`.
|
|
328
|
+
|
|
329
|
+
> **Note:** When using PDF417 and QR barcode scanning, enable both `pdf417ScanningEnabled` and `qrScanningEnabled` together. The analyzer treats them as a combined detection stage.
|
|
330
|
+
|
|
331
|
+
For DirectAPI with pre-cropped document images, set `documentCaptureModule.cropType` to `"cropped"` (or `"unknown"` if cropping is uncertain). Camera scanning (`performScan`) must keep `cropType: "not-cropped"`.
|
|
332
|
+
|
|
333
|
+
Module configuration helpers can be found in [ScanningModulesConfig.ts](https://github.com/microblink/blinkid-react-native/blob/master/sample_files/ScanningModulesConfig.ts).
|
|
334
|
+
|
|
335
|
+
### <a name="default-blinkid-ux-camera-scanning"></a> Default BlinkID UX (camera scanning)
|
|
336
|
+
|
|
134
337
|
```typescript
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
338
|
+
const sdkSettings: BlinkIdSdkSettings = {
|
|
339
|
+
licenseKey,
|
|
340
|
+
resourcesConfig: { download: true },
|
|
341
|
+
// otaResourcesConfig is optional — native defaults enable OTA update checks
|
|
342
|
+
};
|
|
343
|
+
|
|
344
|
+
const scanningUxSettings: BlinkIdScanningUxSettings = {
|
|
345
|
+
showHelpButton: true,
|
|
346
|
+
showOnboardingDialog: true,
|
|
347
|
+
allowHapticFeedback: true,
|
|
348
|
+
preferredCamera: 'back',
|
|
349
|
+
};
|
|
350
|
+
|
|
351
|
+
const classFilter = {
|
|
352
|
+
includeDocuments: [
|
|
353
|
+
{ country: CountryID.Croatia, documentType: DocumentTypeID.Id },
|
|
354
|
+
{ country: CountryID.USA, region: RegionID.Texas, documentType: DocumentTypeID.Dl },
|
|
355
|
+
],
|
|
356
|
+
};
|
|
357
|
+
|
|
358
|
+
try {
|
|
359
|
+
const result: BlinkIdScanningResult = await performScan({
|
|
360
|
+
sdkSettings,
|
|
361
|
+
sessionSettings,
|
|
362
|
+
scanningUxSettings,
|
|
363
|
+
classFilter,
|
|
364
|
+
// redactionSettingsResolver, // optional — see Document redaction
|
|
139
365
|
});
|
|
366
|
+
|
|
367
|
+
console.log(result.firstName?.value);
|
|
368
|
+
console.log(result.documentClassInfo?.country?.id);
|
|
369
|
+
console.log(result.documentClassInfo?.country?.rawValue);
|
|
370
|
+
console.log(result.firstDocumentImage); // base64, if enabled
|
|
371
|
+
} catch (error) {
|
|
372
|
+
console.log(`Error during scan: ${error}`);
|
|
373
|
+
}
|
|
140
374
|
```
|
|
141
|
-
**Default BlinkID UX**
|
|
142
|
-
1. Set all of the necessary BlinkID settings (SDK settings, session settings, and the scanning settings). If the mentioned settings are not modified, the default values will be used:
|
|
143
|
-
```typescript
|
|
144
375
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
* Create and modify the Session Settings
|
|
154
|
-
*/
|
|
155
|
-
const sessionSettings = new BlinkIdSessionSettings();
|
|
156
|
-
sessionSettings.scanningMode = ScanningMode.Automatic;
|
|
157
|
-
/**
|
|
158
|
-
* Create and modify the scanning settings
|
|
159
|
-
*/
|
|
160
|
-
const scanningSettings = new BlinkIdScanningSettings();
|
|
161
|
-
scanningSettings.glareDetectionLevel = DetectionLevel.Mid;
|
|
162
|
-
scanningSettings.anonymizationMode = AnonymizationMode.FullResult;
|
|
163
|
-
|
|
164
|
-
/**
|
|
165
|
-
* Create and modify the Image settings
|
|
166
|
-
*/
|
|
167
|
-
const croppedImageSettings = new CroppedImageSettings();
|
|
168
|
-
croppedImageSettings.returnDocumentImage = true;
|
|
169
|
-
croppedImageSettings.returnFaceImage = true;
|
|
170
|
-
croppedImageSettings.returnSignatureImage = true;
|
|
171
|
-
/**
|
|
172
|
-
* Place the image settings in the scanning settings
|
|
173
|
-
*/
|
|
174
|
-
scanningSettings.croppedImageSettings = croppedImageSettings;
|
|
175
|
-
|
|
176
|
-
/**
|
|
177
|
-
* Place the scanning settings in the session settings
|
|
178
|
-
*/
|
|
179
|
-
sessionSettings.scanningSettings = scanningSettings;
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Modify the BlinkID UI settings for UI customization.
|
|
183
|
-
* This parameter is optional.
|
|
184
|
-
*/
|
|
185
|
-
const blinkIdScanningUxSettings = new BlinkIdScanningUxSettings();
|
|
186
|
-
blinkIdScanningUxSettings.showHelpButton = true;
|
|
187
|
-
blinkIdScanningUxSettings.showOnboardingDialog = true;
|
|
188
|
-
blinkIdScanningUxSettings.allowHapticFeedback = true;
|
|
189
|
-
blinkIdScanningUxSettings.preferredCamera = PreferredCamera.Back;
|
|
190
|
-
|
|
191
|
-
/**
|
|
192
|
-
* Add the document class filter. This parameter is optional.
|
|
193
|
-
*/
|
|
194
|
-
const classFilter = new ClassFilter();
|
|
195
|
-
classFilter.includeDocuments = [
|
|
196
|
-
new DocumentFilter(Country.Croatia, undefined, DocumentType.Id),
|
|
197
|
-
new DocumentFilter(Country.USA, Region.Texas, DocumentType.Dl),
|
|
198
|
-
];
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
2. Call the `performScan` scanning method, handle the results and catch any errors:
|
|
202
|
-
```typescript
|
|
203
|
-
/**
|
|
204
|
-
* Call the performScan method, where the SDK and session settings
|
|
205
|
-
* need to be passed.
|
|
206
|
-
*
|
|
207
|
-
* Here, you can also pass the optional BlinkIdUiSettings and ClassFilter
|
|
208
|
-
* parameters.
|
|
209
|
-
*/
|
|
210
|
-
await performScan(sdkSettings, sessionSettings, blinkIdScanningUxSettings)
|
|
211
|
-
.then((result: BlinkIdScanningResult) => {
|
|
212
|
-
// handle the results here.
|
|
213
|
-
console.log(result.firstName?.value);
|
|
214
|
-
})
|
|
215
|
-
.catch((error) => {
|
|
216
|
-
// handle any errors here.
|
|
217
|
-
console.log(`Error during scan: ${error}`);
|
|
218
|
-
});
|
|
219
|
-
```
|
|
220
|
-
**BlinkID DirectAPI**
|
|
221
|
-
1. Set all of the necessary BlinkID settings (SDK settings, session settings, and the scanning settings). If the mentioned settings are not modified, the default values will be used:
|
|
376
|
+
### <a name="blinkid-directapi-static-images"></a> BlinkID DirectAPI (static images)
|
|
377
|
+
|
|
378
|
+
DirectAPI extracts data from Base64-encoded static images instead of using the camera UI.
|
|
379
|
+
|
|
380
|
+
- Pass **two images** with `scanningMode: 'automatic'` (front side first, back side second).
|
|
381
|
+
- Pass **one image** with `scanningMode: 'single'`.
|
|
382
|
+
- Set `documentCaptureModule.cropType` to `"cropped"` when images are already cropped and perspective-corrected, or `"unknown"` when cropping is uncertain. Use `"not-cropped"` for raw photos.
|
|
383
|
+
|
|
222
384
|
```typescript
|
|
385
|
+
const firstImageBase64 = 'your-base64-image';
|
|
386
|
+
const secondImageBase64 = 'your-base64-image'; // optional for single-side
|
|
387
|
+
|
|
388
|
+
try {
|
|
389
|
+
const result = await performDirectApiScan({
|
|
390
|
+
sdkSettings: {
|
|
391
|
+
licenseKey,
|
|
392
|
+
resourcesConfig: { download: true },
|
|
393
|
+
},
|
|
394
|
+
sessionSettings: {
|
|
395
|
+
scanningMode: 'automatic',
|
|
396
|
+
scanningSettings: {
|
|
397
|
+
documentCaptureModule: {
|
|
398
|
+
documentImageReturnEnabled: true,
|
|
399
|
+
cropType: 'not-cropped', // or 'cropped' / 'unknown' for DirectAPI
|
|
400
|
+
},
|
|
401
|
+
mrzModule: {},
|
|
402
|
+
barcodeModule: {
|
|
403
|
+
pdf417ScanningEnabled: true,
|
|
404
|
+
qrScanningEnabled: true,
|
|
405
|
+
aztecScanningEnabled: false,
|
|
406
|
+
},
|
|
407
|
+
vizModule: {},
|
|
408
|
+
},
|
|
409
|
+
},
|
|
410
|
+
firstImage: firstImageBase64,
|
|
411
|
+
secondImage: secondImageBase64,
|
|
412
|
+
// redactionSettings, // optional — see Document redaction
|
|
413
|
+
});
|
|
414
|
+
|
|
415
|
+
console.log(result.fullName?.value);
|
|
416
|
+
} catch (error) {
|
|
417
|
+
console.log(`Error during scan: ${error}`);
|
|
418
|
+
}
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
### <a name="document-redaction"></a> Document redaction
|
|
422
|
+
|
|
423
|
+
Anonymization was renamed to **redaction** in v8000. For camera scanning, use a `RedactionSettingsResolver` to apply per-document redaction rules. For DirectAPI, pass a single `RedactionSettings` object.
|
|
223
424
|
|
|
224
|
-
/**
|
|
225
|
-
* Set the BlinkID SDK settings
|
|
226
|
-
* Add the license key here from the code above
|
|
227
|
-
*/
|
|
228
|
-
const sdkSettings = new BlinkIdSdkSettings(licenseKey);
|
|
229
|
-
sdkSettings.downloadResources = true;
|
|
230
|
-
|
|
231
|
-
/**
|
|
232
|
-
* Create and modify the Session Settings
|
|
233
|
-
*/
|
|
234
|
-
const sessionSettings = new BlinkIdSessionSettings();
|
|
235
|
-
|
|
236
|
-
/**
|
|
237
|
-
* Important: if two images are being passed, use the `Automatic`
|
|
238
|
-
* scanning mode
|
|
239
|
-
* if just one image is being passed, use the `Single` scanning mode.
|
|
240
|
-
*/
|
|
241
|
-
sessionSettings.scanningMode = ScanningMode.Automatic;
|
|
242
|
-
|
|
243
|
-
/**
|
|
244
|
-
* Create and modify the scanning settings
|
|
245
|
-
*/
|
|
246
|
-
const scanningSettings = new BlinkIdScanningSettings();
|
|
247
|
-
scanningSettings.glareDetectionLevel = DetectionLevel.Mid;
|
|
248
|
-
/**
|
|
249
|
-
* if the input images consist solely
|
|
250
|
-
* of the cropped document image, set the
|
|
251
|
-
* `scanCroppedDocumentImage` to true.
|
|
252
|
-
*/
|
|
253
|
-
// scanningSettings.scanCroppedDocumentImage = true;
|
|
254
|
-
|
|
255
|
-
/**
|
|
256
|
-
* Create and modify the Image settings
|
|
257
|
-
*/
|
|
258
|
-
const croppedImageSettings = new CroppedImageSettings();
|
|
259
|
-
croppedImageSettings.returnDocumentImage = true;
|
|
260
|
-
croppedImageSettings.returnFaceImage = true;
|
|
261
|
-
croppedImageSettings.returnSignatureImage = true;
|
|
262
|
-
/**
|
|
263
|
-
* Place the image settings in the scanning settings
|
|
264
|
-
*/
|
|
265
|
-
scanningSettings.croppedImageSettings = croppedImageSettings;
|
|
266
|
-
|
|
267
|
-
/**
|
|
268
|
-
* Place the scanning settings in the session settings
|
|
269
|
-
*/
|
|
270
|
-
sessionSettings.scanningSettings = scanningSettings;
|
|
271
|
-
|
|
272
|
-
/**
|
|
273
|
-
* Add the Base64 string of the first side of the document
|
|
274
|
-
*/
|
|
275
|
-
const firstImageBase64 = "your-base64-image";
|
|
276
|
-
|
|
277
|
-
/**
|
|
278
|
-
* Add the Base64 string of the second side of the document
|
|
279
|
-
* This paramater is optional if only one side
|
|
280
|
-
* of the document is requred.
|
|
281
|
-
*/
|
|
282
|
-
const secondImageBase64 = "your-base64-image";
|
|
283
|
-
```
|
|
284
|
-
|
|
285
|
-
2. Call the `performDirectApiScan` scanning method, handle the results and catch any errors:
|
|
286
425
|
```typescript
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
.
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
426
|
+
import { FieldType, CountryID, RegionID, DocumentTypeID, type RedactionSettingsResolver } from '@microblink/blinkid-react-native';
|
|
427
|
+
|
|
428
|
+
const redactionSettingsResolver: RedactionSettingsResolver = {
|
|
429
|
+
documentRedactionList: [
|
|
430
|
+
{
|
|
431
|
+
mode: 'fullResult',
|
|
432
|
+
fields: [FieldType.FirstName, FieldType.LastName],
|
|
433
|
+
documentNumberRedactionSettings: {
|
|
434
|
+
prefixDigitsVisible: 0,
|
|
435
|
+
suffixDigitsVisible: 1,
|
|
436
|
+
},
|
|
437
|
+
redactMrzResult: false,
|
|
438
|
+
redactBarcodeResult: false,
|
|
439
|
+
documentFilter: {
|
|
440
|
+
country: CountryID.USA,
|
|
441
|
+
region: RegionID.California,
|
|
442
|
+
documentType: DocumentTypeID.Id,
|
|
443
|
+
},
|
|
444
|
+
},
|
|
445
|
+
],
|
|
446
|
+
};
|
|
447
|
+
|
|
448
|
+
// Camera scanning — pass redactionSettingsResolver to performScan
|
|
449
|
+
await performScan({ sdkSettings, sessionSettings, redactionSettingsResolver });
|
|
450
|
+
|
|
451
|
+
// DirectAPI — pass redactionSettings to performDirectApiScan
|
|
452
|
+
await performDirectApiScan({
|
|
453
|
+
sdkSettings,
|
|
454
|
+
sessionSettings,
|
|
455
|
+
firstImage: firstImageBase64,
|
|
456
|
+
redactionSettings: {
|
|
457
|
+
mode: 'fullResult',
|
|
458
|
+
fields: [FieldType.DocumentNumber],
|
|
459
|
+
redactMrzResult: false,
|
|
460
|
+
redactBarcodeResult: false,
|
|
461
|
+
},
|
|
462
|
+
});
|
|
463
|
+
```
|
|
464
|
+
|
|
465
|
+
Redaction modes: `none`, `imageOnly`, `resultFieldsOnly`, `fullResult`.
|
|
310
466
|
|
|
311
467
|
## <a name="plugin-specifics"></a> Plugin specifics
|
|
312
|
-
The BlinkID plugin implementation is located in the `src` folder [here](https://github.com/
|
|
468
|
+
The BlinkID plugin implementation is located in the `src` folder [here](https://github.com/microblink/blinkid-react-native/tree/master/BlinkID/src), while platform-specific implementation is located in the `android` and `ios` folders.
|
|
313
469
|
|
|
314
470
|
### <a name="scanning-methods"></a> Scanning methods
|
|
315
|
-
Currently, the BlinkID plugin contains
|
|
471
|
+
Currently, the BlinkID plugin contains two main scanning methods: `performScan` and `performDirectApiScan`.
|
|
316
472
|
|
|
317
473
|
**The `performScan` method**
|
|
318
474
|
|
|
319
|
-
|
|
320
|
-
It takes the following parameters:
|
|
321
|
-
1. BlinkID SDK settings
|
|
322
|
-
2. BlinkID session settings
|
|
323
|
-
4. The optional BlinkID UI settings for UI customization.
|
|
324
|
-
3. The optional ClassFilter object for filtering documents.
|
|
325
|
-
|
|
326
|
-
**BlinkID SDK Settings** - `BlinkIdSdkSettings`: the class that contains all of the available SDK settings. It contains settings for the license key, and how the models, that the SDK needs for the scanning process, should be obtained.
|
|
475
|
+
Launches the BlinkID scanning process with the default UX.
|
|
327
476
|
|
|
328
|
-
|
|
477
|
+
Recommended call style — single settings object:
|
|
329
478
|
|
|
330
|
-
|
|
479
|
+
```typescript
|
|
480
|
+
performScan({
|
|
481
|
+
sdkSettings, // BlinkIdSdkSettings (required)
|
|
482
|
+
sessionSettings, // BlinkIdSessionSettings (required)
|
|
483
|
+
scanningUxSettings, // BlinkIdScanningUxSettings (optional)
|
|
484
|
+
classFilter, // ClassFilter (optional)
|
|
485
|
+
redactionSettingsResolver, // RedactionSettingsResolver (optional)
|
|
486
|
+
});
|
|
487
|
+
```
|
|
331
488
|
|
|
332
|
-
|
|
489
|
+
| Parameter | Description |
|
|
490
|
+
| --- | --- |
|
|
491
|
+
| `sdkSettings` | License key, `resourcesConfig`, optional `otaResourcesConfig`, proxy URL |
|
|
492
|
+
| `sessionSettings` | Scanning mode, module settings, timeouts |
|
|
493
|
+
| `scanningUxSettings` | Help button, onboarding dialog, haptic feedback, preferred camera |
|
|
494
|
+
| `classFilter` | Include/exclude documents by country, region, and type |
|
|
495
|
+
| `redactionSettingsResolver` | Per-document redaction rules applied before the result is finalized |
|
|
333
496
|
|
|
334
|
-
|
|
497
|
+
Returns `BlinkIdScanningResult` ([implementation](https://github.com/microblink/blinkid-react-native/blob/master/BlinkID/src/index.tsx)).
|
|
335
498
|
|
|
336
499
|
**The `performDirectApiScan` method**
|
|
337
500
|
|
|
338
|
-
|
|
339
|
-
It takes the following parameters:
|
|
340
|
-
1. BlinkID SDK settings
|
|
341
|
-
2. BlinkID session settings
|
|
342
|
-
3. First image string in the Base64 format
|
|
343
|
-
4. The optional second image string in the Base64 format
|
|
501
|
+
Extracts document information from static Base64 images.
|
|
344
502
|
|
|
345
|
-
|
|
503
|
+
```typescript
|
|
504
|
+
performDirectApiScan({
|
|
505
|
+
sdkSettings, // BlinkIdSdkSettings (required)
|
|
506
|
+
sessionSettings, // BlinkIdSessionSettings (required)
|
|
507
|
+
firstImage, // Base64 string (required)
|
|
508
|
+
secondImage, // Base64 string (optional)
|
|
509
|
+
redactionSettings, // RedactionSettings (optional)
|
|
510
|
+
});
|
|
511
|
+
```
|
|
346
512
|
|
|
347
|
-
|
|
513
|
+
Returns `BlinkIdScanningResult` ([implementation](https://github.com/microblink/blinkid-react-native/blob/master/BlinkID/src/index.tsx)).
|
|
348
514
|
|
|
349
|
-
|
|
515
|
+
### <a name="sdk-loading--unloading"></a> SDK loading & unloading
|
|
350
516
|
|
|
351
|
-
The optional second image Base64 string - `String`: needed if the information from back side of the document is required and the `ScanningMode` is set to `automatic`.
|
|
352
517
|
|
|
353
|
-
|
|
518
|
+
**The `loadBlinkIdSdk` method**
|
|
354
519
|
|
|
355
|
-
|
|
356
|
-
The BlinkID SDK also contains methods for loading and unloading. These methods can be called before the scanning methods (mentioned above), and are helpful to preload the neccessary resources and decrease the waiting time for the scanning session, but also to remove any resources after the scanning sessions ends.
|
|
520
|
+
Creates or retrieves the BlinkID SDK instance. Handles initialization, resource downloading, and license verification. Call in advance to reduce first-scan latency.
|
|
357
521
|
|
|
358
|
-
|
|
522
|
+
```typescript
|
|
523
|
+
await loadBlinkIdSdk({
|
|
524
|
+
sdkSettings: {
|
|
525
|
+
licenseKey,
|
|
526
|
+
resourcesConfig: { download: true },
|
|
527
|
+
},
|
|
528
|
+
});
|
|
529
|
+
```
|
|
359
530
|
|
|
360
|
-
|
|
531
|
+
If you do not call `loadBlinkIdSdk`, it is invoked automatically when a scan starts.
|
|
361
532
|
|
|
362
|
-
|
|
533
|
+
**The `unloadBlinkIdSdk` method**
|
|
363
534
|
|
|
364
|
-
|
|
535
|
+
Terminates the SDK and releases resources. Must reinitialize before the next scan.
|
|
365
536
|
|
|
366
|
-
|
|
537
|
+
```typescript
|
|
538
|
+
await unloadBlinkIdSdk({ deleteCachedResources: false });
|
|
539
|
+
```
|
|
367
540
|
|
|
368
|
-
|
|
541
|
+
Set `deleteCachedResources` to `true` to also delete downloaded and cached SDK resources from the device.
|
|
369
542
|
|
|
370
|
-
|
|
371
|
-
After calling this method, you must reinitialize the SDK (by calling `loadBlinkIdSdk` or any of the scanning methods) before using it again.
|
|
543
|
+
`unloadBlinkIdSdk` is called automatically after each successful scan session.
|
|
372
544
|
|
|
373
|
-
|
|
545
|
+
**The `refreshLicenseLease` method**
|
|
374
546
|
|
|
375
|
-
|
|
547
|
+
Refreshes the SDK license lease. Can be called periodically to maintain an active license status; the required frequency depends on your license configuration. The SDK must already be initialized (via `loadBlinkIdSdk` or a scan) before calling this method.
|
|
548
|
+
|
|
549
|
+
```typescript
|
|
550
|
+
await refreshLicenseLease();
|
|
551
|
+
```
|
|
376
552
|
|
|
377
553
|
### <a name="blinkid-settings"></a> BlinkID Settings
|
|
378
|
-
The BlinkID SDK contains various settings, modifying different parts of scanning process:
|
|
379
|
-
1. [BlinkID SDK settings](https://github.com/BlinkID/blinkid-react-native/blob/master/BlinkID/src/blinkIdSettings.ts#L14) - `BlinkIdSdkSettings` \
|
|
380
|
-
These settings are used for the initialization of the BlinkID SDK.
|
|
381
554
|
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
555
|
+
| Setting | Type | Description |
|
|
556
|
+
| --- | --- | --- |
|
|
557
|
+
| SDK settings | `BlinkIdSdkSettings` | License key, nested `resourcesConfig` / `otaResourcesConfig`, proxy URL |
|
|
558
|
+
| Session settings | `BlinkIdSessionSettings` | Scanning mode, module settings, step/inactivity timeouts (ms; `0` disables) |
|
|
559
|
+
| Scanning settings | `BlinkIdScanningSettings` | Module configuration (see below) |
|
|
560
|
+
| UX settings | `BlinkIdScanningUxSettings` | UI customization during scanning |
|
|
561
|
+
| Class filter | `ClassFilter` | Document include/exclude rules (`CountryID` / `RegionID` / `DocumentTypeID`) |
|
|
562
|
+
| Redaction | `RedactionSettings` / `RedactionSettingsResolver` | Field and image redaction |
|
|
563
|
+
|
|
564
|
+
**SDK resource settings** (`BlinkIdSdkSettings`)
|
|
565
|
+
|
|
566
|
+
| Field | Description |
|
|
567
|
+
| --- | --- |
|
|
568
|
+
| `resourcesConfig` | Base ML resource download/cache (`download`, `serviceUrl`, `localFolder`, `requestTimeout` as [`RequestTimeout`](BlinkID/src/blinkIdSettings.ts), iOS `bundleIdentifier`) |
|
|
569
|
+
| `otaResourcesConfig` | OTA document resources (`checkForUpdates`, `strict`, `serviceUrl`, `localFolder`, …). Optional; native defaults apply when omitted |
|
|
570
|
+
|
|
571
|
+
Do not cross-wire base and OTA hosts: base defaults to `https://models.cdn.microblink.com/resources`; OTA defaults to `https://blinkid-ota.microblink.com`.
|
|
572
|
+
|
|
573
|
+
**Scanning module settings**
|
|
574
|
+
|
|
575
|
+
| Module | Type | Key settings |
|
|
576
|
+
| --- | | --- |
|
|
577
|
+
| Document capture | `DocumentCaptureModuleSettings` | `cropType`, `inputImageSelectionStrategy`, image quality, image return, face extraction, passport data page only |
|
|
578
|
+
| MRZ | `MrzModuleSettings` | `presenceMandatory` |
|
|
579
|
+
| Barcode | `BarcodeModuleSettings` | PDF417, QR, Aztec, retail barcode types, barcode image return |
|
|
580
|
+
| VIZ | `VizModuleSettings` | Signature extraction, character validation, result aggregation |
|
|
581
|
+
|
|
582
|
+
The [blinkIdSettings.ts](https://github.com/microblink/blinkid-react-native/blob/master/BlinkID/src/blinkIdSettings.ts) and [types.ts](https://github.com/microblink/blinkid-react-native/blob/master/BlinkID/src/types.ts) files contain all available settings with inline documentation.
|
|
583
|
+
|
|
584
|
+
### <a name="blinkid-results"></a> BlinkID Results
|
|
585
|
+
|
|
586
|
+
The scanning result is stored in `BlinkIdScanningResult`. It contains extracted data and images from the document.
|
|
587
|
+
|
|
588
|
+
Key result members:
|
|
589
|
+
|
|
590
|
+
1. **Document class info** — `documentClassInfo` (`DocumentClassInfo`) with nested `country` / `region` / `documentType` as `{ id?, rawValue }`
|
|
591
|
+
2. **Data match information** — `dataMatchResult` (`DataMatchResult`)
|
|
592
|
+
3. **Per-side results** — `subResults` (`SingleSideScanningResult[]`) — contains VIZ, MRZ, and barcode data per side
|
|
593
|
+
4. **Aggregated fields** — top-level fields such as `firstName`, `lastName`, `documentNumber`, `ethnicity`, `parentsInfo`, etc.
|
|
594
|
+
5. **Images** — `firstDocumentImage`, `secondDocumentImage`, `faceImage`, `signatureImage`, `firstInputImage`, `secondInputImage`, `barcodeImage`
|
|
385
595
|
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
596
|
+
Each `SingleSideScanningResult` contains:
|
|
597
|
+
- `viz` — Visual Inspection Zone data (includes `ethnicity` when available)
|
|
598
|
+
- `mrz` — Machine Readable Zone data
|
|
599
|
+
- `barcode` — Barcode data
|
|
600
|
+
- `documentImage`, `faceImage`, `signatureImage`, `inputImage`
|
|
389
601
|
|
|
390
|
-
4. [BlinkID UI settings](https://github.com/BlinkID/blinkid-react-native/blob/master/BlinkID/src/blinkIdSettings.ts#L468) - `BlinkIdUiSettings`\
|
|
391
|
-
Allows customization of various aspects of the UI used during the scanning process.
|
|
392
602
|
|
|
393
|
-
|
|
394
|
-
These settings represent the image cropping settings.
|
|
603
|
+
Full result types: [blinkIdResult.ts](https://github.com/microblink/blinkid-react-native/blob/master/BlinkID/src/blinkIdResult.ts) and [types.ts](https://github.com/microblink/blinkid-react-native/blob/master/BlinkID/src/types.ts).
|
|
395
604
|
|
|
396
|
-
|
|
605
|
+
## <a name="whats-new-in-v8001"></a> What's new in v8001
|
|
397
606
|
|
|
398
|
-
|
|
607
|
+
BlinkID v8001 builds on the modular architecture from v8000 with faster document support (including OTA resources), better frame selection, DirectAPI crop handling, Aztec barcodes, and nested document class info.
|
|
399
608
|
|
|
400
|
-
|
|
609
|
+
Highlights for React Native:
|
|
401
610
|
|
|
402
|
-
|
|
611
|
+
| Area | Change |
|
|
612
|
+
| --- | --- |
|
|
613
|
+
| **SDK settings** | Flat resource fields → nested `resourcesConfig`; new optional `otaResourcesConfig` |
|
|
614
|
+
| **Document class info** | `country` / `region` / `documentType` are `{ id?, rawValue }` (filters still use flat `CountryID` / `RegionID` / `DocumentTypeID`) |
|
|
615
|
+
| **Document capture** | `inputImageCropped` → `cropType`; added `inputImageSelectionStrategy` |
|
|
616
|
+
| **Barcode** | `aztecScanningEnabled` |
|
|
617
|
+
| **Results** | `ethnicity`; `ParentInfo.fullName`; `FieldType.Ethnicity` / `ParentFullName` |
|
|
403
618
|
|
|
404
|
-
|
|
619
|
+
#### Migrating SDK settings from v8000
|
|
405
620
|
|
|
406
|
-
|
|
621
|
+
```typescript
|
|
622
|
+
// v8000
|
|
623
|
+
const sdkSettings = { licenseKey, downloadResources: true };
|
|
624
|
+
|
|
625
|
+
// v8001
|
|
626
|
+
const sdkSettings: BlinkIdSdkSettings = {
|
|
627
|
+
licenseKey,
|
|
628
|
+
resourcesConfig: { download: true },
|
|
629
|
+
otaResourcesConfig: {
|
|
630
|
+
checkForUpdates: true, // default
|
|
631
|
+
strict: false, // default — set true to fail init on OTA download errors
|
|
632
|
+
},
|
|
633
|
+
};
|
|
634
|
+
```
|
|
635
|
+
|
|
636
|
+
| v8000 (flat) | v8001 |
|
|
637
|
+
| --- | --- |
|
|
638
|
+
| `downloadResources` | `resourcesConfig.download` |
|
|
639
|
+
| `resourceDownloadUrl` | `resourcesConfig.serviceUrl` |
|
|
640
|
+
| `resourceLocalFolder` | `resourcesConfig.localFolder` |
|
|
641
|
+
| `resourceRequestTimeout` | `resourcesConfig.requestTimeout` ([`RequestTimeout`](BlinkID/src/blinkIdSettings.ts), milliseconds) |
|
|
642
|
+
| `bundleIdentifier` | `resourcesConfig.bundleIdentifier` (iOS) |
|
|
643
|
+
|
|
644
|
+
Do **not** cross-wire hosts: base resources use `https://models.cdn.microblink.com/resources`; OTA uses `https://blinkid-ota.microblink.com`.
|
|
645
|
+
|
|
646
|
+
#### Resource download timeouts
|
|
647
|
+
|
|
648
|
+
`resourcesConfig.requestTimeout` and `otaResourcesConfig.requestTimeout` accept a [`RequestTimeout`](BlinkID/src/blinkIdSettings.ts) object (milliseconds). Omit `requestTimeout` to use native defaults (30 seconds per timeout on current BlinkID native SDKs). Omit individual fields inside `requestTimeout` to keep the native default for that timeout.
|
|
649
|
+
|
|
650
|
+
```typescript
|
|
651
|
+
resourcesConfig: {
|
|
652
|
+
download: true,
|
|
653
|
+
requestTimeout: {
|
|
654
|
+
connectionTimeoutMilliseconds: 30000,
|
|
655
|
+
writeTimeoutMilliseconds: 30000,
|
|
656
|
+
readTimeoutMilliseconds: 30000,
|
|
657
|
+
},
|
|
658
|
+
},
|
|
659
|
+
|
|
660
|
+
otaResourcesConfig: {
|
|
661
|
+
requestTimeout: {
|
|
662
|
+
connectionTimeoutMilliseconds: 30000,
|
|
663
|
+
readTimeoutMilliseconds: 60000,
|
|
664
|
+
}, // write timeout uses native default when omitted
|
|
665
|
+
},
|
|
666
|
+
```
|
|
667
|
+
|
|
668
|
+
#### Migrating document capture settings
|
|
669
|
+
|
|
670
|
+
```typescript
|
|
671
|
+
// v8000
|
|
672
|
+
documentCaptureModule: { inputImageCropped: true }
|
|
673
|
+
|
|
674
|
+
// v8001 — DirectAPI only for cropped/unknown
|
|
675
|
+
documentCaptureModule: { cropType: 'cropped' } // or 'unknown' | 'not-cropped'
|
|
676
|
+
```
|
|
677
|
+
|
|
678
|
+
Camera UX (`performScan`) must use `cropType: 'not-cropped'`.
|
|
679
|
+
|
|
680
|
+
#### Document class info in results
|
|
681
|
+
|
|
682
|
+
```typescript
|
|
683
|
+
const countryId = result.documentClassInfo?.country?.id; // CountryID when known
|
|
684
|
+
const countryRaw = result.documentClassInfo?.country?.rawValue; // always set when country present
|
|
685
|
+
```
|
|
686
|
+
|
|
687
|
+
Full changelog (documents, bug fixes, API details): [Release notes.md](https://github.com/microblink/blinkid-react-native/blob/master/Release%20notes.md) and [platform release notes](https://docs.microblink.com/blinkid/release-notes).
|
|
688
|
+
|
|
689
|
+
## <a name="whats-new-in-v8000"></a> What's new in v8000
|
|
690
|
+
|
|
691
|
+
BlinkID v8000 introduces a **modular recognition architecture**. Instead of flat scanning settings and fallback recognition modes, extraction is driven by four independent modules that you enable and configure separately:
|
|
692
|
+
|
|
693
|
+
| Module | Purpose |
|
|
694
|
+
| --- | --- |
|
|
695
|
+
| **Document capture** | Document detection, image quality checks (blur, glare, tilt, lighting), and cropped image extraction |
|
|
696
|
+
| **MRZ** | Machine Readable Zone detection and parsing (passports, visas, ID cards) |
|
|
697
|
+
| **Barcode** | 1D/2D barcode detection and parsing (PDF417, QR, retail codes, and more) |
|
|
698
|
+
| **VIZ** | Visual Inspection Zone field extraction, character validation, and signature images |
|
|
699
|
+
|
|
700
|
+
Other notable changes:
|
|
701
|
+
|
|
702
|
+
- Settings are **plain TypeScript objects** (no class constructors).
|
|
703
|
+
- Scanning methods accept a **single settings object** (recommended) or legacy positional arguments.
|
|
704
|
+
- **Anonymization** has been renamed to **redaction** (`RedactionSettings`, `RedactionSettingsResolver`).
|
|
705
|
+
- Image return and quality settings moved from `CroppedImageSettings` into `documentCaptureModule` and `vizModule`.
|
|
706
|
+
- Detection levels (`DetectionLevel`) are replaced by **sensitivity levels** (`SensitivityLevel`: `off`, `low`, `mid`, `high`).
|
|
707
|
+
- Scanning sessions include **step** and **inactivity timeouts** on `BlinkIdSessionSettings` (milliseconds; defaults `60000` and `10000`). Set either to `0` to disable.
|
|
708
|
+
|
|
709
|
+
### <a name="migrating-from-v7x"></a> Migrating from v7.x
|
|
710
|
+
|
|
711
|
+
If you are upgrading from `@microblink/blinkid-react-native@7.x` (e.g. 7.7.0), the following changes apply.
|
|
407
712
|
|
|
408
|
-
|
|
713
|
+
#### Settings are plain objects
|
|
409
714
|
|
|
410
|
-
|
|
411
|
-
|
|
715
|
+
```typescript
|
|
716
|
+
// v7
|
|
717
|
+
const sdkSettings = new BlinkIdSdkSettings(licenseKey);
|
|
718
|
+
sdkSettings.downloadResources = true;
|
|
719
|
+
|
|
720
|
+
// v8000 (flat resource fields)
|
|
721
|
+
const sdkSettings = { licenseKey, downloadResources: true };
|
|
722
|
+
|
|
723
|
+
// v8001 (nested resources — preferred)
|
|
724
|
+
const sdkSettings = {
|
|
725
|
+
licenseKey,
|
|
726
|
+
resourcesConfig: { download: true },
|
|
727
|
+
};
|
|
728
|
+
```
|
|
729
|
+
|
|
730
|
+
#### Modular scanning settings
|
|
412
731
|
|
|
413
|
-
|
|
414
|
-
The document class information.
|
|
732
|
+
Flat v7 settings map to module settings in v8000 (still valid in v8001; use `cropType` instead of `inputImageCropped`):
|
|
415
733
|
|
|
416
|
-
|
|
417
|
-
|
|
734
|
+
| v7 | v8000 / v8001 |
|
|
735
|
+
|---------------------------------------------------|--------------------------------------------------------|
|
|
736
|
+
| `blurDetectionLevel` | `documentCaptureModule.blurSensitivityLevel` |
|
|
737
|
+
| `glareDetectionLevel` | `documentCaptureModule.glareSensitivityLevel` |
|
|
738
|
+
| `tiltDetectionLevel` | `documentCaptureModule.tiltSensitivityLevel` |
|
|
739
|
+
| `skipImagesWithBlur` | `documentCaptureModule.imageWithBlurRejected` |
|
|
740
|
+
| `skipImagesWithGlare` | `documentCaptureModule.imageWithGlareRejected` |
|
|
741
|
+
| `croppedImageSettings.returnDocumentImage` | `documentCaptureModule.documentImageReturnEnabled` |
|
|
742
|
+
| `croppedImageSettings.returnFaceImage` | `documentCaptureModule.faceImageExtractionEnabled` |
|
|
743
|
+
| `croppedImageSettings.returnSignatureImage` | `vizModule.signatureImageExtractionEnabled` |
|
|
744
|
+
| `croppedImageSettings.dotsPerInch` | `documentCaptureModule.dotsPerInch` |
|
|
745
|
+
| `scanCroppedDocumentImage` | `documentCaptureModule.cropType` (`"cropped"` / `"not-cropped"` / `"unknown"`) |
|
|
746
|
+
| `enableCharacterValidation` | `vizModule.characterValidationEnabled` |
|
|
747
|
+
| `scanPassportDataPageOnly` | `documentCaptureModule.passportDataPageScanOnly` |
|
|
748
|
+
| `anonymizationMode` | Use `RedactionSettings` / `RedactionSettingsResolver` |
|
|
749
|
+
| `recognitionModeFilter` / `enableBarcodeScanOnly` | Enable/disable modules explicitly |
|
|
418
750
|
|
|
419
|
-
|
|
420
|
-
Represents the result of scanning a single side of the document.\
|
|
421
|
-
Contains the data extracted from the Visual Inspection Zone, Machine Readable Zone, barcode, the input image, and the cropped document, face, and signature images.
|
|
751
|
+
Removed types: `CroppedImageSettings`, `AnonymizationMode`, `DetectionLevel`, `RecognitionMode`.
|
|
422
752
|
|
|
423
|
-
|
|
424
|
-
|
|
753
|
+
#### Method call style
|
|
754
|
+
|
|
755
|
+
```typescript
|
|
756
|
+
// v7 — positional arguments
|
|
757
|
+
await performScan(sdkSettings, sessionSettings, uxSettings, classFilter);
|
|
425
758
|
|
|
426
|
-
|
|
759
|
+
// v8000 / v8001 — recommended object style
|
|
760
|
+
await performScan({ sdkSettings, sessionSettings, scanningUxSettings: uxSettings, classFilter });
|
|
761
|
+
```
|
|
762
|
+
|
|
763
|
+
```typescript
|
|
764
|
+
// unload API
|
|
765
|
+
await unloadBlinkIdSdk({ deleteCachedResources: false });
|
|
766
|
+
```
|
|
427
767
|
|
|
428
|
-
|
|
768
|
+
BlinkID Android SDK requires Kotlin v2.2.21+. See [Android setup](#android-setup) for more details.
|
|
429
769
|
|
|
430
|
-
|
|
770
|
+
After migrating from v7 to the modular API, also apply [What's new in v8001](#whats-new-in-v8001) (nested `resourcesConfig` / OTA, `cropType`, nested class info).
|
|
431
771
|
|
|
432
|
-
|
|
772
|
+
For the complete native migration guide from v7, see [Migrate to v8000](https://docs.microblink.com/blinkid/migration-v8000).
|
|
433
773
|
|
|
434
774
|
## <a name="additional-information-and-support"></a> Additional information and Support
|
|
435
|
-
For any additional questions and information, feel free to contact us [here](https://help.microblink.com), or directly to the Support team
|
|
775
|
+
For any additional questions and information, feel free to contact us [here](https://help.microblink.com), or directly to the Support team at support@microblink.com.
|