删除不使用的apk

系统自带的app位置是在/android4.3/packages/apps

以下是一些APP作用分析:

| |– BasicSmsReceiver

| |– Bluetooth (蓝牙)

| |– Browser (浏览器)

| |– Calculator (计算器)

| |– Calendar (日历)

| |– Camera (相机)

| |– CellBroadcastReceiver

| |– CertInstaller (在Android中安装数字签名。被调用)

| |– Contacts (拨号(调用)、联系人、通话记录)

| |– ContactsCommon

| |– DeskClock (桌面时钟)

| |– Dialer

| |– Email (Email)

| |– Exchange

| |– Gallery (相冊。和Camera相似,多了列表)

| |– Gallery2

| |– HTMLViewer (浏览器附属界面。被浏览器应用调用。同一时候提供存储记录功能)

| |– KeyChain

| |– Launcher2 (登陆启动项,负责应用的调用)

| |– LegacyCamera

| |– Mms (?彩信业务)

| |– Music (音乐播放器)

| |– MusicFX

| |– Nfc

| |– OneTimeInitializer

| |– PackageInstaller (安装、卸载程序的响应)

| |– Phone (电话拨号程序)

| |– PhoneCommon

| |– Protips

| |– QuickSearchBox

| |– Settings (开机设定,包括电量、蓝牙、设备信息、界面、wifi等)

| |– SmartCardService

| |– SoundRecorder (录音机。可计算存储所需空间和时间)

| |– SpeechRecorder

| |– Stk

| |– Tag

| |– VideoEditor

| |– VoiceDialer (语音识别通话)

对于不须要的app,

/out/target/product/m801/system/app删除相应apk。

到/packages/apps找到相应源代码。改动.mk

然后又一次编译。

下次抽时间琢磨一下:

SystemServer.java 删除不须要的系统服务

init.rc 去除不须要依赖的程序

preload 屏蔽不须要的资源与类

google service

3d opengl、rendscript

增加自己定义的apk

有源代码的

1 从/packages/app/calendar下复制Android.mk到自己项目里。并改动内容:

LOCAL_PACKAGE_NAME := AutoRun

AutoRun是自己的app的名字

2 改动/build/target/product/generic_no_telephony.mk,增加自己apk名字:

(android2.2版本号改动的是generic.mk)

把包括Android.mk的源代码放到

android4.3/packages/apps

3 编译

命令行到项目根文件夹,运行:

source build/envsetup.sh

choosecombo(选择默认直接回车)

make -j2

也有说直接这样。我没有測试:

make clean

make

编译完毕后,启动虚拟机:

./emulator -avd androidname -system out/target/product/generic/system.img

单个模块编译的方法

$.build/envsetup.sh

mmm packages/apps/Contacts/ 演示样例编译联系人

这时生成

out/target/product/generic/data/app/ContactsTests.apk

out/target/product/generic/system/app/Contacts.apk

make snod 又一次生成system.img

第三方apk编译

使用yaffs2

今天没有时间搞了。下次再看详细做法。

