項目A 作為主程式,項目B作為lib引用
1、在項目B app dodule的 build.gradle 檔案下 将
原為:// apply plugin: 'com.android.application'
改為:apply plugin: 'com.android.library'
defaultConfig {
// applicationId "com.example.sdk_lib" 注釋這一行
minSdkVersion 19 // 版本改為和主項目一樣
targetSdkVersion 28 // 版本改為和主項目一
}
2、 在主項目A中的 settings.gradle 檔案下添加如下
include ':app', ':ACommonLibrary', ':ACommonLibraryB'
// 引入你本地的lib項目位址,作為導入包
project (':ACommonLibrary').projectDir = new File('../ACommonLibrary/app')
project (':ACommonLibraryB').projectDir = new File('../ACommonLibrary/utils')
image.png
ACommonLibrary.png
3、在主項目A中的 build.gradle 檔案下
dependencies {
implementation project (':ACommonLibrary') // 加入這行,導入包
implementation project (':ACommonLibraryB')
}
添加成功後兩個project會在同級目錄顯示
image.png
還需要注意一點的是在lib項目中使用 api 替代 implementation
簡單點意思就是lib 項目B中的引用可以在項目A中被引用
implementation 的引用隻會在目前module中編譯
api和implementation差別.png