AS SDK超簡單的方式,.aar包帶混淆

提出

以前設(shè)計SDK,基本都是設(shè)計一個模塊,然后將模塊打成jar包,其中還要自己去混淆,后來,發(fā)現(xiàn)其實Android studio給我們提供一種更簡便的方式——aar包,可以同時把class和res文件打包進(jìn)去,現(xiàn)在的support v7 和gson-2.21就是aar打包方式。

aar包的好處

1、自動編譯打包生成,不用像jar包方式那樣,模塊修改后又要自己重新打包。
2、jar包不包含資源文件,應(yīng)用時的有可能會報資源找不到的錯誤,而aar包則包含源碼和資源文件。
3、配置好混淆文件后,aar包生成時會自動混淆,不用再操心混淆問題。
4、加快項目的編譯速度。

打包方法

1.先把想要打包成sdk的項目做成Android libraries B不要建成Android project 然后我們建立一個新的Android project A 去調(diào)用寫好的libraries B
2.寫好混淆文件proguard-rules.pro,配置libraries B的build.gradle,其他的模塊的不要改動,配置方式如下:

buildTypes {
        release {
                  minifyEnabled true
                  proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
         }
}

3.運行后,studio就自動把我們的librarys B自動打包成aar包了,這就是我們想要的sdk了(release版的帶混淆,路徑,如圖所示:libraries build outputs aar)

Paste_Image.png

注意:Module中的libs目錄文件會隨著項目的編譯被打包進(jìn)aar文件中,但是build.gradle中的引用庫不會打包進(jìn)aar文件中,這個需要 特別留意。如果你忽略了這個Module的build.gradle中的引用庫,很可能引發(fā)ClassNotFoundException異常。

使用方法

1、把打好的aar包拷貝到需要引用的Android工程libs目錄下

Paste_Image.png

2、 在project的build.gradle文件中添加

repositories {
    flatDir {
        dirs 'libs' 
    }
}

3、再在project的build.gradle文件中dependencies標(biāo)簽中添加下面的依賴。 compile(name:’你的aar名字’, ext:’aar’)

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    //compile(name:'aar名字', ext:'aar')
    compile (name:'kdweibo_lib',ext:'aar')
}

4、完整截圖

Paste_Image.png

總結(jié)

運行你的項目,就這么簡單,有木有????!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容