Android studio導出AAR包問題整理。
最近因為項目需求開始整理一個SDK 以AAR的方式提供出去。在整理的過程中遇到了很多坑。
以下是一些總結希望能幫助遇到同樣問題的人。
1.怎麽導出AAR,這種文章太多了,我貼一個大家可以做參考。
http://blog.csdn.net/g777520/article/details/53331797
如果不關心 怎麽生成jar包就直接往下滑,看第二節。基本操作就在這兒了。
2. 第一步的操作導出的AAR只是當前lib的代碼內容,當前lib所依賴的其他lib或者依賴(jar包除外)都不會被打進AAR中。
類似 compile ‘tv.danmaku.ijk.media:ijkplayer-java:0.7.9’ 跟 compile project(‘:XXLib’)的依賴, 都不會打進去。這跟需求不匹配啊。需要解決。 查閱了很多資料如下: http://blog.csdn.net/wwj_748/article/details/53230706 是相對詳細的,但也只是簡單介紹。 從文章中定位到了一個第三方的庫是專門解決這種問題的。 https://github.com/adwiv/android-fat-aar 使用的過程中遇到了一些問題,這些問題主要是 新老Android studio版本上文件的改動導致的。參考該工程的issue基本都是可以解決的。 說下重點你可能會遇到的一個錯誤的解決辦法吧。* Where:
Script ‘/Users/gy/temp/baiduIJK/LiveRoomLib/fat-aar.gradle‘ line: 220
* What went wrong:
Execution failed for task ‘:LiveRoomLib:generateRJava‘.
> /LiveRoomLib/build/intermediates/exploded-aar/baiduIJK/XXXLib/unspecified/AndroidManifest.xml (No such file or directory)
這個錯誤是在導AAR的lib 下exploded-aar這個目錄裏沒有其所以來的 lib的內容,較快的解決辦法就是去XXXLib的
XXXLib/build/outputs/aar
目錄下將XXXLib的 arr coppy 到/LiveRoomLib/build/intermediates/exploded-aar/這個目錄下進行解壓,然後按照這個路徑去存放你的工程。
親測有效。
3.在翻閱資料的過程中又發現了
https://github.com/Vigi0303/fat-aar-plugin
這個lib說是解決了大部分的問題可以快速的導出需要的AAR,沒有嘗試,你們可以試下。
Android studio導出AAR包問題整理。