Releases: BlinkID/blinkid-android
Releases · BlinkID/blinkid-android
v6.10.0
New features
- Improved reliability and first-time successful scanning experience
- Avoiding Double Scans of the Front Side: For a more reliable scanning process, BlinkID now prompts users to flip the document when they scan the front side twice. This improves the overall experience and reduces the chance of mistakes.
- Starting with the Right Side: If users attempt to scan the back side of a document first, BlinkID will prompt them to begin with the front side. This feature ensures that users follow the correct order, leading to a more reliable and user-friendly experience.
Expanded document coverage
New document versions for supported documents
- Sweden - Social Security Card - Back side
- Bolivia - Driver's License - Back side
- Brazil, Distrito Federal - Identity Card - Back side
Out of beta
- Colombia - Temporary Protection Permit
New beta documents support
- France - Professional ID
- Mexico - Tax ID
New document versions for beta-supported documents
- Brazil, Parana - Identity Card - Back side
- Brazil, Santa Catarina - Identity Card - Back side
New segments supported on documents
- Peru - Alien ID - MRZ
Accessibility improvements
- Enhanced button contrast - Improved contrast for the close and flashlight buttons, making them easier to distinguish.
- Improved focus order - Enhanced focus order on help and onboarding screens to ensure proper reading of instructions when using TalkBack.
- Accessible button names - Added accessible names to the help and flashlight buttons, enabling TalkBack to read them correctly.
- Glare warning toast - The toast is now correctly detected and read by TalkBack.
Bug fixes
- Fallback for barcode scanning -
Barcode ID
recognition mode will now extract information from any supported barcode if full document recognition fails. Initially available only for US and Canadian documents, this feature is now available to all documents. - MRZ field on US documents - Set to optional by default and currently refers to: Minnesota (DL & ID), New York (DL & ID), Vermont (DL) and Washington (DL & ID).
AdditionalProcessingInfo
- In cases of an empty result, this field now provides details about the reasons why scanning failed.- Improved handling of face photo occlusion - The UI message is slightly changed to prompt users to keep the face photo fully visible when there is a finger occlusion.
Other changes
- The SDK is now supported on Android 15 16KB page size devices.
- Added
imageExtractionFailures
toAdditionalProcessingInfo
- this allows clients to actively track if anyImageExtractionType
(FullDocument
,Face
,Signature
) is not visible on the presented document. - Added a new result member,
barcodeStepUsed
, to bothBlinkIdSingleSideRecognizer
andBlinkIdMultiSideRecognizer
. This member indicates whether the barcode scanning step was utilized during the process. - Added two new settings for
BlinkIdSingleSideRecognizer
andBlinkIdMultiSideRecognizer
:allowBarcodeScanOnly
- allows barcode recognition to proceed even if the initial extraction fails - set tofalse
by defaultcombineFrameResults
- enables the aggregation of data from multiple frames - set totrue
by default
v6.9.0
New Features
- Custom mandatory fields
- We’re introducing the option for customers to define their own set of mandatory fields. This feature allows greater flexibility in the scanning process by enabling the extraction of only the necessary information from identity documents. Now you can customize the process and focus on only those fields that are relevant to your use case.
- Custom mandatory fields can be set at the document level or applied universally to all document types.
- Face detector improvements
- We’ve made significant enhancements to our BlinkID face detector model. Now, the updated model detects instances where a finger is covering the face image more precisely, improving the reliability of the face detection feature.
- Added new values to
ClassInfo
enum:Region
:ALAGOAS
for Brazilian documents
Type
:AFGHAN_CITIZEN_CARD
EID
PASS
SIS_ID
Expanded Document Coverage
New Documents Support
- Austria - Polycarbonate Passport
- Canada - Polycarbonate Passport
- Ecuador - Paper Passport
- Germany - eID
- Guatemala - Alien ID
- Iraq - Polycarbonate Passport
- Namibia - Identity Card
- Nepal - Polycarbonate Passport
- Sweden - SIS ID
- USA, Delaware - Identity Card
- USA, Louisiana - Identity Card
- USA, Vermont - Identity Card
New Document Versions for Supported Documents
- Bolivia - Identity Card
- Canada, British Columbia - Public Services Card
- Finland - Identity Card
- Greece - Identity Card
- Malaysia - iKAD
- Mexico, Nuevo Leon - Driver's License
- Mexico, Tlaxcala - Driver's License
- Morocco - Driver's License
- Thailand - Polycarbonate Passport
- USA - Alaska - Driver's License
- USA - Alaska - Identity Card
- USA - Connecticut - Identity Card
- USA - Delaware - Driver's License
- USA - District of Columbia - Driver's License
- USA - Hawaii - Identity Card
- USA - Idaho - Driver's License
- USA - Indiana - Driver's License
- USA - Indiana - Identity Card
- USA - Iowa - Identity Card
- USA - Kansas - Identity Card
- USA - Kentucky - Identity Card
- USA - Kentucky - Driver's License
- USA - Maine - Identity Card
- USA - Maine - Driver's License
- USA - Michigan - Driver's License
- USA - Minnesota - Driver's License
- USA - Minnesota - Identity Card
- USA - Montana - Identity Card
- USA - Montana - Driver's License
- USA - New Hampshire - Identity Card
- USA - New Mexico - Driver's License
- USA - New Mexico - Identity Card
- USA - New York - Identity Card
- USA - North Dakota - Identity Card
- USA - Oregon - Identity Card
- USA - Pennsylvania - Driver's License
- USA - Rhode Island - Identity Card
- USA - South Carolina - Identity Card
- USA - Vermont - Driver's License
- USA - Washington - Identity Card
- USA - Wyoming - Driver's License
- USA - Wyoming - Identity Card
Out of Beta
- European Union - Health Insurance Card
New Beta Documents Support
- Democratic Republic of the Congo - Voter ID
- Philippines - Alien ID
- Philippines - Postal ID
- Philippines - Work Permit
- Philippines - Health Insurance Card
New Document Versions for Beta-Supported Documents
- Honduras - Paper Passport
- Mexico, Sonora - Driver's License
- Peru - Alien ID
- Philippines - Alien ID
New Segments Supported on Documents
- China Exit Entry Permit - MRZ
- China Mainland Travel Permit Taiwan - MRZ
- France Residence permit -
Remarks
&ResidencePermitType
- Philippines Alien ID -
VisaType
Bug Fixes
- German ID - Fixed issues in cases when documents contain multiple surnames
- Paraguay ID - Added support for parsing the smaller barcode found on the back side of the ID
- Bulgaria Driver’s License - The Address field is set to optional, improving the extraction process
- Improved MRZ parsing for the back side of the following identity documents:
- Brazil Alien ID
- Kenya ID
- Bosnia and Herzegovina ID
- Ivory Coast ID
- Paraguay ID
- Fixed
NullPointerException
when using haptic feedback on Android API < 23 - Added missing
ParaguayID
toIdBarcodeDocumentType
- Defined the
format
for all attributes to resolve thestyle attribute 'attr/mb_helpTooltipBackground not found
error
Other changes
- Set
BlinkIdUISettings.setShowMandatoryFieldsMissing
default value tofalse
. If you want detailed UI messages about missing mandatory fields, set it totrue
- Added
CustomClassRules
setting toBlinkIdSingleSideRecognizer
andBlinkIdMultiSideRecognizer
to support above mentioned custom mandatory fields - Exposed
BlinkIdUISettings.setScanUIEventListener
, which can listen for various UI events during the scanning process. Supported events are:- scan the barcode message was shown
- data match dialog was shown
- document unsupported dialog was shown
- first side scanning is done
- second side timeout dialog was shown
v6.8.0
New Features
- Glare detection
- We’ve introduced glare detection to BlinkID, which removes occlusion on document images caused by glare. You can control the strictness of glare detection with three options (relaxed, normal, and strict) to suit your use case.
- Real-time feedback during scanning includes a new UI message to help users position the document correctly and reduce glare.
- Improved blur detection
- We’ve raised the threshold for our blur model, making it stricter. This improvement ensures that sharper images are accepted for processing. You can now control the strictness of blur detection with three options (relaxed, normal, and strict).
- Real-time feedback during scanning includes a new UI message to help users position the document optimally for a clear image.
- Support for extracting the subtypes of US driver’s licenses & ID cards
- BlinkID now extracts precise information about subtypes of driver’s licenses and ID cards (e.g., conditional driver’s license, learner’s permit, provision, enhanced, etc.). This information is included in the scanning results, allowing you to tailor workflows or processes based on document limitations.
- Classifier improvements
- We upgraded our classifier model to prevent double-capturing of the front side of a document, ensuring the front and the back sides are captured correctly. If the back side of a document is not detected, the processing status will return
UnsupportedClass
.
- We upgraded our classifier model to prevent double-capturing of the front side of a document, ensuring the front and the back sides are captured correctly. If the back side of a document is not detected, the processing status will return
- Option to anonymize barcode data
- You can now anonymize specific fields in the barcode results from an identity document, in addition to the anonymized fields already supported in the Visual Inspection Zone (VIZ).
- Accessibility and UI improvements
- UI has now been improved to work better with a wide range of system font and UI elements sizes.
Breaking API changes
- Changes to the
BlinkIdSingleSideRecognizer
andBlinkIdMultiSideRecognizer
settings:- renamed
allowBlurFilter
toenableBlurFilter
- renamed
Minor API changes
- Added a new result member
documentSubtype
inBlinkIdSingleSideRecognizer.Result
,BlinkIdMultiSideRecognizer.Result,
andVIZResult
to include subtype information for US driver’s licenses or ID cards (commercial, provisional, etc.) - Changes to the
BlinkIdSingleSideRecognizer
andBlinkIdMultiSideRecognizer
settings:- added
enableGlareFilter
which is set totrue
by default - added
blurStrictnessLevel
which is set toNormal
by default (Strict
,Normal
, orRelaxed
) - added
glareStrictnessLevel
which is set toNormal
by default (Strict
,Normal
, orRelaxed
)
- added
- Changes to the
ImageAnalysisResult
:- renamed
glare
toglareDetected
- renamed
blurred
toblurDetected
- renamed
- Changes to the
ClassAnonymizationSettings
:FieldType
array may now be empty when using Builder pattern
Bug Fixes
- Fixed data match for Paraguay ID 2023 to cover inconsistencies between the MRZ and Visual Inspection Zone (VIZ)
v6.7.0
New Features
- Real ID symbol detection on US driver's license
- BlinkID can now identify Real ID symbols from US driver’s licenses, providing feedback on their presence or absence. This ensures customers can quickly determine if a Real ID symbol is available on a scanned US driver’s license to be compliant with Real ID regulations.
- UX Improvements
- Extended duration for UI messages
- UI messages now remain visible for a longer time after scanning, improving user experience. Users can now review post-scanning messages at a comfortable pace, leading to a smoother process.
- Success indicator for front side capture
- BlinkID now displays a clear success indicator after scanning the front side of a document. This visual cue enhances user confidence by providing immediate feedback during the scanning process.
- Extended duration for UI messages
- Partial anonymization of the "Document Number"
- To ensure user privacy and security, BlinkID now offers the option of partially anonymizing the document number from the scanned document.
- Mandatory Barcode Presence on US documents
- To minimize the cases of capturing the front side of the document as the back frame in the results, BlinkID now requires the presence of a barcode before saving the back frame on US documents. Processing status
BarcodeDetectionFailed
is returned when the mandatory barcode is not present on the back of US documents.
- To minimize the cases of capturing the front side of the document as the back frame in the results, BlinkID now requires the presence of a barcode before saving the back frame on US documents. Processing status
Minor API changes
- Added
BarcodeDetectionFailed
as a newProcessingStatus
- This status is triggered once the barcode was not found on the image. This processing status can only occur if the document has the mandatory barcode.
- Added new boolean member
realIdDetectionStatus
to theImageAnalysisResult
. IfImageAnalysisDetectionStatus.Detected
, Real ID symbol is present - Added new member
documentNumberAnonymizationSettings
to theClassAnonymizationSettings
for seamless integration with the document number anonymization feature. - Deprecated
DocumentScanUISettings
, please useBlinkIdUISettings
Bug Fixes
- Updated internal mapping for Myanmar passports to display nationality as "Myanmarese" instead of "Burmese" on Myanmar passports.
- On Peru ID
Date of Issue
is marked optional, offering customers more flexibility in capturing ID information. - Improved
Date of Expiry
handling logic for MRZ in cases where documents with a date of expiry year 1969 were not correctly sanitized. - Fixed Ping server URL error when using
proguard-android-optimize.txt
default proguard file.
v6.6.1
- fixed URL of the server performing online license check when it's enabled
- in v6.6.0 the URL depended on the
BUILD_TYPE
property, pointing to production server only whenBUILD_TYPE
was set todistribute
. However, apparently theBUILD_TYPE
is not a compile-time property on Android like it's on other platforms and native code, so it was affected by the setting of the app that was integrating the SDK and that caused the SDK to call to a dev server which is unavailable from the external network
- in v6.6.0 the URL depended on the
- added
android.permission.INTERNET
permission to the manifest ofLibBlinkID
- this permission is needed in order to correctly perform license key validation for licenses that require that
v6.6.0
Document Updates
New Documents Support:
- Australia - Polycarbonate Passport
- Indonesia - Polycarbonate Passport
- Mexico - Consular Voter ID
- Moldova - Polycarbonate Passport
- Pakistan - Proof Of Registration
- Panama - Polycarbonate Passport
- USA - West Virginia - ID Card
New Beta Documents Support:
- Brazil - Ceara - ID Card
- Brazil - Goias - ID Card
- Brazil - Sergipe - ID Card
- China - Exit Entry Permit
- China - Mainland Travel Permit Taiwan
- Colombia - Temporary Protection Permit
- India - DL
- India - Andhra Pradesh - DL
- India - Haryana - DL
- European Union - Health Insurance Card
New Document Versions for Supported Documents:
- Australia - Queensland - DL
- Australia - Victoria - DL
- Australia - Western Australia - DL
- Bolivia - Minor's ID
- Brazil - Alien ID
- Estonia - DL
- Finland - Alien ID
- Guatemala - Paper Passport
- India - Paper Passport - New side type
- Malta - DL
- Mexico - Guanajuato - DL
- Mexico - San Luis Potosi - DL
- New Zealand - Polycarbonate Passport
- Paraguay - ID Card
- Slovenia - Residence Permit
- USA - Green Card
- USA - Work Permit
- USA - Arizona - ID Card
- USA - Colorado - DL
- USA - Colorado - ID Card
- USA - District of Columbia - DL
- USA - District of Columbia - ID Card
- USA - Idaho - DL
- USA - Idaho - ID Card
- USA - Missouri - ID Card
- USA - Nebraska - ID Card
- USA - Nevada - ID Card
- USA - New York - ID Card
- USA - North Dakota - DL
- USA - Oklahoma - ID Card
- USA - Pennsylvania - ID Card
- USA - Utah - ID Card
- USA - Virginia - DL
- USA - Virginia - ID Card
- USA - West Virginia - DL
- USA - Wisconsin - DL
- USA - Wisconsin - ID Card
New Document Versions for Beta Supported Documents:
- Australia - Queensland - Proof of Age Card
- Brazil - ID Card
- Ireland - Residence Permit
- Mexico - Consular ID
- Mexico - Residence Permit
- Mexico - Nayarit - DL
- USA - North Dakota - ID Card
Out of Beta:
- Croatia - Residence Permit
- Moldova - Paper Passport
Platform Updates
-
Expanded geographic support with new
Region
enum values:ANDHRA_PRADESH
CEARA
GOIAS
GUERRERO_ACAPULCO_DE_JUAREZ
HARYANA
SERGIPE
-
Document recognition enhanced with new
Type
enum values:EXIT_ENTRY_PERMIT
MAINLAND_TRAVEL_PERMIT_TAIWAN
NBI_CLEARANCE
PROOF_OF_REGISTRATION
TEMPORARY_PROTECTION_PERMIT
-
UI flexibility:
- Introducing optional Torch button and cancel button through
BlinkIdUISettings
(setShowTorchButton
andsetShowCancelButton
) andReticleOverlayView
.
- Introducing optional Torch button and cancel button through
-
Data extraction improvements:
- Added
Sponsor
andBloodType
result fields toBlinkIdMultiSideRecognizer.Result
,BlinkIdSingleSideRecognizer.Result
andVizResult
- Added
Accessibility Changes:
- Refined UI to meet required contrast ratios, ensuring better readability for all users.
- Clickable button areas have been enlarged to comply with accessibility standards, providing easier interaction and ensuring that users with motor impairments can comfortably use the interface.
- Haptic feedback has been introduced throughout the scanning flow, highlighting important events and providing tactile confirmation to users
Deprecated Functionality:
IdBarcodeRecognizer
is now marked as deprecated. We recommend transitioning toBlinkIdMultiSideRecognizer
, which not only covers the functionality ofIdBarcodeRecognizer
but also offers additional features.
Minor API changes
- split up
Image
class toImage
andInputImage
InputImage
is to be used as an input to the recognizers.Image
will be the result of recognizer processingInputImage
retains ROI functionality, but is now not serializableInputImage
handles YUV planes more efficientlyImage
is now alwaysBGRA
and is serializable
- Add
shouldShowTorchButton
andshouldShowCancelButton
toReticleOverlayView
constructor.
Bug fixes
- removed UI thread blocking while waiting for recognition to complete
- this fixes the ANR that can occur when app gets resumed from background on slow network connections when using online license keys
- fix documentation generated links to Javadoc
- fixed crash that occurred when HDR image was provided as
Bitmap
to the Direct API- if provided Bitmap is not in
ARGB_8888
config, it will be automatically converted intoARGB_8888
config - only if the conversion is not possible, then the exception will be thrown
- if provided Bitmap is not in
Other changes
- native code is now built using NDK r26c and uses dynamic c++ runtime (
libc++_shared.so
)- in case when multiple different dependencies use the same runtime in the same app, the latest available version of the library should be packaged into the app
- added support for license keys that support multiple application IDs
v6.5.1
- Improved scanning of Bolivia IDs by addressing cases where the expiration date is covered by a signature, allowing the completion of the scanning process.
v6.5.0
- Improved the document side detection for US driver licenses which reduces the possibility of capturing the wrong side of the document. Barcode is now mandatory for the document back side of the US driving licenses
Bugfixes
- Fixed data matching issue in Guatamala Passport
- Fixed
ArrayIndexOutOfBoundsException
in default UI - Fixed
NullPointerException
inRecognizerRunnerView
that happened in rare cases
v6.4.0
New features
- Added new result member
cardRotation
toImageAnalysisResult
structure - New
CardOrientation
status -NotAvailable
- New
Region
enum values:
-DISTRITO_FEDERAL
-MARANHAO
-MATO_GROSSO
-MINAS_GERAIS
-PARA
-PARANA
-PERNAMBUCO
-SANTA_CATARINA
- New
Type
enum values:
-CONSULAR_VOTER_ID
-TWIC_CARD
Bugfixes
- Fixed the issue where the wrong values of
DetectionStatus
were returned and wrong instruction messages were shown. This is also a breaking change because the names and the order of the enum values have changed. - Fixed
toString
method ofDate
andDateResult
Added support for 8 new documents
- Bolivia - Paper Passport
- Brazil - Alien ID
- Brazil - Distrito Federal - Identity Card
- Brazil - Minas Gerais - Identity Card
- Cameroon - Polycarbonate Passport
- Costa Rica - Paper Passport
- UK - Proof of Age Card
- USA - Twic Card
Added support for 17 new documents in BETA
- Australia - Australian Capital Territory - Identity Card
- Australia - Queensland - Proof of Age Card
- Australia - Tasmania - Identity Card
- Australia - Western Australia - Identity Card
- Bahrain - Driver’s License
- Bahrain - Paper Passport
- Brazil - Maranhao - Identity Card
- Brazil - Mato Grosso - Identity Card
- Brazil - Para - Identity Card
- Brazil - Parana - Identity Card
- Brazil - Pernambuco - Identity Card
- Brazil - Santa Catarina - Identity Card
- Cameroon - Paper Passport
- Mexico - Quintana Roo, Benito Juarez - Driver’s License
- Mexico - Quintana Roo -Driver’s License
- Switzerland - Polycarbonate Passport
- UAE - Polycarbonate Passport
Added support for 14 new versions of already supported documents
- Brazil - Driver’s License
- Luxembourg - Identity Card
- North Macedonia - Identity Card
- Portugal - Driver’s License
- Slovakia - Identity Card
- Switzerland - Identity Card
- Switzerland - Driver’s License
- Turkey - Polycarbonate Passport
- Ukraine - Driver’s License
- USA - Arizona - Driver’s License
- USA - Arizona - Identity Card
- USA - Nebraska - Driver’s License
- USA - Pennsylvania - Identity Card
- USA - Virginia - Driver’s License
Added support for 2 new versions of already supported documents in BETA
- Iceland - Paper Passport
- Mexico - Consular ID
v6.3.0
New features
- Changes to the
BlinkIdSingleSideRecognizer
andBlinkIdMultiSideRecognizer
:- add new methods inside
StringResult
:location(AlphabetType)
- location coordinates of every non-empty result are availableside (AlphabetType)
- document side of every non-empty result is available
- new results in
Recognizer.Result
:faceImageLocation
faceImageSide
- add new methods inside
- Add new
Country
enum value -SCHENGEN_AREA
- And new
Type
enum value -IMMIGRANT_VISA
- Add Builder pattern to
ClassAnonymizationSettings
class for easier Anonymization settings setup
Bugfixes
- Fix for Anonymization settings being set to default (all) when null values for arguments are selected
- Fix crashing after device rotation when using
OneSideDocumentScan
andTwoSideDocumentScan
implementations - Remove autofill on
Russian
passportDateOfExpiry
when present on a document - Improved scanning success rate and stability when using
BlinkIdMultiSideRecognizer