- 2个独立的SDK之间难免会有native依赖,例如A SDK 依赖 B SDK,我们通常的做法是手动将A中的头文件和已经编译好的lib拷贝到B中,然后在B中的Android.mk或是CMakeList.txt中声明好依赖。
- 这个方法的缺点是:
- A和B不止有native依赖,也有java间的依赖,将native和java依赖分开更新,很容易出现问题。
- A的头文件和native库每次都要提交到B中的svn/git中,由于native库比较大,速度会很慢,也不利于版本匹配, 当出现问题时,很难定位到依赖A的哪个版本
- 新方法的要求:
- android studio IDE
- android gradle tool 插件版本:3.0.0 - 3.3.0
- 新方法的使用:
- 打开SDK根目录的build.gradle,增加对nativeBundel插件的依赖,如下
buildscript {
repositories {
jcenter()
google()
}
dependencies {
// android gradle tool plugin
classpath 'com.android.tools.build:gradle:3.0.0'
//Add nativeBundle plugin dependency
classpath 'com.ydq.android.gradle.build.tool:nativeBundle:1.0.1'
}
}
-
对于被