Skip to content

Commit 0e46932

Browse files
authored
Merge pull request #330 from BlinkID/release/v6.11.0
Release/v6.11.0
2 parents b20a5c1 + e3a4caf commit 0e46932

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+2974
-1021
lines changed

BlinkIDSample/BlinkID-ComposeFragmentSample/build.gradle

+6-6
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,13 @@ dependencies {
4242
implementation("com.microblink:blinkid:${rootProject.ext.blinkIdVersion}@aar") {
4343
transitive = true
4444
}
45-
implementation 'androidx.core:core-ktx:1.10.0'
45+
implementation 'androidx.core:core-ktx:1.13.1'
4646
implementation 'androidx.compose.material3:material3'
47-
implementation 'androidx.appcompat:appcompat:1.6.1'
48-
implementation platform('androidx.compose:compose-bom:2024.01.00')
49-
implementation 'androidx.activity:activity-compose:1.8.2'
50-
implementation 'androidx.fragment:fragment-ktx:1.6.2'
51-
implementation 'androidx.compose.ui:ui-viewbinding:1.5.4'
47+
implementation 'androidx.appcompat:appcompat:1.7.0'
48+
implementation platform('androidx.compose:compose-bom:2024.09.02')
49+
implementation 'androidx.activity:activity-compose:1.9.2'
50+
implementation 'androidx.fragment:fragment-ktx:1.8.3'
51+
implementation 'androidx.compose.ui:ui-viewbinding:1.7.2'
5252
implementation 'androidx.compose.ui:ui'
5353

5454
implementation project(':LibUtils')

BlinkIDSample/BlinkID-ComposeMinimalSample/build.gradle

+4-4
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ dependencies {
4141
implementation("com.microblink:blinkid:${rootProject.ext.blinkIdVersion}@aar") {
4242
transitive = true
4343
}
44-
implementation 'androidx.core:core-ktx:1.10.0'
44+
implementation 'androidx.core:core-ktx:1.13.1'
4545
implementation 'androidx.compose.material3:material3'
46-
implementation platform('androidx.compose:compose-bom:2024.01.00')
47-
implementation 'androidx.appcompat:appcompat:1.6.1'
48-
implementation 'androidx.activity:activity-compose:1.8.2'
46+
implementation platform('androidx.compose:compose-bom:2024.09.02')
47+
implementation 'androidx.appcompat:appcompat:1.7.0'
48+
implementation 'androidx.activity:activity-compose:1.9.2'
4949
implementation 'androidx.compose.ui:ui'
5050
implementation 'androidx.compose.ui:ui-graphics'
5151

BlinkIDSample/BlinkID-MinimalSampleAdvanced/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ dependencies {
5151
transitive = true
5252
}
5353

54-
implementation 'androidx.activity:activity-ktx:1.7.0-alpha02'
54+
implementation 'androidx.activity:activity-ktx:1.9.2'
5555

5656
implementation project(':LibUtils')
5757

BlinkIDSample/BlinkID-aMinimalSample/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ dependencies {
4949
transitive = true
5050
}
5151

52-
implementation 'androidx.activity:activity-ktx:1.8.2'
52+
implementation 'androidx.activity:activity-ktx:1.9.2'
5353

5454
// uncomment this to use custom LibBlinkID build
5555
// implementation project(':LibBlinkID')
Binary file not shown.

BlinkIDSample/LibUtils/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ dependencies {
3131
implementation(platform("org.jetbrains.kotlin:kotlin-bom:1.8.0"))
3232

3333
implementation "androidx.appcompat:appcompat:${rootProject.ext.appCompatVersion}"
34-
implementation 'com.google.android.material:material:1.0.0'
35-
implementation 'androidx.preference:preference:1.1.0'
34+
implementation 'com.google.android.material:material:1.12.0'
35+
implementation 'androidx.preference:preference:1.2.1'
3636
}
Binary file not shown.

BlinkIDSample/LibUtils/src/main/java/com/microblink/blinkid/result/extract/blinkid/BlinkIdExtractor.java

+12
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,14 @@ protected void addLocation(int key, StringResult value) {
168168
root.put("cyrilic", cyrilic);
169169
}
170170

171+
if (!value.value(AlphabetType.Greek).isEmpty()) {
172+
JSONObject greek = new JSONObject();
173+
greek.put("value", value.value(AlphabetType.Greek));
174+
greek.put("side", value.side(AlphabetType.Greek) != null ? value.side(AlphabetType.Greek) : "null");
175+
greek.put("location", value.location(AlphabetType.Greek) != null ? value.location(AlphabetType.Greek).toString() : "null");
176+
root.put("cyrilic", greek);
177+
}
178+
171179
add(key, root.toString(2).replaceAll("\\\\", ""));
172180

173181
} catch (JSONException e) {
@@ -319,6 +327,10 @@ protected void drawLocationsOnBitmap(Canvas canvas, Paint paint, List<StringResu
319327
paint.setColor(Color.BLUE);
320328
canvas.drawRect(stringResult.location(AlphabetType.Cyrillic).toRectF(), paint);
321329
}
330+
if (!stringResult.value(AlphabetType.Greek).isEmpty() && stringResult.location(AlphabetType.Greek) != null && stringResult.side(AlphabetType.Greek) == side) {
331+
paint.setColor(Color.YELLOW);
332+
canvas.drawRect(stringResult.location(AlphabetType.Greek).toRectF(), paint);
333+
}
322334
}
323335
}
324336
}

