作者gn00618777 (非常念舊)
看板AndroidDev
標題[問題] aar裡面再包一個aar
時間Sun Oct 1 22:47:30 2017
抱歉..
才疏學淺
我提供sdk也就是 aar,裡面class會用到別人的套件
import com.cwmRotVecTransform_library.CwmRotVecTransformManager
類似這樣,我的class 會以上面的類別來宣告物件並使用他
這個CwmRotVecTransformManager 會call別人的套件內的 *.so
別人的套件也是提供一個aar給我,我想把它包在我的aar裡。
我在自己的 project(也就是sdk project) new → import aar
可以用,且編譯成 app-release.aar了
我的app-release.aar ,用在自己寫的demo apk卻說找不到
CwmRotVecTransformManager
我也試著在我的sdk project proguard-rules.pro keep 住此
com.cwmRotVecTransform_library.CwmRotVecTransformManager
仍然一樣。
解開自己的編譯出的 app-release.aar,看到裡面根本沒有別人提供的 .so
覺得是根本我的 sdk project 雖然 add 別人的 aar 了,但根本沒包進去。
總不可能打開別人的 aar ,自己一個一個慢慢加 jniLibs內的 .so到自己的
project吧..然後自己再宣告一個Manager在自己的project內..
Android studio 有沒有啥選項可以勾選的呢? 讓我可以將別人的aar 也一併包在我的
project 再 build 出 app-release.aar?
感謝看完
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.115.108.110
※ 文章網址: https://webptt.com/m.aspx?n=bbs/AndroidDev/M.1506869255.A.F31.html
1F:→ ssccg: library這種東西本來就是不要包在一起,要用的人兩個aar都 10/02 00:29
2F:→ ssccg: import就好了,未來要抽換也方便 10/02 00:30
3F:→ ssccg: 如果你有業務上的理由一定要這樣做,關鍵字: fat aar 10/02 00:55
4F:→ gn00618777: 謝謝 我有查到fat aar 的說明,我再研究研究 10/02 09:51
5F:→ gn00618777: 謝謝,已解決.. 10/02 14:41
6F:推 showsky: 提供另外一個方法我是拆了AAR 包進去我自己的 AAR ... 10/02 17:25
7F:→ ssccg: 如果只有一個aar而且那個aar不會有新版,我也覺得手動解壓 10/02 17:32
8F:→ ssccg: 把檔案複製到自己的專案最單純.. 10/02 17:32
9F:→ ssccg: 不過會需要做很多次的話還是用build script處理方便... 10/02 17:33
10F:→ y3k: 沒有考慮過自架maven?XD 10/03 07:12
11F:→ ssccg: 最後的aar是要提供給外部單位用,但不想發布在公開repo吧 10/03 09:42
12F:→ y3k: maven repo可以做private的喔@@ 要auth才能的那種 10/03 23:56