F1s*_*her 9 android qr-code zbar-sdk zbar
我从git最新的zBar QR Code Scanner(SDK 0.2)下载了.我试图在我的应用程序中实现它.我在Android Studio上工作.
我做了什么:
无需更改gradle中的任何内容,因为它已配置为从libs项目导入每个jar文件.见下文:
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.crashlytics.android:crashlytics:1.+'
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':FacebookSDK')
compile project(':actionbarsherlock')
compile project(':Aviary-SDK')
}
Run Code Online (Sandbox Code Playgroud)可以看到每个类形式的zBar lib,所以我已经配置了所有内容.我运行我的ScannerActivity并在onCreate中我得到错误:
scanner = new ImageScanner(); // this line shows an error
scanner.setConfig(0, Config.X_DENSITY, 3);
scanner.setConfig(0, Config.Y_DENSITY, 3);
Run Code Online (Sandbox Code Playgroud)因此实现与示例中的1:1相同.
我的错误日志:
java.lang.UnsatisfiedLinkError: Couldn't load zbarjni from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/pl.toptof.android.debug-2.apk"],nativeLibraryDirectories=[/data/app-lib/pl.toptof.android.debug-2, /vendor/lib, /system/lib]]]: findLibrary returned null
Run Code Online (Sandbox Code Playgroud)
请帮我解决这个问题.我不知道为什么我的Android Studio可以看到lib,但不能像在示例中那样使用它.
fro*_*mcs 13
我想,你在罐子结构中犯了错误.如果你想从*.so libs制作jar包你应该使用那种结构:
/lib/armeabi/*.so
它是您的库的目录结构示例:
lib/
---/armeabi
------/libiconv.so
------/libzbarjni.so
Run Code Online (Sandbox Code Playgroud)
当然,您应该将最终包从lib.zip重命名为armeabi.jar.在您的情况下,您应该为armeabi-v7a和x86重复此过程.