BlinkIDSample/LibUtils/src/main/java/com/microblink/blinkid/result/extract/blinkid/generic/BlinkIdMultiSideRecognizerResultExtractor.java

+26
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import android.graphics.Paint;
99

1010
import com.microblink.blinkid.entities.recognizers.blinkid.generic.BlinkIdMultiSideRecognizer;
11+
import com.microblink.blinkid.entities.recognizers.blinkid.generic.DependentInfo;
1112
import com.microblink.blinkid.entities.recognizers.blinkid.generic.DriverLicenseDetailedInfo;
1213
import com.microblink.blinkid.entities.recognizers.blinkid.generic.Side;
1314
import com.microblink.blinkid.entities.recognizers.blinkid.generic.StringResult;
@@ -28,6 +29,7 @@
2829
import org.json.JSONObject;
2930

3031
import java.util.ArrayList;
32+
import java.util.Arrays;
3133
import java.util.List;
3234

3335
public class BlinkIdMultiSideRecognizerResultExtractor extends BlinkIdExtractor<BlinkIdMultiSideRecognizer.Result, BlinkIdMultiSideRecognizer> {
@@ -187,6 +189,10 @@ private void extractMixedResults(BlinkIdMultiSideRecognizer.Result result) {
187189
add(R.string.PPIssuingAuthority, result.getIssuingAuthority());
188190
add(R.string.PPRemarks, result.getRemarks());
189191
add(R.string.PPResidencePermitType, result.getResidencePermitType());
192+
add(R.string.PPManufacturingYear, result.getManufacturingYear());
193+
add(R.string.PPVehicleType, result.getVehicleType());
194+
add(R.string.PPEligibilityCategory, result.getEligibilityCategory());
195+
add(R.string.PPSpecificDocumentValidity, result.getSpecificDocumentValidity());
190196
add(R.string.PPVisaType, result.getVisaType());
191197

192198
DriverLicenseDetailedInfo driverLicenseInfo = result.getDriverLicenseDetailedInfo();
@@ -237,6 +243,8 @@ private void extractMixedResults(BlinkIdMultiSideRecognizer.Result result) {
237243

238244
add(R.string.PPDataMatch, result.getDataMatch().toString());
239245

246+
add(R.string.PPDependentsInfo, Arrays.toString(result.getDependentsInfo()));
247+
240248
add(R.string.MBBarcodeStepUsed, result.isBarcodeStepUsed());
241249
add(R.string.MBFrontCameraFrame, result.getFrontCameraFrame());
242250
add(R.string.MBBackCameraFrame, result.getBackCameraFrame());
@@ -294,6 +302,10 @@ private void extractMixedNonEmptyResults(BlinkIdMultiSideRecognizer.Result resul
294302
addIfNotEmpty(R.string.PPIssuingAuthority, result.getIssuingAuthority());
295303
addIfNotEmpty(R.string.PPRemarks, result.getRemarks());
296304
addIfNotEmpty(R.string.PPResidencePermitType, result.getResidencePermitType());
305+
addIfNotEmpty(R.string.PPManufacturingYear, result.getManufacturingYear());
306+
addIfNotEmpty(R.string.PPVehicleType, result.getVehicleType());
307+
addIfNotEmpty(R.string.PPEligibilityCategory, result.getEligibilityCategory());
308+
addIfNotEmpty(R.string.PPSpecificDocumentValidity, result.getSpecificDocumentValidity());
297309
addIfNotEmpty(R.string.PPVisaType, result.getVisaType());
298310

299311
DriverLicenseDetailedInfo driverLicenseInfo = result.getDriverLicenseDetailedInfo();
@@ -344,6 +356,11 @@ private void extractMixedNonEmptyResults(BlinkIdMultiSideRecognizer.Result resul
344356

345357
addIfNotEmpty(R.string.PPDataMatch, result.getDataMatch().toString());
346358

359+
DependentInfo[] dependentsInfo = result.getDependentsInfo();
360+
if (dependentsInfo.length > 0) {
361+
add(R.string.PPDependentsInfo, Arrays.toString(result.getDependentsInfo()));
362+
}
363+
347364
add(R.string.MBBarcodeStepUsed, result.isBarcodeStepUsed());
348365
add(R.string.MBFrontCameraFrame, result.getFrontCameraFrame());
349366
add(R.string.MBBackCameraFrame, result.getBackCameraFrame());
@@ -393,8 +410,17 @@ private void extractVisualResults(VizResult result) {
393410
addIfNotEmpty(R.string.PPIssuingAuthority, result.getIssuingAuthority());
394411
addIfNotEmpty(R.string.PPRemarks, result.getRemarks());
395412
addIfNotEmpty(R.string.PPResidencePermitType, result.getResidencePermitType());
413+
addIfNotEmpty(R.string.PPManufacturingYear, result.getManufacturingYear());
414+
addIfNotEmpty(R.string.PPVehicleType, result.getVehicleType());
415+
addIfNotEmpty(R.string.PPEligibilityCategory, result.getEligibilityCategory());
416+
addIfNotEmpty(R.string.PPSpecificDocumentValidity, result.getSpecificDocumentValidity());
396417
addIfNotEmpty(R.string.PPVisaType, result.getVisaType());
397418

419+
DependentInfo[] dependentsInfo = result.getDependentsInfo();
420+
if (dependentsInfo.length > 0) {
421+
add(R.string.PPDependentsInfo, Arrays.toString(dependentsInfo));
422+
}
423+
398424
DriverLicenseDetailedInfo driverLicenseInfo = result.getDriverLicenseDetailedInfo();
399425
if (!driverLicenseInfo.isEmpty()) {
400426
addIfNotEmpty(R.string.PPDriverLicenseDetailedInfo, driverLicenseInfo.toString());

BlinkIDSample/LibUtils/src/main/java/com/microblink/blinkid/result/extract/blinkid/generic/BlinkIdSingleSideRecognizerResultExtractor.java

+26
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import android.graphics.Paint;
99

1010
import com.microblink.blinkid.entities.recognizers.blinkid.generic.BlinkIdSingleSideRecognizer;
11+
import com.microblink.blinkid.entities.recognizers.blinkid.generic.DependentInfo;
1112
import com.microblink.blinkid.entities.recognizers.blinkid.generic.DriverLicenseDetailedInfo;
1213
import com.microblink.blinkid.entities.recognizers.blinkid.generic.Side;
1314
import com.microblink.blinkid.entities.recognizers.blinkid.generic.StringResult;
@@ -28,6 +29,7 @@
2829
import org.json.JSONObject;
2930

3031
import java.util.ArrayList;
32+
import java.util.Arrays;
3133
import java.util.List;
3234

3335
public class BlinkIdSingleSideRecognizerResultExtractor extends BlinkIdExtractor<BlinkIdSingleSideRecognizer.Result, BlinkIdSingleSideRecognizer> {
@@ -169,6 +171,10 @@ private void extractMixedResults(BlinkIdSingleSideRecognizer.Result result) {
169171
add(R.string.PPIssuingAuthority, result.getIssuingAuthority());
170172
add(R.string.PPRemarks, result.getRemarks());
171173
add(R.string.PPResidencePermitType, result.getResidencePermitType());
174+
add(R.string.PPManufacturingYear, result.getManufacturingYear());
175+
add(R.string.PPVehicleType, result.getVehicleType());
176+
add(R.string.PPEligibilityCategory, result.getEligibilityCategory());
177+
add(R.string.PPSpecificDocumentValidity, result.getSpecificDocumentValidity());
172178
add(R.string.PPVisaType, result.getVisaType());
173179

174180
DriverLicenseDetailedInfo driverLicenseInfo = result.getDriverLicenseDetailedInfo();
@@ -202,6 +208,8 @@ private void extractMixedResults(BlinkIdSingleSideRecognizer.Result result) {
202208

203209
add(R.string.MBAdditionalProcessingInfo, result.getAdditionalProcessingInfo().toString());
204210

211+
add(R.string.PPDependentsInfo, Arrays.toString(result.getDependentsInfo()));
212+
205213
add(R.string.MBBarcodeStepUsed, result.isBarcodeStepUsed());
206214
add(R.string.MBCameraFrame, result.getCameraFrame());
207215
add(R.string.MBBarcodeCameraFrame, result.getBarcodeCameraFrame());
@@ -258,6 +266,10 @@ private void extractMixedNonEmptyResults(BlinkIdSingleSideRecognizer.Result resu
258266
addIfNotEmpty(R.string.PPIssuingAuthority, result.getIssuingAuthority());
259267
addIfNotEmpty(R.string.PPRemarks, result.getRemarks());
260268
addIfNotEmpty(R.string.PPResidencePermitType, result.getResidencePermitType());
269+
addIfNotEmpty(R.string.PPManufacturingYear, result.getManufacturingYear());
270+
addIfNotEmpty(R.string.PPVehicleType, result.getVehicleType());
271+
addIfNotEmpty(R.string.PPEligibilityCategory, result.getEligibilityCategory());
272+
addIfNotEmpty(R.string.PPSpecificDocumentValidity, result.getSpecificDocumentValidity());
261273
addIfNotEmpty(R.string.PPVisaType, result.getVisaType());
262274

263275
DriverLicenseDetailedInfo driverLicenseInfo = result.getDriverLicenseDetailedInfo();
@@ -292,6 +304,11 @@ private void extractMixedNonEmptyResults(BlinkIdSingleSideRecognizer.Result resu
292304

293305
addIfNotEmpty(R.string.MBAdditionalProcessingInfo, result.getAdditionalProcessingInfo().toString());
294306

307+
DependentInfo[] dependentsInfo = result.getDependentsInfo();
308+
if (dependentsInfo.length > 0) {
309+
add(R.string.PPDependentsInfo, Arrays.toString(result.getDependentsInfo()));
310+
}
311+
295312
add(R.string.MBBarcodeStepUsed, result.isBarcodeStepUsed());
296313
add(R.string.MBCameraFrame, result.getCameraFrame());
297314
add(R.string.MBBarcodeCameraFrame, result.getBarcodeCameraFrame());
@@ -340,8 +357,17 @@ private void extractVisualResults(VizResult result) {
340357
addIfNotEmpty(R.string.PPIssuingAuthority, result.getIssuingAuthority());
341358
addIfNotEmpty(R.string.PPRemarks, result.getRemarks());
342359
addIfNotEmpty(R.string.PPResidencePermitType, result.getResidencePermitType());
360+
addIfNotEmpty(R.string.PPManufacturingYear, result.getManufacturingYear());
361+
addIfNotEmpty(R.string.PPVehicleType, result.getVehicleType());
362+
addIfNotEmpty(R.string.PPEligibilityCategory, result.getEligibilityCategory());
363+
addIfNotEmpty(R.string.PPSpecificDocumentValidity, result.getSpecificDocumentValidity());
343364
addIfNotEmpty(R.string.PPVisaType, result.getVisaType());
344365

366+
DependentInfo[] dependentsInfo = result.getDependentsInfo();
367+
if (dependentsInfo.length > 0) {
368+
add(R.string.PPDependentsInfo, Arrays.toString(dependentsInfo));
369+
}
370+
345371
DriverLicenseDetailedInfo driverLicenseInfo = result.getDriverLicenseDetailedInfo();
346372
if (!driverLicenseInfo.isEmpty()) {
347373
addIfNotEmpty(R.string.PPDriverLicenseDetailedInfo, driverLicenseInfo.toString());

BlinkIDSample/LibUtils/src/main/res/values/resultActivityStrings.xml

+5
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@
9999
<string name="PPDocumentType">Document Type</string>
100100
<string name="PPMRZParsed">MRZ parsed</string>
101101
<string name="PPMRZVerified">MRZ verified</string>
102+
<string name="PPDependentsInfo">Dependents info</string>
102103
<string name="PPDocumentBothSidesMatch">Document Both Sides Match</string>
103104
<string name="PPDataMatch">Data match</string>
104105
<string name="PPDocumentNumberMatch">Document number data match</string>
@@ -299,6 +300,10 @@
299300
<string name="PPDocumentSubtype">Document subtype</string>
300301
<string name="PPRemarks">Remarks</string>
301302
<string name="PPResidencePermitType">Residence permit type</string>
303+
<string name="PPManufacturingYear">Manufacturing year</string>
304+
<string name="PPVehicleType">Vehicle type</string>
305+
<string name="PPEligibilityCategory">Eligibility category</string>
306+
<string name="PPSpecificDocumentValidity">Specific document validity</string>
302307
<string name="PPVisaType">Visa type</string>
303308

304309
<string name="MBRecognitionStatus">Recognition status</string>

BlinkIDSample/build.gradle

+5-5
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ buildscript {
88
google()
99
}
1010
dependencies {
11-
classpath 'com.android.tools.build:gradle:8.2.2'
11+
classpath 'com.android.tools.build:gradle:8.6.1'
1212
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1313
}
1414
}
@@ -25,8 +25,8 @@ allprojects {
2525
// versions of libraries that all modules require
2626

2727
project.ext {
28-
blinkIdVersion = '6.10.0'
29-
compileSdkVersion = 34
30-
targetSdkVersion = 34
31-
appCompatVersion = '1.6.1'
28+
blinkIdVersion = '6.11.0'
29+
compileSdkVersion = 35
30+
targetSdkVersion = 35
31+
appCompatVersion = '1.7.0'
3232
}

BlinkIDSample/gradle.properties

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ android.enableJetifier=true
33
android.nonFinalResIds=false
44
android.nonTransitiveRClass=false
55
android.useAndroidX=true
6-
kotlin.jvm.target.validation.mode = IGNORE
6+
kotlin.jvm.target.validation.mode = IGNORE
7+
org.gradle.jvmargs=-Xmx4608m
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#Thu Dec 08 21:56:25 CET 2022
22
distributionBase=GRADLE_USER_HOME
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
44
distributionPath=wrapper/dists
55
zipStorePath=wrapper/dists
66
zipStoreBase=GRADLE_USER_HOME

LibBlinkID-javadoc.jar

7.51 KB
Binary file not shown.

LibBlinkID.aar

183 KB
Binary file not shown.

README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ Add _BlinkID_ as a dependency and make sure `transitive` is set to true
115115

116116
```
117117
dependencies {
118-
implementation('com.microblink:blinkid:6.10.0@aar') {
118+
implementation('com.microblink:blinkid:6.11.0@aar') {
119119
transitive = true
120120
}
121121
}
@@ -127,7 +127,7 @@ Android studio should automatically import javadoc from maven dependency. If tha
127127

128128
1. In Android Studio project sidebar, ensure [project view is enabled](https://developer.android.com/studio/projects#ProjectView)
129129
2. Expand `External Libraries` entry (usually this is the last entry in project view)
130-
3. Locate `blinkid-6.10.0` entry, right click on it and select `Library Properties...`
130+
3. Locate `blinkid-6.11.0` entry, right click on it and select `Library Properties...`
131131
4. A `Library Properties` pop-up window will appear
132132
5. Click the second `+` button in bottom left corner of the window (the one that contains `+` with little globe)
133133
6. Window for defining documentation URL will appear
@@ -1356,7 +1356,7 @@ Execution failed for task ':app:mergeDebugNativeLibs'.
13561356
> A failure occurred while executing com.android.build.gradle.internal.tasks.MergeJavaResWorkAction
13571357
> 2 files found with path 'lib/arm64-v8a/libc++_shared.so' from inputs:
13581358
- <path>/.gradle/caches/transforms-3/3d428f9141586beb8805ce57f97bedda/transformed/jetified-opencv-4.5.3.0/jni/arm64-v8a/libc++_shared.so
1359-
- <path>/.gradle/caches/transforms-3/609476a082a81bd7af00fd16a991ee43/transformed/jetified-blinkid-6.10.0/jni/arm64-v8a/libc++_shared.so
1359+
- <path>/.gradle/caches/transforms-3/609476a082a81bd7af00fd16a991ee43/transformed/jetified-blinkid-6.11.0/jni/arm64-v8a/libc++_shared.so
13601360
If you are using jniLibs and CMake IMPORTED targets, see
13611361
https://developer.android.com/r/tools/jniLibs-vs-imported-targets
13621362
```

0 commit comments

Comments
 (0)