【Android AAR】1 分鐘不用改任何程式碼在 Eclipse 中使用 AAR

panpf發表於2019-04-15

AAR 是 Google 專門為 Android Studio 推出的一種庫檔案格式,用於便捷的分享和使用 Android Library 專案

而被 Google 放棄的 Eclipse ADT 沒辦法像使用 jar 那樣使用 AAR,但是我們可以使用 AAR 裡的檔案快速建立一個 Eclipse Library 專案來使用

AAR -> Eclipse Library

  1. 將 AAR 檔案字尾名改為 ZIP 並解壓
  2. 在解壓得到的目錄裡建立一個 libs 資料夾,然後將 classes.jar 檔案和 jni 資料夾下的所有檔案移到 libs 資料夾下
  3. proguard.txt 檔案的內容拷貝到你的專案的 proguard-project.txt 檔案中
  4. 在解壓得到的目錄裡建立 project.properties 檔案,內容如下:
    target=android-22
    android.library=true
    複製程式碼
    target 的值隨 AAR 裡 Android Manifest.xml 檔案的 targetSdkVersion 屬性值而定
  5. 刪除 aaptjni 資料夾以及 R.txtproguard.txt 檔案

至此一個 Eclipse Library 專案已經構建完成了,接下來只需開啟 Eclipse 匯入專案並在你的專案中配置引用這個專案即可

FAQ:

  • 執行時如果有 library 中的 Activity 或其他四大元件找不到(ActivityNotFoundException)、asset 資源找不到,jar或so找不到的情況就請參考 【Android】Eclipse引用 library 時的常見異常
  • Activity 報 java.lang.NoClassDefFoundError: *.Activity 異常,通常是因為這個 AAR 裡的 Activity 繼承或實現了其它 AAR 中的類或介面,但是你沒有匯入 AAR 需要的依賴,導致執行時 AAR 裡的 Activity 無法例項化,解決辦法就是匯入全部需要的依賴,具體需要什麼依賴你就自己找到AAR的pom檔案檢視或者反編譯相應出錯的類檢視

相關文章