1. 程式人生 > >Android Studio模組化程式設計實踐之aar

Android Studio模組化程式設計實踐之aar

aar介紹

我們都知道在java開發中,我們的library都是使用jar這種形式的,使用Eclipse開發的同學對這個應該會非常熟悉。J2EE中開發中的很多框架都是使用jar包的形式匯入的,比如SSH等這樣的開源框架等等。
在java世界裡面,jar包中所包含的一般都是邏輯性的處理,不涉及介面上的一些開發,換句話說就是不包括資原始檔。相對於J2EE開發而言,Android開發中有很多資原始檔,比如圖片,xml佈局,style等檔案,這些檔案沒有辦法在jar包中進行使用。
現在,Android Studio幫我們解決了這個模組化開發的攔路虎,aar可以看做是一種更加高階的jar,它可以包含資原始檔以及我們打包出來的jar檔案。

匯出aar

aar檔案的目錄在我們library目錄下的output目錄下。具體的目錄如下:

library\build\outputs\aar

我們可以在這個目錄下找到兩個aar檔案,一般來說,release版本是我們需要的。

匯出aar檔案的命令比較簡單,找到專案所在的位置,對專案進行編譯操作,命令如下:

gradlew assemblerelease

在命令列執行了如上的命令之後,在上面提示的目錄當中去尋找我們需要的aar檔案即可。

配置library

知道了aar檔案的作用以及它在的位置,如何生成我們需要的aar檔案呢?
首先要注意,匯出模組化的library,我們需要將工程設定為library模式,修改library的build.gradle

檔案資訊,如下:

apply plugin: 'com.android.library'

這句話說明這個工程是library模式的,也是就說這個library會生成aar檔案。
對於很多模組來說,如果是需要提供給外部人員使用的,往往會根據模組的性質,進行一些混淆的操作,程式碼設定如下:

buildTypes {
    release {
        // 是否混淆
        minifyEnabled true
        //Zipalign優化
        zipAlignEnabled true
        // 移除無用的resource檔案
        shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }

使用aar

使用aar檔案的方式非常簡單,與jar基本一致,稍微多了一點設定的東西,步驟如下:
目前,我們UPS的SDK僅僅支援使用 Android Studio 工具的匯入。匯入的方式如下:

  1. 拷貝aar檔案到libs目錄
  2. 修改專案的 build.gradle 檔案,程式碼如下:
repositories {
    flatDir {
        dirs 'libs'
    }
}
dependencies {
    compile(name:'library-release', ext:'aar')
}

至此,我們的aar模組化已經介紹完畢了。
有部分同學以為,aar檔案也需要配置許可權和模組,實際上並不需要,只需要在library中的manifest檔案註冊好模組就行啦,Android Studio會幫助我們新增需要的元件。

哇,好厲害的感覺,趕緊試試看吧!