Android 4.3 系统剪裁——删除不使用的app及增加自己app
2016-12-13 17:10
447 查看
删除不使用的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 从/packages/app/calendar下复制proguard.flags到自己项目里.
3 修改/build/target/product/generic_no_telephony.mk,加入自己apk名字:
(android2.2版本修改的是generic.mk)
把包含Android.mk的源码放到
android4.3/packages/apps
4 编译
命令行到项目根目录,执行:
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
ok 搞定 !
系统自带的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 从/packages/app/calendar下复制proguard.flags到自己项目里.
3 修改/build/target/product/generic_no_telephony.mk,加入自己apk名字:
(android2.2版本修改的是generic.mk)
把包含Android.mk的源码放到
android4.3/packages/apps
4 编译
命令行到项目根目录,执行:
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
ok 搞定 !
相关文章推荐
- Android 4.3 系统裁剪——删除不使用的app及增加自己app
- Android 4.3 系统裁剪——删除不使用的app及增加自己app
- Android 4.3 系统裁剪——删除不使用的app及添加自己app
- Android -- Camera 照相和录像, 使用系统APP和自己生成Camera
- android使用mount挂载/system/app为读写权限,删除或替换系统应用
- android使用mount挂载/system/app为读写权限,删除或替换系统应用
- android技巧:把自己的app变成手机系统自带的app[/system/app]
- Android: Receiving Data from the Send Intent,将自己的app注册系统分享
- android技巧:把自己的app变成手机系统自带的app[/system/app]
- android studio开发教程 ListActivity的2种使用方法:系统默认布局和自己定义布局
- 删除Android系统的所有自带的APP
- Android 4.3系统拍照后无法剪裁问题
- android使用mount挂载/system/app为读写权限,删除或替换系统应用
- Android如何安装系统应用,及自己增加安装系统应用的接口
- 如何使用eclipse单独调试android系统的app
- adb shell下使用命令行删除android系统中指定文件和文件夹
- Android 使用系统限制的权限的apk应安装到 /system/app 目录下
- c语言使用链表编写一个可以实现班级学生管理系统,增加,删除,修改学生信息
- Android系统编译之增加和删除第三方应用