From 21b822aeac7aeeaf7aa7e00985ceb4f40e7e8879 Mon Sep 17 00:00:00 2001 From: danut-betuel Date: Thu, 1 Jun 2023 15:25:24 +0300 Subject: [PATCH] added androidX and cameraX --- .gitignore | 1 + build.gradle | 43 +- demo/build.gradle | 33 +- demo/src/main/AndroidManifest.xml | 6 +- .../pay/sample/demo/CardDetailsActivity.java | 11 +- .../cards/pay/sample/demo/FinalActivity.java | 6 +- .../cards/pay/sample/demo/IntroActivity.java | 6 +- .../validation/FieldValidationResult.java | 4 +- .../demo/validation/ValidationResult.java | 2 +- .../sample/demo/widget/CardDateEditText.java | 2 +- .../demo/widget/CardNumberEditText.java | 2 +- .../main/res/layout-h480dp/activity_final.xml | 2 +- .../main/res/layout-h480dp/activity_intro.xml | 6 +- .../main/res/layout/activity_card_details.xml | 20 +- demo/src/main/res/layout/activity_final.xml | 2 +- demo/src/main/res/layout/activity_intro.xml | 6 +- gradle.properties | 5 + gradle/wrapper/gradle-wrapper.properties | 3 +- sdk/build.gradle | 48 +- sdk/src/main/AndroidManifest.xml | 5 +- .../CrossPlatform/Recognizer/NameRecognizer.h | 1 + .../pay/paycardsrecognizer/sdk/Card.java | 5 +- .../sdk/ScanCardIntent.java | 4 +- .../sdk/camera/AutoFocusManager.java | 295 --------- .../camera/BlockingOperationException.java | 23 - .../sdk/camera/CameraConfigurationUtils.java | 203 ------ .../sdk/camera/CameraManager.java | 304 --------- .../sdk/camera/CameraUtils.java | 143 +---- .../sdk/camera/FpsCounter.java | 146 ----- .../sdk/camera/ImageAnalyzer.java | 206 +++++++ .../sdk/camera/OrientationHelper.java | 54 +- .../sdk/camera/ProcessFrameThread.java | 192 ------ .../RecognitionAvailabilityChecker.java | 61 +- .../sdk/camera/RecognitionCoreUtils.java | 36 +- .../sdk/camera/RenderThread.java | 583 ------------------ .../sdk/camera/ScanManager.java | 435 ------------- .../sdk/camera/ScanManagerHandler.java | 107 ---- .../sdk/camera/TorchManager.java | 85 --- .../sdk/camera/WindowRotationListener.java | 141 ----- .../sdk/camera/gles/Drawable2d.java | 120 ---- .../sdk/camera/gles/EglCore.java | 318 ---------- .../sdk/camera/gles/GlUtil.java | 146 ----- .../sdk/camera/gles/Sprite2d.java | 189 ------ .../sdk/camera/gles/Texture2dProgram.java | 249 -------- .../sdk/camera/gles/WindowSurface.java | 200 ------ .../camera/widget/CameraPreviewLayout.java | 76 +-- .../camera/widget/CardDetectionStateView.java | 34 +- .../camera/widget/CardRectCoordsMapper.java | 10 +- .../sdk/ndk/DisplayConfiguration.java | 2 +- .../sdk/ndk/DisplayConfigurationImpl.java | 27 +- .../sdk/ndk/DisplayHelper.java | 65 -- .../sdk/ndk/RecognitionConstants.java | 5 +- .../sdk/ndk/RecognitionCore.java | 10 +- .../sdk/ndk/RecognitionCoreDummy.java | 5 +- .../sdk/ndk/RecognitionCoreImpl.java | 9 +- .../sdk/ndk/RecognitionCoreNdk.java | 60 +- .../sdk/ndk/RecognitionResult.java | 4 +- .../sdk/ndk/RecognitionStatusListener.java | 3 +- .../sdk/ndk/TorchStatusListener.java | 2 +- .../sdk/ui/InitLibraryFragment.java | 95 ++- .../sdk/ui/ScanCardActivity.java | 13 +- .../sdk/ui/ScanCardFragment.java | 380 +++++++----- .../sdk/ui/ScanCardRequest.java | 3 +- .../sdk/ui/views/ButtonWithTopBorder.java | 2 +- .../ui/views/ProgressBarIndeterminate.java | 3 +- ...bletCardRecognitionHolderLinearLayout.java | 3 +- .../sdk/utils/AsyncTaskV2.java | 117 ++++ .../sdk/utils/CardUtils.java | 5 +- .../sdk/utils/Constants.java | 2 +- .../paycardsrecognizer/sdk/utils/Size.java | 3 + .../wocr_fragment_scan_card.xml | 2 +- .../wocr_fragment_scan_card.xml | 3 +- .../res/layout/wocr_fragment_scan_card.xml | 9 +- .../wocr_include_card_detection_layout.xml | 8 +- settings.gradle | 17 + 75 files changed, 957 insertions(+), 4479 deletions(-) delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/AutoFocusManager.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/BlockingOperationException.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/CameraConfigurationUtils.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/CameraManager.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/FpsCounter.java create mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/ImageAnalyzer.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/ProcessFrameThread.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/RenderThread.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/ScanManager.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/ScanManagerHandler.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/TorchManager.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/WindowRotationListener.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/gles/Drawable2d.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/gles/EglCore.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/gles/GlUtil.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/gles/Sprite2d.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/gles/Texture2dProgram.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/camera/gles/WindowSurface.java delete mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/ndk/DisplayHelper.java create mode 100644 sdk/src/main/java/cards/pay/paycardsrecognizer/sdk/utils/AsyncTaskV2.java diff --git a/.gitignore b/.gitignore index c8175b0..83230fd 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ /.idea /private.properties +sdk/.cxx diff --git a/build.gradle b/build.gradle index d55937a..18e9b74 100644 --- a/build.gradle +++ b/build.gradle @@ -1,44 +1,15 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. - -buildscript { - - repositories { - google() - jcenter() - } - dependencies { - //classpath 'com.android.tools.build:gradle:3.3.0-alpha04' - classpath 'com.android.tools.build:gradle:3.1.4' - - // NOTE: Do not place your application dependencies here; they belong - // in the individual module build.gradle files - } +plugins { + id 'com.android.application' version '8.0.0' apply false } -allprojects { - repositories { - google() - jcenter() - } +ext { + // Sdk and tools + minSdkVersion = 21 + targetSdkVersion = 33 + compileSdkVersion = 33 } task clean(type: Delete) { delete rootProject.buildDir } - -ext { - // Sdk and tools - minSdkVersion = 16 - targetSdkVersion = 28 - compileSdkVersion = 28 - - // App dependencies - supportLibVersion = '27.1.1' - yearclassVersion = "2.1.0" - - // App test dependencies - junitVersion = '4.12' - espressoVersion = '3.0.2' - robolectricVersion = "3.8" - mockitoVersion = "2.21.0" -} diff --git a/demo/build.gradle b/demo/build.gradle index 6e8d3df..5a226ca 100644 --- a/demo/build.gradle +++ b/demo/build.gradle @@ -1,6 +1,7 @@ -apply plugin: 'com.android.application' - -uploadArchives.enabled = false +plugins { + id 'com.android.application' +} +//uploadArchives.enabled = false ext.private = new Properties() if (rootProject.file('private.properties').exists()) { @@ -16,8 +17,8 @@ android { targetSdkVersion rootProject.ext.targetSdkVersion versionCode Integer.parseInt(DEMO_APP_VERSION_CODE) versionName DEMO_APP_VERSION_NAME - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - resConfigs "en" + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + resourceConfigurations += ['en'] } signingConfigs { release @@ -39,9 +40,17 @@ android { } } packagingOptions { - exclude 'META-INF/LICENSE.txt' - exclude 'META-INF/NOTICE.txt' + resources { + excludes += ['META-INF/LICENSE.txt', 'META-INF/NOTICE.txt'] + } } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_11 + targetCompatibility JavaVersion.VERSION_11 + } + + namespace 'cards.pay.sample.demo' } dependencies { @@ -49,11 +58,11 @@ dependencies { implementation project(path: ":sdk") //debugCompile project(path: ":sdk", configuration: 'release') //releaseCompile project(path: ":sdk", configuration: 'release') - androidTestImplementation "com.android.support.test.espresso:espresso-core:$rootProject.ext.espressoVersion" - implementation "com.android.support:appcompat-v7:$rootProject.ext.supportLibVersion" - implementation "com.android.support:gridlayout-v7:$rootProject.ext.supportLibVersion" - implementation "com.android.support:design:$rootProject.ext.supportLibVersion" - testImplementation "junit:junit:$rootProject.ext.junitVersion" + androidTestImplementation "androidx.test.espresso:espresso-core:3.5.1" + implementation "androidx.appcompat:appcompat:1.6.1" + implementation "androidx.gridlayout:gridlayout:1.0.0" + implementation "com.google.android.material:material:1.9.0" + testImplementation "junit:junit:4.13.2" } if (ext.private.getProperty("release.StoreFile") != null) { diff --git a/demo/src/main/AndroidManifest.xml b/demo/src/main/AndroidManifest.xml index e411a4f..90ead65 100644 --- a/demo/src/main/AndroidManifest.xml +++ b/demo/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ + xmlns:tools="http://schemas.android.com/tools"> + android:label="@string/app_name" + android:exported="true"> diff --git a/demo/src/main/java/cards/pay/sample/demo/CardDetailsActivity.java b/demo/src/main/java/cards/pay/sample/demo/CardDetailsActivity.java index 7570850..fe7d7e8 100644 --- a/demo/src/main/java/cards/pay/sample/demo/CardDetailsActivity.java +++ b/demo/src/main/java/cards/pay/sample/demo/CardDetailsActivity.java @@ -5,11 +5,11 @@ import android.content.Intent; import android.os.Bundle; import android.os.ResultReceiver; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.design.widget.TextInputLayout; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import com.google.android.material.textfield.TextInputLayout; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; import android.util.Log; import android.view.View; import android.view.WindowManager; @@ -18,6 +18,7 @@ import java.lang.reflect.Method; +import cards.pay.paycardsrecognizer.sdk.BuildConfig; import cards.pay.paycardsrecognizer.sdk.Card; import cards.pay.paycardsrecognizer.sdk.ScanCardIntent; import cards.pay.paycardsrecognizer.sdk.ScanCardIntent.CancelReason; diff --git a/demo/src/main/java/cards/pay/sample/demo/FinalActivity.java b/demo/src/main/java/cards/pay/sample/demo/FinalActivity.java index afd7ad6..f3f75d0 100644 --- a/demo/src/main/java/cards/pay/sample/demo/FinalActivity.java +++ b/demo/src/main/java/cards/pay/sample/demo/FinalActivity.java @@ -3,9 +3,9 @@ import android.content.Intent; import android.net.Uri; import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; import android.view.MenuItem; import android.view.View; diff --git a/demo/src/main/java/cards/pay/sample/demo/IntroActivity.java b/demo/src/main/java/cards/pay/sample/demo/IntroActivity.java index a3e662a..4bc7727 100644 --- a/demo/src/main/java/cards/pay/sample/demo/IntroActivity.java +++ b/demo/src/main/java/cards/pay/sample/demo/IntroActivity.java @@ -2,9 +2,9 @@ import android.content.Intent; import android.os.Bundle; -import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; import android.view.View; public class IntroActivity extends AppCompatActivity { diff --git a/demo/src/main/java/cards/pay/sample/demo/validation/FieldValidationResult.java b/demo/src/main/java/cards/pay/sample/demo/validation/FieldValidationResult.java index 88f0cf5..1cb85d5 100644 --- a/demo/src/main/java/cards/pay/sample/demo/validation/FieldValidationResult.java +++ b/demo/src/main/java/cards/pay/sample/demo/validation/FieldValidationResult.java @@ -1,8 +1,8 @@ package cards.pay.sample.demo.validation; import android.content.res.Resources; -import android.support.annotation.Nullable; -import android.support.annotation.StringRes; +import androidx.annotation.Nullable; +import androidx.annotation.StringRes; public class FieldValidationResult { diff --git a/demo/src/main/java/cards/pay/sample/demo/validation/ValidationResult.java b/demo/src/main/java/cards/pay/sample/demo/validation/ValidationResult.java index 810f35e..c6c208e 100644 --- a/demo/src/main/java/cards/pay/sample/demo/validation/ValidationResult.java +++ b/demo/src/main/java/cards/pay/sample/demo/validation/ValidationResult.java @@ -1,7 +1,7 @@ package cards.pay.sample.demo.validation; import android.content.res.Resources; -import android.support.annotation.Nullable; +import androidx.annotation.Nullable; import android.util.SparseArray; public class ValidationResult extends SparseArray { diff --git a/demo/src/main/java/cards/pay/sample/demo/widget/CardDateEditText.java b/demo/src/main/java/cards/pay/sample/demo/widget/CardDateEditText.java index 113613c..6de1039 100644 --- a/demo/src/main/java/cards/pay/sample/demo/widget/CardDateEditText.java +++ b/demo/src/main/java/cards/pay/sample/demo/widget/CardDateEditText.java @@ -1,7 +1,7 @@ package cards.pay.sample.demo.widget; import android.content.Context; -import android.support.design.widget.TextInputEditText; +import com.google.android.material.textfield.TextInputEditText; import android.text.Editable; import android.text.InputFilter; import android.text.InputType; diff --git a/demo/src/main/java/cards/pay/sample/demo/widget/CardNumberEditText.java b/demo/src/main/java/cards/pay/sample/demo/widget/CardNumberEditText.java index b3d0d2f..212d1b9 100644 --- a/demo/src/main/java/cards/pay/sample/demo/widget/CardNumberEditText.java +++ b/demo/src/main/java/cards/pay/sample/demo/widget/CardNumberEditText.java @@ -1,7 +1,7 @@ package cards.pay.sample.demo.widget; import android.content.Context; -import android.support.design.widget.TextInputEditText; +import com.google.android.material.textfield.TextInputEditText; import android.text.InputFilter; import android.text.InputType; import android.text.method.DigitsKeyListener; diff --git a/demo/src/main/res/layout-h480dp/activity_final.xml b/demo/src/main/res/layout-h480dp/activity_final.xml index e358675..af5727d 100644 --- a/demo/src/main/res/layout-h480dp/activity_final.xml +++ b/demo/src/main/res/layout-h480dp/activity_final.xml @@ -7,7 +7,7 @@ android:layout_height="match_parent" android:orientation="vertical"> - - - - + - - - + - - + - - - + - - +