-2

我一直在 Android 中开发 OCR 应用程序。在模拟器中运行该应用程序时,我收到错误,因为“不幸的是 OCR 测试已停止”。所以任何人都可以帮我解决错误...提前谢谢... .

日志猫:

08-26 14:24:45.128: D/dalvikvm(548): Not late-enabling CheckJNI (already on)
08-26 14:24:47.988: D/LanguageCodeHelper(548): getOcrLanguageName: eng->English
08-26 14:24:48.008: D/LanguageCodeHelper(548): getTranslationLanguageName: es->Spanish
08-26 14:24:48.219: D/dalvikvm(548): GC_CONCURRENT freed 261K, 6% free 6680K/7047K, paused 8ms+7ms
08-26 14:24:48.319: W/dalvikvm(548): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lcom/googlecode/tesseract/android/TessBaseAPI;
08-26 14:24:48.319: D/AndroidRuntime(548): Shutting down VM
08-26 14:24:48.319: W/dalvikvm(548): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
08-26 14:24:48.369: E/AndroidRuntime(548): FATAL EXCEPTION: main
08-26 14:24:48.369: E/AndroidRuntime(548): java.lang.ExceptionInInitializerError
08-26 14:24:48.369: E/AndroidRuntime(548):  at edu.sfsu.cs.orange.ocr.CaptureActivity.initOcrEngine(CaptureActivity.java:715)
08-26 14:24:48.369: E/AndroidRuntime(548):  at edu.sfsu.cs.orange.ocr.CaptureActivity.onResume(CaptureActivity.java:372)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1154)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.Activity.performResume(Activity.java:4539)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2434)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2472)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1986)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.ActivityThread.access$600(ActivityThread.java:123)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.os.Handler.dispatchMessage(Handler.java:99)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.os.Looper.loop(Looper.java:137)
08-26 14:24:48.369: E/AndroidRuntime(548):  at android.app.ActivityThread.main(ActivityThread.java:4424)
08-26 14:24:48.369: E/AndroidRuntime(548):  at java.lang.reflect.Method.invokeNative(Native Method)
08-26 14:24:48.369: E/AndroidRuntime(548):  at java.lang.reflect.Method.invoke(Method.java:511)
08-26 14:24:48.369: E/AndroidRuntime(548):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
08-26 14:24:48.369: E/AndroidRuntime(548):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
08-26 14:24:48.369: E/AndroidRuntime(548):  at dalvik.system.NativeStart.main(Native Method)
08-26 14:24:48.369: E/AndroidRuntime(548): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load lept: findLibrary returned null
08-26 14:24:48.369: E/AndroidRuntime(548):  at java.lang.Runtime.loadLibrary(Runtime.java:365)
08-26 14:24:48.369: E/AndroidRuntime(548):  at java.lang.System.loadLibrary(System.java:535)
08-26 14:24:48.369: E/AndroidRuntime(548):  at com.googlecode.tesseract.android.TessBaseAPI.<clinit>(TessBaseAPI.java:46)
08-26 14:24:48.369: E/AndroidRuntime(548):  ... 17 more
08-26 14:33:18.479: D/LanguageCodeHelper(576): getOcrLanguageName: eng->English
08-26 14:33:18.489: D/LanguageCodeHelper(576): getTranslationLanguageName: es->Spanish
08-26 14:33:18.708: D/dalvikvm(576): GC_CONCURRENT freed 263K, 6% free 6682K/7047K, paused 7ms+6ms
08-26 14:33:18.809: W/dalvikvm(576): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lcom/googlecode/tesseract/android/TessBaseAPI;
08-26 14:33:18.809: D/AndroidRuntime(576): Shutting down VM
08-26 14:33:18.809: W/dalvikvm(576): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
08-26 14:33:18.838: E/AndroidRuntime(576): FATAL EXCEPTION: main
08-26 14:33:18.838: E/AndroidRuntime(576): java.lang.ExceptionInInitializerError
08-26 14:33:18.838: E/AndroidRuntime(576):  at edu.sfsu.cs.orange.ocr.CaptureActivity.initOcrEngine(CaptureActivity.java:715)
08-26 14:33:18.838: E/AndroidRuntime(576):  at edu.sfsu.cs.orange.ocr.CaptureActivity.onResume(CaptureActivity.java:372)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1154)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.Activity.performResume(Activity.java:4539)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2434)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2472)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1986)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.ActivityThread.access$600(ActivityThread.java:123)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.os.Handler.dispatchMessage(Handler.java:99)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.os.Looper.loop(Looper.java:137)
08-26 14:33:18.838: E/AndroidRuntime(576):  at android.app.ActivityThread.main(ActivityThread.java:4424)
08-26 14:33:18.838: E/AndroidRuntime(576):  at java.lang.reflect.Method.invokeNative(Native Method)
08-26 14:33:18.838: E/AndroidRuntime(576):  at java.lang.reflect.Method.invoke(Method.java:511)
08-26 14:33:18.838: E/AndroidRuntime(576):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
08-26 14:33:18.838: E/AndroidRuntime(576):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
08-26 14:33:18.838: E/AndroidRuntime(576):  at dalvik.system.NativeStart.main(Native Method)
08-26 14:33:18.838: E/AndroidRuntime(576): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load lept: findLibrary returned null
08-26 14:33:18.838: E/AndroidRuntime(576):  at java.lang.Runtime.loadLibrary(Runtime.java:365)
08-26 14:33:18.838: E/AndroidRuntime(576):  at java.lang.System.loadLibrary(System.java:535)
08-26 14:33:18.838: E/AndroidRuntime(576):  at com.googlecode.tesseract.android.TessBaseAPI.<clinit>(TessBaseAPI.java:46)
08-26 14:33:18.838: E/AndroidRuntime(576):  ... 17 more
08-26 14:33:23.109: I/Process(576): Sending signal. PID: 576 SIG: 9
08-26 15:31:18.949: D/LanguageCodeHelper(732): getOcrLanguageName: eng->English
08-26 15:31:18.969: D/LanguageCodeHelper(732): getTranslationLanguageName: es->Spanish
08-26 15:31:19.189: D/dalvikvm(732): GC_CONCURRENT freed 241K, 6% free 6680K/7047K, paused 7ms+6ms
08-26 15:31:19.289: W/dalvikvm(732): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lcom/googlecode/tesseract/android/TessBaseAPI;
08-26 15:31:19.289: D/AndroidRuntime(732): Shutting down VM
08-26 15:31:19.299: W/dalvikvm(732): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
08-26 15:31:19.319: E/AndroidRuntime(732): FATAL EXCEPTION: main
08-26 15:31:19.319: E/AndroidRuntime(732): java.lang.ExceptionInInitializerError
08-26 15:31:19.319: E/AndroidRuntime(732):  at edu.sfsu.cs.orange.ocr.CaptureActivity.initOcrEngine(CaptureActivity.java:715)
08-26 15:31:19.319: E/AndroidRuntime(732):  at edu.sfsu.cs.orange.ocr.CaptureActivity.onResume(CaptureActivity.java:372)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1154)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.Activity.performResume(Activity.java:4539)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2434)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2472)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1986)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.ActivityThread.access$600(ActivityThread.java:123)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.os.Handler.dispatchMessage(Handler.java:99)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.os.Looper.loop(Looper.java:137)
08-26 15:31:19.319: E/AndroidRuntime(732):  at android.app.ActivityThread.main(ActivityThread.java:4424)
08-26 15:31:19.319: E/AndroidRuntime(732):  at java.lang.reflect.Method.invokeNative(Native Method)
08-26 15:31:19.319: E/AndroidRuntime(732):  at java.lang.reflect.Method.invoke(Method.java:511)
08-26 15:31:19.319: E/AndroidRuntime(732):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
08-26 15:31:19.319: E/AndroidRuntime(732):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
08-26 15:31:19.319: E/AndroidRuntime(732):  at dalvik.system.NativeStart.main(Native Method)
08-26 15:31:19.319: E/AndroidRuntime(732): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load lept: findLibrary returned null
08-26 15:31:19.319: E/AndroidRuntime(732):  at java.lang.Runtime.loadLibrary(Runtime.java:365)
08-26 15:31:19.319: E/AndroidRuntime(732):  at java.lang.System.loadLibrary(System.java:535)
08-26 15:31:19.319: E/AndroidRuntime(732):  at com.googlecode.tesseract.android.TessBaseAPI.<clinit>(TessBaseAPI.java:46)
08-26 15:31:19.319: E/AndroidRuntime(732):  ... 17 more
08-26 15:31:24.919: I/Process(732): Sending signal. PID: 732 SIG: 9
4

1 回答 1

2

错误发生在:

edu.sfsu.cs.orange.ocr.CaptureActivity.initOcrEngine(CaptureActivity.java:715)

第 715 行的类CaptureActivity。此外,日志中列出的原因(接近尾声)是它可以启动一个库来启动类 TessBaseAPI。

假设您在 eclipse 中编写代码时没有错误,那么可能的原因是您正在使用的库在发送到手机或模拟器时没有添加到所有库中。要解决此问题,您需要编辑项目属性以包含已添加到项目中的库。请参阅将库/JAR 添加到 Eclipse Android 项目

于 2013-08-26T10:50:38.130 回答