如何减小apk的大小

本文分享了通过更换二维码扫描库和使用安卓高斯模糊优化图片来减少APK大小的实际经验,有效降低了APK体积。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近打包了一下apk,9兆,按说不算大,可是上级说你接手之前只有四兆,我就换了一个zxing.jar,把项目中的我觉得不好用百度换成了高德地图,apk就多了四兆多,一开始很想不通,仔细看了几遍项目没有什么能删的,我也没写多少代码。
今天闲着又翻到项目里看,我惊了,zbar的.so文件有4兆,果断换了zxing.3.3识别率高 也只有几百K,
compile 'com.journeyapps:zxing-android-embedded:3.3.0@aar'

compile 'net.qiujuer.genius:blur:2.0.0-beta4'
IntentIntegrator integrator = new IntentIntegrator(this);
integrator.setCaptureActivity(CaptureActivity.class);
integrator.setBeepEnabled(true);
integrator.setPrompt("请将二维码对准取景框中");
integrator.setCameraId(0);
integrator.initiateScan();
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {

    IntentResult intentResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    if (intentResult.getContents() != null) {
}}

几行代码就搞定了,比zbar简单当然比老版本的zxing 也简单识别率不知道比zbar是不是高,没测试过,感觉差不多,比老版本强了好多

这个框架换下来少了1兆

然后是图片,项目里有1920*1080的死图,还是毛玻璃的,突然想到了100*100的图片充满全屏会有马赛克,不清晰,突然想到了安卓自带的高斯模糊!!!
说干就干 

compile 'net.qiujuer.genius:blur:2.0.0-beta4'
Bitmap bt = BitmapFactory.decodeResource(getResources(), R.drawable.xxx);
Bitmap newBitmap = StackBlur.blurNatively(bt, 20, false);
binding.img.setImageBitmap(newBitmap);

搞定!
500K的背景图 直接修改分辨率成10K,两个背景图就是一兆

还有如果你急于降低apk大小 不要删代码,切忌 ,你删几十个就少一二十K,别问我怎么知道的尴尬

至于更高级的减小apk大小的方法,修改Studio 中项目设置的话 我没做过,感觉还是先从源头解决比较好
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯狂的小彭彭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值