Android 4.3 系统裁剪——删除不使用的app及添加自己app的更多相关文章

  1. Android系统裁剪:手把手教你如何进行系统裁剪

    前言:android系统裁剪优化一直是各个厂商定制产品的关键步骤,包括浅层次的去除不必要的apk(android apk裁剪定制 )和深层次的裁剪整个编译系统和框架层.   android作为开源系统 ...

  2. [Android] 图片裁剪总结——调用系统裁剪

    花了两天时间看了下android的图片裁剪功能的实现.其实刚开始做这个我挺虚的,以为整个功能都需要自己写出来,但查了些资料,发现android已经提供了裁剪功能,需要的话自己调用就成了.soga,这下 ...

  3. [Android Pro] 调用系统相机和图库,裁剪图片

    private static final int PHOTO_REQUEST_TAKEPHOTO = 1;// 拍照 private static final int PHOTO_REQUEST_GA ...

  4. Android监听系统短信数据库变化-提取短信内容

    由于监听系统短信广播受到权限的限制,所以很多手机可能使用这种方式没法监听广播,从而没办法获取到系统短信,所以又重新开辟一条路. Android监听系统短信数据库内容变化使用场景: 1.监听短信数据库的 ...

  5. Android manifest之系统自带的permission

    Android manifest之系统自带的permission 本文描述Android系统自带的permission.点击查看:“关于permission的原始定义和说明”.点击查看:“Androi ...

  6. Android 8.0系统的应用图标适配

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 参考资料<一起来学习Android 8.0系统的应用图标适配吧>中已经讲得很清楚了,这里我只是简单总结下.详情的内容请阅 ...

  7. Android如何安装系统应用,及自己增加安装系统应用的接口

    根据SIM卡安装系统应用 功能: 1:如何安装系统应用,apk放在system/app系统分区下面. 2:根据SIM卡的归属国家选择性的安装应用. 一:本人使用方法: 在开机的服务里面添加接口(Pac ...

  8. 让Android程序获得系统的权限,实现关机重启,静默安装等功能

    引用:http://www.cnblogs.com/welenwho/archive/2012/05/10/2494984.html android想要获得系统权限有几种途径,一种就是你的程序固化的系 ...

  9. 移动混合开发之android文件管理新建文件和删除文件

    今天经过一天超过8小时的实践,有很多CSS上的细节需要注意: 1, /*注意是对before的操作*/ .content ul li .icon-check-empty:before{ display ...

随机推荐

  1. System.getProperty可以获取的参数

    java.version Java 运行时环境版本 java.vendor Java 运行时环境供应商 java.vendor.url Java 供应商的 URL java.home Java 安装目 ...

  2. oracle数据库回滚

    线下测试数据误操作,回滚攻略--把数据捞出来,这个时间自己设置--表名一定要是:xx_tbd日期 CREATE TABLE user_tbd0718ASselect * from user as of ...

  3. 栈(stack)--c实现(使用双链表)

    是不是直接贴代码不太好,我竟然不知道说什么. 写这个考虑的问题,或者是纠结的问题是这个头指针怎么处理,也就是栈的顶部,最后采用的是初始化第一个栈空间浪费掉,栈顶是有元素的.好像应该去学习下画图,没图不 ...

  4. python3爬取全民K歌

    Python3爬取全民k歌 环境 python3.5 + requests 1.通过歌曲主页链接爬取 首先打开歌曲主页,打开开发者工具(F12). 选择Network,点击播放,会发现有一个请求返回的 ...

  5. 【codeforces 22C】 System Administrator

    [题目链接]:http://codeforces.com/problemset/problem/22/C [题意] 给你n个点; 要求你构造一个含m条边的无向图; 使得任意两点之间都联通; 同时,要求 ...

  6. Mysql学习总结(27)——Mysql数据库字符串函数

    注:sql的移植性比较强,函数的移植性不强,一般为数据库软件特有,例如mysql有mysql的函数,oracle有oracle的函数. 1.concat连接字符串: 从上图中可以看出,直接使用sele ...

  7. Redhat 6配置本地Yum源

    注明:我的方法适用于iso镜像(光盘或光盘镜像:iso9660) 1.挂载(mount) 其它的mount方法可參见此链接 http://www.jb51.net/os/RedHat/1109.htm ...

  8. 【甘道夫】Sqoop1.99.3基础操作--导入Oracle的数据到HDFS

    第一步:进入clientShell fulong@FBI008:~$ sqoop.sh client Sqoop home directory: /home/fulong/Sqoop/sqoop-1. ...

  9. 福利贴——爬取美女图片的Java爬虫小程序代码

    自己做的一个Java爬虫小程序 废话不多说.先上图. 目录命名是用标签缩写,假设大家看得不顺眼能够等完成下载后手动改一下,比方像有强迫症的我一样... 这是挂了一个晚上下载的总大小,只是还有非常多由于 ...

  10. POJ 题目3321 Apple Tree(线段树)

    Apple Tree Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 21566   Accepted: 6548 Descr ...