2015-09-06 8 views
5

सैमसंग गैलेक्सी एस 6 एज पर स्कैनिंग के लिए ज़बर एसडीके को कॉल करते समय मेरा ऐप क्रैश हो जाता है। मुझे लगता है कि ऐसा इसलिए है क्योंकि मेरे पास ज़बर का arm64 संस्करण नहीं है।ZBAR एंड्रॉइड एआरएम 64 "libiconv.so" नहीं मिला

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/.../base.apk"],nativeLibraryDirectories=[/data/app/.../lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libiconv.so" 
at java.lang.Runtime.loadLibrary(Runtime.java:366) 

मैं अपने प्रोजेक्ट है कि मैं zbar के लिए arm64 JNI libs की जरूरत नहीं है इस से संबंधित है में देखी गई:

यह क्रैश लॉग का अंत है? और यदि ऐसा है तो मुझे libiconv.so libzbarjni.so arm64 के लिए कहां मिल सकता है?

+0

हाय @ नोम। क्या आपको अपनी समस्या का समाधान मिला है? – ymerdrengene

+0

हाँ नीचे दिए गए मेरे उत्तर को देखें –

+0

आपके उत्तर के लिए धन्यवाद! हालांकि, मैंने इसके बजाय जेएक्सिंग में जाने का फैसला किया, जो गैलेक्सी एस 3 एज – ymerdrengene

उत्तर

5

तो अंत में यहाँ से 64 बिट zbar पाया:

https://github.com/SkillCollege/ZBarAndroidSDK/tree/master/ZBarScanProjAll/libs

यह arm64-V8A अंतर्गत पाया जाता है। मुझे बस इतना करना था कि मेरी परियोजना से मेल खाने के लिए इतनी फाइल का नाम बदलें।

+0

आपको libzbarjni.so कैसे मिला? –

+2

उपरोक्त लिंक में इसे कुछ libzbardecoder कहा जाता है, बस इसे कॉपी करें और इसे अपने प्रोजेक्ट –

2
libiconv

ले लो libiconv स्रोत के लिए

, और एक Android.mk makefile बनाते हैं। Libiconv और एंड्रॉइड के लिए एक प्री लिखित मेकफ़ाइल के लिए इस साइट को देखें (http://groups.google.com/group/android-ndk/browse_thread/thread/012d679319e4ea6e?pli=1)। एक बार आपके पास Android.mk फ़ाइल हो जाने के बाद आप ndk-build स्क्रिप्ट का उपयोग करके निर्माण कर सकते हैं।

लिए libzbarjni

http://www.blackdogfoundry.com/blog/?p=139

+0

को संशोधित करना हाय धन्यवाद, यह मेरे कौशल स्तर पर थोड़ा सा लगता है जिससे आप मेरी सहायता कर सकते हैं? –

2

मैंने arm64-v8a में iconv.so और libZBarDecoder.so डाउनलोड किया।

  • libZBarDecoder.solibzbarjni.so
  • को ज़िप फ़ाइल का नाम बदलें और iconv.jar लिए इसका नाम बदलना (क्योंकि "System.loadLibrary (" iconv ") अपने प्रोजेक्ट में")।

और अंततः यह काम करता है। धन्यवाद नोम सेगेव।

https://github.com/SkillCollege/ZBarAndroidSDK/tree/master/ZBarScanProjAll/libs

+0

मैन के अनुसार नाम दें ... आप मेरे दोस्त को बहुत अच्छा काम करते हैं !!!! – risefire

+0

हे! मैंने दोनों फाइलें डाउनलोड की हैं। अगर मुझे यह सही लगता है तो मुझे बताएं - जैसा कि आपने सुझाव दिया है, मुझे दोनों फ़ाइलों का नाम बदलने की जरूरत है, और फिर दोनों को ज़िप करें और namev.jar पर नाम बदलें? (इसे मेरे प्रोजेक्ट में "iconv" भी कहा जाता है)। –

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