Android 系统编译之裁剪Apk

本文介绍了Android系统编译时如何裁剪不需要的APK,以减少内存占用。内容包括裁剪APK的原因,APP源码及编译配置文件的位置,预装APK的分类和位置,以及详细的裁剪步骤,涉及.mk配置文件的修改和已编译APK的删除。
摘要由CSDN通过智能技术生成

一、为什么要裁剪APK?

Android系统在编译过程中,会自带一些我们没必要的软件。每次系统编译打包时,都会默认将这些软件打包到image里面,升级的时候就会有这些软件。并且暂用内存。

然而,大部分的系统默认软件我们是用不到的,那就需要将他们裁剪掉。使其不包含在image中打包升级。

二、APP的源码文件的位置

1、android自带的app的源码位置
android的自带的apk源码位置在“android4.4\packages\apps”的文件夹下面。
在这里插入图片描述

2、厂家自带的app源码位置
我买的是芯灵思的开发板,厂家有出厂绑定apk在开发板里。厂家自带的apk源码位置在“\android4.4\device\softwinner\astar-sinlinx”的文件夹下面(astar-sinlinx不同厂家不同)
在这里插入图片描述

三、编译配置文件的位置

配置文件为.mk结尾的文件。

1.android自带的app的源码的配置文件主要在 build/target/product目录下
在这里插入图片描述

2.厂家自带的app的源码的配置文件主要在 \device\softwinner\astar-sinlinx目录下.
在这里插入图片描述
3.通过修改上面的配置文件,来决定是否编译那些app源码,从而得到对应的安装包apk。
例如:\build\target\product\generic_no_telephony.mk 这个配置文件,在这个配置文件下删除不要的项目,就可以使在编译的时候,不编译这个项目。(注意:如果之前有编译过,需要把已经生成了的的apk删除,才能确保不被打包到image中)。具体APK作用, 参看网址Android系统裁剪 apk作用

在这里插入图片描述
大概的代码路径:
build/make/target/product/core.mk
build/make/target/product/generic_no_telephony.mk
build/make/target/product/core_minimal.mk
build/make/target/product/sdk_base.mk
device/fsl/imx8q/ProductConfigCommon.mk
packages\services\Car\car_product\build\car.mk

4.使用find+grep组合, 查找.mk文件
如:

root@virtual-machine:/home/root/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值