ML Kit文本识别在Android Build (armeabi-v7a)中崩溃



我使用最新版本的本地代码mlkit进行文本识别。

implementation 'com.google.android.gms:play-services-mlkit-text-recognition:18.0.2'

文本识别在arm64-v8a中提供所需的结果,但在arm64- v7a中崩溃,并使用以下堆栈跟踪

java.lang.UnsatisfiedLinkError: dalvik.system.DelegateLastClassLoader[DexPathList[[zip file "/data/user_de/0/com.google.android.gms/app_chimera/m/00000476/dl-MlkitOcrCommon.optional_231115100400.apk"],nativeLibraryDirectories=[/data/user_de/0/com.google.android.gms/app_chimera/m/00000476/dl-MlkitOcrCommon.optional_231115100400.apk!/lib/armeabi-v7a, /data/user_de/0/com.google.android.gms/app_chimera/m/00000476/dl-MlkitOcrCommon.optional_231115100400.apk!/lib/armeabi, /system/lib, /system/product/lib]]] couldn't find "libmlkit_google_ocr_pipeline_gms.so"
                                  at java.lang.Runtime.loadLibrary0(Runtime.java:1067)
                                  at java.lang.Runtime.loadLibrary0(Runtime.java:1007)
                                  at java.lang.System.loadLibrary(System.java:1667)
                                  at so.c(:com.google.android.gms.optional_mlkit_ocr_common@231115065@23.11.15 (100400-0):3)
                                  at so.f(:com.google.android.gms.optional_mlkit_ocr_common@231115065@23.11.15 (100400-0):1)
                                  at so.e(:com.google.android.gms.optional_mlkit_ocr_common@231115065@23.11.15 (100400-0):0)
                                  at azb.a(:com.google.android.gms.optional_mlkit_ocr_common@231115065@23.11.15 (100400-0):5)
                                  at bp.onTransact(:com.google.android.gms.optional_mlkit_ocr_common@231115065@23.11.15 (100400-0):4)
                                  at android.os.Binder.transact(Binder.java:914)
                                  at bo.b(:com.google.android.gms.policy_vision_ocr_dynamite@231000401@231000400057.513075010.513075010:2)
                                  at aqs.f(:com.google.android.gms.policy_vision_ocr_dynamite@231000401@231000400057.513075010.513075010:0)
                                  at lr.b(:com.google.android.gms.policy_vision_ocr_dynamite@231000401@231000400057.513075010.513075010:1)
                                  at lr.a(:com.google.android.gms.policy_vision_ocr_dynamite@231000401@231000400057.513075010.513075010:8)
                                  at bp.onTransact(:com.google.android.gms.policy_vision_ocr_dynamite@231000401@231000400057.513075010.513075010:4)
                                  at android.os.Binder.transact(Binder.java:914)
                                  at com.google.android.gms.internal.vision.zzb.zza(com.google.android.gms:play-services-vision-common@@19.1.0:10)
                                  at com.google.android.gms.internal.vision.zzac.zza(com.google.android.gms:play-services-vision@@20.1.0:7)
                                  at com.google.android.gms.internal.vision.zzan.zza(com.google.android.gms:play-services-vision@@20.1.0:8)
                                  at com.google.android.gms.vision.text.TextRecognizer.detect(com.google.android.gms:play-services-vision@@20.1.0:41)
                                  at com.google.mlkit.vision.text.internal.zzb.zza(com.google.android.gms:play-services-mlkit-text-recognition@@16.0.0:33)
                                  at com.google.mlkit.vision.text.internal.zzb.run(com.google.android.gms:play-services-mlkit-text-recognition@@16.0.0:51)
                                  at com.google.mlkit.vision.common.internal.MobileVisionBase.zza(com.google.mlkit:vision-common@@16.0.0:23)
                                  at com.google.mlkit.vision.common.internal.zzb.call(Unknown Source:4)
                                  at com.google.mlkit.common.sdkinternal.ModelResource.zza(com.google.mlkit:common@@16.0.0:26)
                                  at com.google.mlkit.common.sdkinternal.zzn.call(Unknown Source:6)
                                  at com.google.mlkit.common.sdkinternal.zzm.run(com.google.mlkit:common@@16.0.0:5)
                                  at com.google.mlkit.common.sdkinternal.zzq.run(com.google.mlkit:common@@16.0.0:3)
                                  at android.os.Handler.handleCallback(Handler.java:883)
                                  at android.os.Handler.dispatchMessage(Handler.java:100)
                                  at com.google.android.gms.internal.mlkit_common.zzb.dispatchMessage(com.google.mlkit:common@@16.0.0:6)
                                  at android.os.Looper.loop(Looper.java:224)
                                  at android.os.HandlerThread.run(HandlerThread.java:67)

尝试降级mlkit版本,但仍然没有成功。

请尝试在您的依赖项implementation 'com.google.mlkit:text-recognition:16.0.0-beta6'而不是'implementation 'com.google.android.gms:play-services-mlkit-text-recognition:18.0.2'中使用此

这取决于您要将apk部署到哪个模拟器/设备。"arm64-v8a"适用于您可能是因为您正在使用64位臂设备进行测试。"armabi-v7a"如果您使用32位臂设备进行测试,将适用于您。类似地,如果使用模拟器进行测试,则应该使用x86构建。如果你把它们混在一起使用,比如使用64位设备上的armabi-v7a,就会发生这种崩溃。

相关内容