天天看點

1.3、Android Studio建立一個Android Library建立一個Library子產品将App子產品轉化為Library子產品将你的Library添加為依賴注意以下問題

一個Android Library結構上與Android app子產品相同。它可以包含建構一個app需要的所有東西,包括圓滿,資源檔案和AndroidManifest.xml。然而,并非編譯成運作在裝置上的APK,一個Android Library編譯成其他Android app子產品可以用作以來的AAR檔案。

一個Library子產品在以下情形中是有用的:

1、 當你建構多個使用相同元件,比如activity、service或者UI布局,的APP。

2、 當你建構的APP存在多個APK檔案。比如免費版和付費版APK。

在這些案例中,簡單的移動你想複用的檔案到Library子產品中,添加Library作為APP子產品的依賴。

為了建立一個新的Library子產品到你的項目中,遵循如下步驟:

1、 單擊File > New > New Module

2、 在Create New Module視窗出現時,點選Android Library。然後點選Next。

這裡同樣有一個建立Java Library的可選項,可以建構一個傳統的JAR檔案。JAR檔案在很多項目中都是可用的。特别是你想與其他平台分享代碼,它不允許包含Android資源檔案或者AndroidMainfest.xml,,這個在Android項目中是非常有用的,是以我們專注建立Android Library。

3、 為你的Library設定一個名稱并且選擇一個最小的SDK,然後點選Finish。

一旦Gradle項目同步完成。Library子產品顯示在Project左邊的面闆中。如果你沒有看到新的子產品檔案夾,確定适應的是Android視圖。

如果你有一個已經存在的app子產品所有的代碼你都想複用,你可以通過以下幾部将其轉化成Library子產品。

1、 打開build.gradle檔案,你可以看到如下語句:

apply plugin: ‘com.android.application’

2、 更改成如下:

apply plugin: ‘com.android.library’

3、 點選Sync Project with Gradle Files

就這麼簡單,整個子產品無需改動。但是現在就可以作為Library并且生成AAR檔案而不是APK。

為了在其他app子產品中使用你的Android Library代碼,操作如下:

1、 有兩種方式添加library到你的項目中。

添加編譯後的AAR(或者JAR)檔案:

1) 單擊 File > New Module。

2) 單擊 Import .JAR/.AAR Package 然後點選Next。

3) 輸入AAR或者JAR檔案的位置,然後點選Finish。

導入你的Library子產品到你的項目:

1) 單擊 File > New > Import Module

2) 輸入Library 子產品的位置點選Finish。

Library子產品被複制到你的項目中是以你可以編輯Library代碼。

2、 確定Library 列在setting.gradel檔案的頂部。

include ‘:app’, ‘:my-library-module’

3、 打開app子產品的build.gradle檔案添加一個新的依賴到dependencies中:

dependencies {

compile project(“:my-library-module”)

}

4、 單擊Sync Project with Gradle Files。

現在,你的Android Library中的任何代碼和資源都是可以被你的app子產品通路,Library的AAR檔案将會在你的APK打包的時候加入進去。

1、 資源合并可能導緻沖突

2、 Library子產品可以包含JAR 包。

3、 Library子產品不能使用 raw資源

4、 App子產品的最小SDK版本必須等于或高于Library中的版本。

5、 每個Library子產品建立它自己的R類。

本文作者:宋志輝

繼續閱讀