新手一枚,从C# 转过来的,刚做过一个小项目,对Android开发算是了解差不多了
之前引用的都是.jar包,最近在做二维码扫描,刚开始用ZXing的.jar包
发现扫描的时候要离很远才能扫出来,后来没办法只能换用ZBar的.so库
别人的例子都可以正常运行,到我新建了个项目进去之后 死活运行不了 提示加载了不so库
今天要给客户演示,昨天从下午四点一直研究到晚上十二点 一直找不到方法
刚开始从网上搜的是重新打成自己的so库,后来在运行Cygwin时 运行老是出错
没办法,继续搞起
我用的是Adnroid Studio开发的 后来好像说是版本太低了 不支持打包,就又从网上下载了一个新版本
运行的时候报错 没办法 又换成以前的老版本
后来在网上搜了一个方法,加进去之后立即可以了,欣喜万分啊!!!!!!!
task copyNativeLibs(type: Copy) {
from fileTree(dir: 'libs', include: 'armeabi/*.so') into 'build/lib'
}
tasks.withType(Compile) {
compileTask -> compileTask.dependsOn copyNativeLibs
}
clean.dependsOn 'cleanCopyNativeLibs'
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
pkgTask.jniFolders = [new File(buildDir, 'lib')]
将上面内容放入build.gradle文件中即可 把so库放到libs/armeabi中