2012-12-20 10 views
12

HI ओसीआर (ऑप्टिकल कैरेक्टर रिकग्नाइजेशन) पर काम कर रहा हूं, मुझे जिथब से एक नमूना प्रोजेक्ट मिला है। इस परियोजना के लिए टेस-टेस्ट लाइब्रेरी प्रोजेक्ट का उपयोग कर रहा है और प्रोजेक्ट सफलतापूर्वक बनाता है और निष्पादित करता है लेकिन जब भी टेसबेसैपीआई को ऐप कहा जाता है तो दुर्भाग्यवश बंद हो जाता है। .और यह निम्नलिखित लॉग त्रुटि दिखाता हैलोडर खोज से लीप लोड नहीं किया जा सका पुस्तकालय शून्य वापस आ गया?

12-20 18:27:18.791: E/AndroidRuntime(24466): java.lang.ExceptionInInitializerError 
12-20 18:27:18.791: E/AndroidRuntime(24466): at com.datumdroid.android.ocr.simple.SimpleAndroidOCRActivity.onPhotoTaken(SimpleAndroidOCRActivity.java:211) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at com.datumdroid.android.ocr.simple.SimpleAndroidOCRActivity.onActivityResult(SimpleAndroidOCRActivity.java:135) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.app.Activity.dispatchActivityResult(Activity.java:5293) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.app.ActivityThread.deliverResults(ActivityThread.java:3315) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3362) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.app.ActivityThread.access$1100(ActivityThread.java:141) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1282) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.os.Handler.dispatchMessage(Handler.java:99) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.os.Looper.loop(Looper.java:137) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at android.app.ActivityThread.main(ActivityThread.java:5039) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at java.lang.reflect.Method.invokeNative(Native Method) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at java.lang.reflect.Method.invoke(Method.java:511) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at dalvik.system.NativeStart.main(Native Method) 
12-20 18:27:18.791: E/AndroidRuntime(24466): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load lept from loader dalvik.system.PathClassLoader[dexPath=/data/app/com.datumdroid.android.ocr.simple-1.apk,libraryPath=/data/app-lib/com.datumdroid.android.ocr.simple-1]: findLibrary returned null 
12-20 18:27:18.791: E/AndroidRuntime(24466): at java.lang.Runtime.loadLibrary(Runtime.java:365) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at java.lang.System.loadLibrary(System.java:535) 
12-20 18:27:18.791: E/AndroidRuntime(24466): at com.googlecode.tesseract.android.TessBaseAPI.<clinit>(TessBaseAPI.java:47) 

कृपया मेरी समस्या का समाधान दें मेरे आवेदन में 5 दिनों से फंस गया है।

मैं googled एक बहुत किसी भी समाधान नहीं मिला

+0

संभवतः डुप्लिकेट [लिबरैक्ट में त्रुटि नहीं मिली] (http://stackoverflow.com/questions/11516440/lib-not-found-error-in-tesseract) – njzk2

उत्तर

11

सुनिश्चित करें .. धन्यवाद कि पुस्तकालय फ़ाइल "liblept.so" मौजूद या तो libs में/armeabi या libs/armeabi- v7a, यदि वे वहां मौजूद हैं, तो उत्पन्न एपीके फ़ाइल खोलने के लिए 7Zip/WinRAR का उपयोग करें और सुनिश्चित करें कि यह एपीके में भी मौजूद है।

0

Lib not found error in tesseract

समस्या की डुप्लीकेट liblept.so (शेयर की गई लाइब्रेरी) फ़ाइल विशिष्ट पुस्तकालय पथ पर नहीं मिला सकते है। अपना कोड देखे बिना केवल धारणा है कि आपका कोड साझा लाइब्रेरी liblept.so लोड करने का प्रयास कर रहा है और लाइब्रेरी उस पथ पर उपलब्ध नहीं है।

इसके अलावा आप जिस कोड का उपयोग कर रहे हैं वह या तो liblept.so फ़ाइल किसी भी lib या आंतरिक पैकेज निर्देशिका में है या आपको एंड्रॉइड-एनडीके का उपयोग करके साझा लाइब्रेरी उत्पन्न करना है।

0

मुझे यकीन नहीं है कि आपको अपनी समस्या का उत्तर मिल गया है, लेकिन मेरा प्रोजेक्ट में libs फ़ोल्डर से मेरा नाम गलत तरीके से नामित किया गया था (libs के बजाय lib था)। मेरा मुद्दा गलती से मेरी परियोजना को हटाने और मेरे फोन से एपीके निकालने के द्वारा इसे बहाल करने का परिणाम था। एक बार जब मैंने फ़ोल्डर का नाम बदल दिया, तो मेरी समस्या हल हो गई। उम्मीद है की वो मदद करदे।

0

पीपीएल, .. एक दिन संघर्ष करने के बाद अंत में समाधान मिल गया

टेस-दो मॉड्यूल के build.gradle में नीचे कोड जोड़ें:

sourceSets.main { 
    manifest.srcFile 'src/main/AndroidManifest.xml' 
    java.srcDirs = ['src/main/java'] 
    resources.srcDirs = ['src/main/java'] 
    res.srcDirs = ['src/main/res'] 
    jni.srcDirs = [] 
    jniLibs.srcDirs = ['src/main/jniLibs'] 
} 

मुख्य बात यह है कि कृपया उन सभी मौसम मैन्युअल रूप से जाँच कर रहा है उपरोक्त कोड में निर्दिष्ट फ़ाइल पथ मौजूद हैं !!

इस मुद्दे पर आते हुए, जांच करें कि "liblept.so" टेस-दो लाइब्रेरी में मौजूद है। मेरे लिए यह /tesstwo/src/main/jniLibs/armeabi-v7a के अंदर था। इसलिए मैंने उपरोक्त कोड में jniLibs.srcDirs = ['src/main/jniLibs'] बनाया है। आशा करता हूँ की ये काम करेगा !!

संबंधित मुद्दे