赞
踩
前言:android系统裁剪优化一直是各个厂商定制产品的关键步骤,包括浅层次的去除不必要的apk(android apk裁剪定制 )和深层次的裁剪整个编译系统和框架层. android作为开源系统,各个产品同质化严重,只有深层次的裁剪定制自己的系统,才能充分体现各自产品的特性,也是优化各自产品的关键步骤,此篇文章主要关注编译系统和框架层的裁剪,抛砖引玉, 还有很多地方可以改进的地方,基于工作中时间限制,没有彻彻底底的进行,此处只是工作的实战篇,请拍砖引论,apk裁剪请看之前的单独文章(android apk裁剪定制 ).
思路:
android系统大而繁杂,对于不太熟悉android真个框架的朋友可以从真个思路入手:
1. 给予原生的代码镜像,adb shell进入单板, 主要是查看/system文件夹的内容,从这个文件夹入手,裁剪不必要的服务,库文件,apk,等等.
2. 了解整个编译系统,从编译过程入手,看隐含的可裁剪项,过程和思路很重要。
具体裁剪内容:
1. build/target/product是编译产品关键的mk文件存放处,此处可以更改各个mk文件编译内容进行裁剪
base.mk文件:去除不必要的lib库文件和bin文件
core_minimal.mk: dmtracedump, Shell, HTMLViewer, screencap等工具和apk等
core.mk: libnfc_ndef, mms-common nfc功能库文件和mms短信功能等
embedded.mk: dumpstate, dumpsys
emulator.mk: camera.goldfish , camera.goldfish.jpeg , lights.goldfish , gps.goldfish等
full_base.mk: 去除不需要的库和apk
full_base_telephony.mk: 去除apk和电话功能
generic_no_telephony.mk:去除apk和不必要的库
languages_full.mk,locales_full.mk: 去除不需要的语言设置(可以去除res包的大小)
2. external/icu4c/stubdata/icu-data-default.txt: 修改此文件,去除编译出的icu.dat文件大小,去除不需要的语言,重新用脚本生成想要的dat文件
external/skia/Android.mk: 去除其中test的编译
3. frameworks/base/data/etc/platform.xml: 去除不需要的属性
frameworks/base/data/fonts/Android.mk: 去除不需要的字体
frameworks/base/data/fonts/fallback_fonts.xml: 去除不需要的字体
frameworks/base/data/fonts/fonts.mk: 去除不需要的字体
4. frameworks/base/data/sounds/AllAudio.mk: 去除不需要的声音文件(除了ui的保留,其他都可以去除)
frameworks/base/data/videos/VideoPackage1.mk: 去除不需要的视频文件
frameworks/native/data/etc/handheld_core_hardware.xml: 去除不需要的属性
frameworks/native/data/etc/tablet_core_hardware.xml: 去除不需要的属性
frameworks/base/preloaded-classes: 裁剪不必要的资源加载
5. init.rc: 裁剪不需要的本地服务
system.prop: 裁剪不必要的属性内容
以上这些内容可以使得镜像大大的减少,包括参加apk内容,根据实践,镜像减少100M,当然还有可以裁剪的地方,请广大同胞搞点玉出来,我也好学习学习
1.系统自带apk作用及是否可删除,系统比较老,原理都差不多的。
Andriod 4.0.4系统包 Andriod 4.1.1系统包 说明
ApplicationsProvider.apk ApplicationsProvider.apk 应用程序存储、 程序管理器(不可删)
BackupRestoreConfirmation.apk BackupRestoreConfirmation.apk (不能删)
Bluetooth.apk Bluetooth.apk 蓝牙(不能删,你懂的)
BooksTablet.apk Books.apk 谷歌读书软件(可删,没用的看书软件,可用GGbook或者其他代替,没啥用,我删了)
BrowserGoogle.apk BrowserGoogle.apk 自带浏览器(可删,没啥用,我删了,反正我用UC浏览器)
Calculator.apk Calculator.apk 计算器(可删,鸡肋的计算器,可用其他多功能计算器代替,没啥用,我删了)
CalendarGoogle.apk CalendarGoogle.apk 日历(可删,鸡肋的日历,我删了,加个中华万年历)
CalendarProvider.apk CalendarProvider.apk 日历储存(可删,上面删了这个也要删)
CameraGoogle.apk 相机(不能删,系统自带的好过其他软件,我已经对比过很多照相软件都没自带的好.原生的强大啊!
CertInstaller.apk CertInstaller.apk 证书(不能删)
ChromeBookmarksSyncAdapter.apk ChromeBookmarksSyncAdapter.apk 书签同步(可删,没啥用,我删了)
Contacts.apk Contacts.apk 通讯录(不建议删,自带通讯录)
ContactsProvider.apk ContactsProvider.apk 联系人储存(不建议删,如果用QQ通讯录可直接删掉)
Currents.apk 新鲜汇(4.1.1新增,可删,没用过)
DefaultContainerService.apk DefaultContainerService.apk 软件包访问(不能删,删了不能安装软件了)
DeskClockGoogle.apk DeskClockGoogle.apk 时钟(可删,可用整点闹钟代替,没啥用,我删了)
DownloadProvider.apk. DownloadProvider.apk 下载提供(可删,那个下载内容,没啥用,我删了)
DownloadProviderUi.apk DownloadProviderUi.apk 下载提供UI(可删,没啥用,我删了)
DrmProvider.apk DrmProvider.apk DRM受保护数据存储服务(不能删)
EmailGoogle.apk EmailGoogle.apk 电子邮件(可删,没用手机看邮件的可删,可用其他代替)
ExchangeGoogle.apk Exchange2Google.apk 电子邮件服务(可删,上面删了,这也删)
FaceLock.apk FaceLock.apk 人脸识别(不能删,删了就不能通过人脸锁屏了)
GalleryGoogle.apk GalleryGoogle.apk 图库 4.1.1包括了相机(不要删,很强大,很好用)
GenieWidget.apk GenieWidget.apk 新闻与天气(可删,没用的东西)
Gmail.apk Gmail.apk 谷歌邮箱(可删,没用谷歌邮箱都可以删,反正我就删了)
GmsCore.apk 谷歌PLAY服务(4.1.1新增,可删,不用Google PLAY的可删)
GoogleBackupTransport.apk GoogleBackupTransport.apk 谷歌备份传输(建议不删,不喜谷歌者或不需要可删,无FC)
GoogleContactsSyncAdapter.apk GoogleContactsSyncAdapter.apk 谷歌联系人同步适配器(可删,不喜谷歌者或不需要可删,无FC)
GoogleEars.apk 歌曲识别功能(可删,不怎么用)
GoogleEarth.apk GoogleEarth.apk 谷歌地球(可删,没啥用的东西,电脑上用还可以,手机简直无用)
GoogleFeedback.apk GoogleFeedback.apk 电子市场反馈(可删,不用自带的电子市场就可以删掉这个了,没啥用,反正我就删了)
GoogleLoginService.apk GoogleLoginService.apk 谷歌账户管理(可删,谷歌帐户,我从不用谷歌帐号的,我删了)
GooglePartnerSetup.apk GooglePartnerSetup.apk 谷歌合作伙伴(可删,要用谷歌的服务的别删.没啥用,我删了)
GoogleQuickSearchBox.apk 谷歌搜索(可删,要用谷歌搜索的别删.没啥用,我删了)
GoogleServicesFramework.apk GoogleServicesFramework.apk 谷歌服务构架(可删,不喜谷歌者或不需要可删,无FC)
GoogleTTS.apk GoogleTTS.apk 文字转语音(可删,没啥用的东西,反正我就删了)
HoloSpiralWallpaper.apk HoloSpiralWallpaper.apk 不能删,删了出FC
HTMLViewer.apk HTMLViewer.apk HTML查看器(可删,没啥用,反正我删了,无FC)
InputDevices.apk 4.1.1新增,不能删
KeyChain.apk KeyChain.apk 密码管理服务, 系统基本组件, 不可卸载(不能删)
LatinImeDictionaryPack.apk LatinImeDictionaryPack.apk 词典大全(可删.没啥用,,无FC)
LatinImeGoogle.apk LatinImeGoogle.apk 安卓键盘(可删,没啥用,可百度输入法替代)
Launcher2.apk Launcher2.apk 启动器(不能删,删了你就没有桌面,也就是用不了了,除非你用其他桌面软件替代
LiveWallpapers.apk LiveWallpapers.apk 动态壁纸(可删,上面删看这个也要删)
LiveWallpapersPicker.apk LiveWallpapersPicker.apk 动态壁纸选择器(可删,反正我不用动态壁纸的,卡啊!,反正我就删了)
Magazines.apk 谷歌杂志(4.1.1新增,可删,没怎么用)
Map.apk Maps.apk 地图(可删,可用高德地图或者导航替代,没啥用,我删了)
MediaProvider.apk MediaProvider.apk 媒体储存(不能删,删除后会出现无法设置铃声)
MediaUploader.apk MediaUploader.apk 上传的内容(可删,不发彩信的可删)
Microbes.apk 微生物动态壁纸(可删,反正我不用动态壁纸的,我删了)
Mms.apk Mms.apk 短信(删除后接受不了彩信)
Music2.apk Music2.apk 音乐(可删,没有天天动听好用,反正我删了)
MusicFX.apk MusicFX.apk 音乐音效(可删,上面删了,这也删)
NetworkLocation.apk NetworkLocation.apk 提供网络位置(可删,删除后有时无法定位,GPS好的时候就没影响)
Nfc.apk Nfc.apk 近场通讯(可删,反正也用不上)
NoiseField.apk NoiseField.apk 动态壁纸(可删,反正我不用动态壁纸的,我删了)
OneTimeInitializer.apk OneTimeInitializer.apk (建议不删,刷机后第一次启动用到的,现在没啥用了,我删了)
PackageInstaller.apk PackageInstaller.apk 打包安装管理(不能删)
PhaseBeam.apk PhaseBeam.apk 动态壁纸(可删,反正我不用动态壁纸的,我删了)
Phone.apk Phone.apk 手机拨号器(不能删)
Phoneskyapk Phonesky.apk Google play电子市场(可删,反正不用电子市场,删了就不能从google play上下载软件了)
PlusOne.apk PlusOne.apk google+社区软件(可删,没啥用,我删了)
Settings.apk Settings.apk 设置(不能删)
SettingsProvider.apk SettingsProvider.apk 设置储存(不能删)
SetupWizard.apk SetupWizard.apk 设置向导(不建议删,如果删了,在恢复出厂值开机的时候进不去)
SharedStorageBackup.apk SharedStorageBackup.apk 共享存储备份(不能删)
SoundRecorder.apk SoundRecorder.apk 录音机(建议不删,不用的可删)
Stk.apx Stk.apk SIM卡管理程序(不可删)
Street.apk Street.apk 谷歌街景(可删,没啥用,我删了,大把软件替代)
Superuser.apk Superuser.apk Root后才有的(当然不能删)
SystemUI.apk SystemUI.apk 系统用户界面(不能删)
TagGoogle.apk TagGoogle.apk NFC标记(建议不删,删了NFC功能不能用)
Talk.apk Talk.apk 谷歌talk(可删,没啥用,反正我就删了)
Talkback.apk talkback.apk 盲人辅助(可删,在辅助功能里的,没啥用,反正我就删了)
TelephonyProvider.apk TelephonyProvider.apk 电话信息储存(不能删)
Thinkfree.apk Thinkfree.apk 文档软件(可删,没啥用,用其他文档软件可替代)
UserDictionaryProvider.apk UserDictionaryProvider.apk 我的字典(不能删,删了这个设置语言和输入法的时候会出现FC)
Velvet.apk 谷歌搜索(4.1.1新增,可删,要用谷歌搜索的别删)
VideoEditorGoogle.apk VideoEditorGoogle.apk 电影(可删,没啥用,反正我就删了)
Videos.apk Videos.apk 视频(可删,没啥用,反正我就删了)
VisualizationWallpapers.apk VisualizationWallpapers.apk 可视化壁纸(可删,反正我不用动态壁纸的,我删了)
VoiceDialer.apk 语音拨号器(可删,语音?那不如那国产山寨机哦,识别速度慢死了,有后天进程,我删了)
VoiceSearch.apk 语音搜索(可删,理由同上)
VoiceSearchStub.apk 语音搜索(4.1.1改名了 不用语音搜索的可删)
v*p*nDialogs.apk v*p*nDialogs.apk v*p*n连接上网管理(不可删)
YouTube.apk YouTube.apk (可删,国内都用不了,都被封了,建议都删)
2.不可以删除(15项)
1 AccountAndSyncSettings.apk 同步与帐户设定
2 ApplicationsProvider.apk 应用程序支持服务
3 CertInstaller.apk 证书服务
4 ContactsProvider.apk 通讯录/联系人数据存储服务
5 DefaultContainerService.apk 默认通讯录服务
6 DownloadProvider.apk 下载管理器
7 DrmProvider.apk DRM 受保护数据存储服务
8 googlevoice.apk 这个是电话和短信功能
9 MediaProvider.apk 媒体数据存储服务
10 MtkBt.apk 全球卫星定位系统接收器
11 PackageInstaller.apk 程序安装
12 Phone.apk 电话拨号程序
13 Settings.apk 系统设置
14 SettingsProvider.apk 设置服务程序
15 TelephonyProvider.apk 拨号记录存储服务
建议保留(23项)
1 AcwfDialog.APK
2 apkCompassCH.apk 超级指南针(建议保留)
3 Bluetooth.apk 蓝牙(删了就没有蓝牙了)建议保留
4 Calculator.apk 计算器(自带计算器较弱,可用其他替代)
5 Camera.apk 自带相机(用360的可删)
6 Contacts.apk 通讯录/联系人(用第三方通讯录的可删)
7 DataDialog.apk 数据对话框 不确定,没删
8 DeskClock.apk 自带闹钟(用第三方闹钟的可删)
9 EngineerMode.apk 工程师模式 不确定,没删
10 ES_filemanager.apk 资源浏览器(建议保留)
11 fmradio.apk 收音机(可删)
12 Gallery3D.apk 相机相框 (可删)
13 GoLauncher.apk 桌面
14 Mms.apk 自带信息(可删,用第三方短信的就删了吧,提示:删了后,用handsms的的弹出短信框会变得延时,chomp没自带短信甚至不能使用)
15 Music.apk 自带音乐(可删,换成其他播放器)
16 Provision.apk 开机引导程序
17 SetupWizard.apk 开机引导(在定制rom时不可删,刷好机可用rootexplorer删掉,恢复出厂前要装回去)
18 SoundRecorder.apk 录音机(可用第三方录音软件替代)
19 Stk.apk s卡服务(可删,有机油把联系人复制在s卡上的就不要删它,删了可解决信号问题)
20 Superuser.apk 授权程序(就是程序列表上面那个,用这个获取root才有的)
21 Term.apk 访问终端的
22 VolumeControl.apk 音量控制中心
23 YGPS.apk 这个应该和GPS有关吧
可删除(57项)
1 Browser.apk 谷歌浏览器(喜欢UC的可用UC替代)
2 Calendar.apk 日历(不用日历的可删)
3 CalendarProvider.apk 日历程序支持服务(不用日历的可删)
4 ChtPack.apk touchpal输入法注音语言包(从来不用注音的删)
5 Email.apk Email(不用自带email接受邮件的可删)
6 facebook.apk facebook(用不到的删)
7 GenieWidget.apk 天气与新闻(我自己不用他看新闻,删了)
8 Gmail.apk Gmail邮件(可删)
9 GoogleBackupTransport.apk 谷歌备份(可删)
10 GoogleCalendarSyncAdapter.apk 谷歌日历同步适配器(可删)
11 GoogleContactsSyncAdapter.apk 谷歌联系人同步适配器(可删)
12 GoogleFeedback.apk 谷歌反馈(可删)
13 GooglePartnerSetup.apk 谷歌合作伙伴设置(可删)
14 GoogleQuickSearchBox.apk 谷歌搜索(删了影响到桌面的搜索插件)
15 GoogleServicesFramework.apk 谷歌同步支持服务框架(删了不能同步联系人,不能登录google)
16 HTMLViewer.apk HTML浏览器(本地看html,用不到可删)
17 HWCalla_TaiWan.apk 繁体中文手写输入法(可写简体的,不用手写的可删)
18 KaiXinAccountService.apk 未知程序,没敢删
19 LatinIME.apk android键盘输入法(可删)
20 LatinImeGoogle.apk 未知程序,没敢删 输入法谷歌,换百度输入了,删
21 LatinImeTutorial.apk android键盘输入法设置(可删)
22 Launcher2.apk 2.2原生桌面(用ADW和PRO的可删,删了以后第三方桌面要在开机以后从电脑安装,91,豌豆助手都可)
23 LiveWallpapers.apk 动态壁纸
24 LiveWallpapersPicker.apk 同上动态壁纸(可删)
25 LiveWalls.apk 动态壁纸(可删)
26 MagicSmokeWallpapers.apk 魔术烟雾壁纸
27 Maps.apk Google地图(可删,自行换成brust版本)
28 MarketUpdater.apk 谷歌市场升级(软件更新用到,可删)
29 MediaUploader.apk 媒体上传(可删)
30 MMITest_II.apk 工程模式里用到的手机测试程序(可删)
31 NetworkLocation.apk 网络位置(可删)
32 NotePad.apk 记事本(可删)
33 OneTimeInitiaLizer.apk 首次启动时用来装 Google Apps 的,可删除
34 PicoTts.apk 可删(文字语言转换的语音合成引擎,设置-语音输入与输出中)
35 PingYinIME.apk 拼音输入法
36 ProjectMenuAct.apk 工程菜单
37 Protips.apk 桌面小绿人插件(可删,就是有提示怎么玩手机)
38 RenRenAccountService.apk
39 SNSCommon.apk 常见的SNS,不需要,删
40 SnsContentProvider.apk SnS的内容提供商,删
41 SnsWidget.apk SnS的小工具,删
42 SnsWidget24.apk SnS社区,删
43 Soundback.apk 辅助功能 删
44 Street.apk 谷歌街道(可删,对于国内街道无效果的貌似,与地图关联)
45 Talk.apk 谷歌talk(可删,但删了就用不了电子市场)
46 Talkback.apk 辅助功能 删
47 TouchPal.apk TouchPal输入法(可删,但自带的三种输入法最好至少保留一种)
48 TtsService.apk Google TTS(Text-to-speech)语音库服务(可删)
49 TwidroydFree342-Huawei-rev1.apk twitter客户端(不用的删了)
50 Updataonline.apk 在线升级(可删)
51 UserDictionaryProvider.apk 用户数据字典服务(可删)
52 Vending.apk 电子市场(可删,不过不建议,很多软件的自动升级时候有它很方便)
53 VisualizationWalls.apk 动态音乐背景壁纸 (删了)
54 VoiceSearch.apk 语音搜索(可删,虽然看上去很美好,事实上我从未用过)
55 VpnServices.apk VPN服务(vpn服务,可删)
56 YouTube.apk YouTube视频(要vpn才能看,删了)
57 zhuyincangjieIME.apk 注音仓颉输入法,用百度了,删
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。