天天看點

Androidstudio 如何生成aar和引用

最近公司項目做好上線後,有需求單獨對某個功能子產品打包成元件sdk的形式,提供給其它第三方應用調用。

Android 目前實作打包生成sdk的三種方式:

一、jar包(依賴檔案打包jar包不能包含資源檔案)

二、依賴檔案夾(就是上面那種将整個檔案夾拷貝到其他位置,讓項目進行依賴,好處是可以對源檔案進行更改,壞處是檔案太大容易出問題)

三、aar包(aar可以包含資源檔案)

目前我們是用的第三種方法實作打包sdk的流程如下:

1.打開項目,如果要設定aar 打成混淆包,可進入 build 檔案裡設定如下:

buildTypes {
    release {
        minifyEnabled true   //代碼混淆
        zipAlignEnabled true  //資源壓縮
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
           

然後點選右側Gradle,選中要打包的library這裡示範的是打K線圖kchartlib,

Tasks>build>assenble 輕按兩下執行指令開始打包;

Androidstudio 如何生成aar和引用

2. 幾秒過後,aar包已經打好,進入kchartlib 源碼 選擇build>outputs>aar>kchartlib-release.aar 包。

Androidstudio 如何生成aar和引用

生成release 包

3.引用打好的aar 包,建立一個項目ChartSdk,将打好的aar包libs目錄裡,然後在build.gradle檔案裡加上:

dependencies {

  implementation(name: 'kchartlib-release', ext: 'aar')

}

 repositories { flatDir { dirs 'libs' }

}

至此已經成功引入。

4.如果你想在一個新項目裡ChartSdk,在library引用aar,項目又引用library,操作如下:

在主項目的build.gradle 添加library目錄路徑的引用。

Androidstudio 如何生成aar和引用

5.如果library裡使用了一些第三方的注解架構主項目也使用了時,就會編譯失敗。如引用butterknife,下篇我将給大家講解如果解決這個包的引用沖突問題。

更多Android 學習交流請加群:413893967 

繼續閱讀