andorid studio 2.1.1版本引用.so文件以及jar重复(eclipse导入到studio导致)

来源:互联网 发布:命令行查看数据库内容 编辑:程序博客网 时间:2024/05/29 16:54

1.在studio对应的工程目录src-java下创建jniLibs文件夹(注意书写格式,严格区分大小写).

2.将.so文件copy到jniLibs文件夹下面.

3.在项目的build.gradle上添加代码(android{ }里面)

sourceSets {    main {        jniLibs.srcDirs = ['src/main/jniLibs']    }}

这里需要注意的是 jniLibs.srcDirs = []  里面的内容一定要写jniLibs.

4.重新编译apk,运行即可,如有问题,可以build-apk然后解压apk,查看对应的lib文件夹,如有.so文件则说明引用成功,否则失败.

5.失败的问题(亲测)

dependencies {provided fileTree(include: ['*.jar'], dir: 'libs')}

由于项目是从eclipse中导入的,没有以上代码,所以导致了.so文件关联失败.

6.常常使用三方sdk是eclipse的项目,导入到studio中导致了jar重复的问题:

本身项目有jar,依赖的module有jar,如下情况:

报错 com.Android.dex.DexException: Multiple dex files define...

demo:

dependencies {    provided fileTree(include: ['*.jar'], dir: 'libs')    compile project(':demoLib')    provided files('libs/expression.jar')    provided files('libs/rtmpplayer.jar')}
demoLib(依赖的module):

dependencies {    compile 'com.android.support:support-v4:24.+'    compile files('libs/expression.jar')    compile files('libs/rtmpplayer.jar')}
demo 与 demoLib  依赖了相同的jar包,并且不可以删除的情况下,只需要在build.gradle文件下修改compile---provided即可,亲测有效,欢迎朋友们给出意见.


0 0
原创粉丝点击