减少APK体积的一种方法

版权声明:欢迎转载,转载请注明出处。 https://blog.csdn.net/u014527323/article/details/55099232

之前做项目的时候,搭建了一个产品框架,里面包含了即时通讯、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:0.1.5@aar' 引入aar文件 

5、使用 compile project(':libzxing') 引入依赖库

6、使用 provided 替代compile 标签,这样引入的库可以保证编译通过,但打包的时候并不引用此第三方库。

在我们的使用场景中,项目框架中引入的第三方库如果在某一个版本不需要使用,就可以通过privided标签来引入此库,打包的时候,这个库就被过滤掉了,但打出的apk是可以正常运行的。(前提是你的apk确实没有用到这个库


因此,我们在打包的时候,分析第三方库的引用方式,灵活的使用provided方式,可以有效的减少APK体积。


减小APK体积的更多方法,在首席套路官的博客里有详细介绍http://blog.csdn.net/u012124438/article/details/54958757



没有更多推荐了,返回首页