1. 程式人生 > >減少APK體積的一種方法

減少APK體積的一種方法

之前做專案的時候,搭建了一個產品框架,裡面包含了即時通訊、Crosswalk以及一些第三方的庫,這樣做的好處是

在之後的工程中,可以直接使用這個框架來寫工程,所需要的功能一鍵獲取。

不過,隨之而來的一個問題是,打包之後的APK檔案體積變大,因為有很多功能在新工程中並不需要,但程式碼卻被打包進APK了。

今天看了鴻洋大大的公眾號,裡面推薦了一個減少體積的方法,非常實用。

在Android Studio中,我們使用依賴庫的形式新增第三方庫,常用的引入方式分為以下6種:

1、使用 compile 'com.android.support:recyclerview-v7:23.1.1',從網路上直接down下依賴庫並引用

2、使用 compile fileTree(include: ['*.jar'], dir: 'libs')來新增libs資料夾下所有jar包

3、使用 compile files('libs/gson-2.6.2.jar') 依賴某個jar包

4、使用 compile 'com.bilibili:magicasakura:[email protected]' 引入aar檔案 

5、使用 compile project(':libzxing') 引入依賴庫

6、使用 provided 替代compile 標籤,這樣引入的庫可以保證編譯通過,但打包的時候並不引用此第三方庫。

在我們的使用場景中,專案框架中引入的第三方庫如果在某一個版本不需要使用,就可以通過privided標籤來引入此庫,打包的時候,這個庫就被過濾掉了,但打出的apk是可以正常執行的。(前提是你的apk確實沒有用到這個庫

因此,我們在打包的時候,分析第三方庫的引用方式,靈活的使用provided方式,可以有效的減少APK體積。