场景:Android studio 编译我的项目(项目中有运用的jni),编译没有报错,正常的安装到我的机器上,可是运行的时候就报错,没有找到*.so文件...
可是明明在libs,目录下有加相关的文件?
参考网上大部分的做法,新建jniLibs文件夹把有关的文件都放到这个文件中,例如
这样对于目录结构是默认的情况
这样就搞定了。
可是我的项目是从eclipse下导出来的目录结构同上方不一样,如下:
我也加入的jniLibs这个目录,包相关的文件往这里放,结构运行到机器上还是不行,还是找不到*.so文件。。。
目录结构我又不想去改变,后来我在看build.gradle文件中有sourceSets这个设置,就尝试的往这里加参数,果然就可以正常的运行了
代码:
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
// 关键是这句
jniLibs.srcDirs = ['jniLibs']
}
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。