打包方法:
- 打開Gradle面板 Gradle Projects;
- 選擇Library對應的Gradle Task,比如:":testsdk";
- 依次 Tasks > build > assemble (打包release/debug aar) / assembleDebug/ assembleRelease
引用方法:
把 AAR 放入 libs
在 build.gradle 添加 repositories{
flatDir{dirs 'libs'}}
在 build.gradle 添加 dependencies{compile '包名:類庫名:版本號@aar'}(dependencies 設置時需要放在 compile fileTree 的上面,否則無法識別)
優點:
-
- 自己類庫可以自己維護自己內部的AAR引用;
- 能像維護libs里的jar類庫一樣簡單;
- dependencies 設置方式和在線解析引用的方式一樣;
缺點×:
-
- dependencies 設置時需要放在 compile fileTree 的上面,否則無法識別.
- dependencies 設置的名字 和 在線解析引用的方式不一樣.
-
- 如在線解析方式:compile 'com.android.support:appcompat-v7:25.3.1.+@aar'
- 如在線解析方式:compile 'com.android.support:appcompat-v7:25.3.1'
- 本地AAR方式:compile 'com.alvin:testsdk:0.0.1@aar'
如何設置正確的本地AAR名稱?
- 解壓AAR包,看AndroidManifest.xml里的 package="com.alvin.testsdk"
- 對應的就是名稱就是 "包名:類庫名",比如:com.alvin:testsdk
- 然后必須設置AAR文件名為 "類庫名-版本號.aar",比如:testsdk-0.0.1.aar
- 最后拼接正確的版本號就是 com.alvin:testsdk:0.0.1
- 最后compile為 compile 'com.alvin:testsdk:0.0.1@aar'
(debug build 使用 test-debug.aar, release build 使用 test-release.aar,重命名為testsdk-0.0.1.aar)