http://blog.csdn.net/qwertyuiop159158/article/details/50053551

思路:

1:   编译后查看out\target\product\product\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: 去除不需要的字体

裁剪字体的时候,有部分字体是不可删除的以Roboto开头的如 Roboto-Black

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: 裁剪不必要的属性内容

6.在内核裁剪不必要的模块

7.其他具体操作:

7.1 裁剪资源

PRODUCT_AAPT_CONFIG := mdpi large

PRODUCT_AAPT_PREF_CONFIG := mdpi

7.2 降低像素密度

ro.sf.lcd_density=160

7.3 裁剪语言

PRODUCT_LOCALES := en_US zh_TW zh_CN

7.4 去掉gms包

#$(call inherit-product-if-exists, vendor/google/products/gms_base.mk)

7.5 去掉无用的权限 在/tablet_core_hardware.xml 中

+

+

-

-

-

-

-

-

-

7.6 去掉开机动画 和开机logo

7.7 打包(package.sh)的时候删除其他文件 包括 apk, 内核模块, bin文件

rm $OUT/system/vendor/modules/81*.ko

rm $OUT/system/vendor/modules/8723bs.ko

rm $OUT/system/vendor/modules/ad5820_act.ko

rm $OUT/system/vendor/modules/afa750.ko

rm $OUT/system/vendor/modules/ar0330.ko

rm $OUT/system/vendor/modules/aw5306_ts.ko

rm $OUT/system/vendor/modules/esp8089.ko

rm $OUT/system/vendor/modules/dw9714_act.ko

rm $OUT/system/vendor/modules/ft5x_ts.ko

rm $OUT/system/vendor/modules/fxos8700.ko

rm $OUT/system/vendor/modules/gc*.ko

rm $OUT/system/vendor/modules/gsl*.ko

rm $OUT/system/vendor/modules/gt*.ko

rm $OUT/system/vendor/modules/hi253.ko

rm $OUT/system/vendor/modules/icn83xx_ts.ko

rm $OUT/system/vendor/modules/imx214.ko

rm $OUT/system/vendor/modules/icn83xx_ts.ko

rm $OUT/system/vendor/modules/mcs7830.ko

rm $OUT/system/vendor/modules/mma*.ko

rm $OUT/system/vendor/modules/ov*.ko

rm $OUT/system/vendor/modules/rtl8150.ko

rm $OUT/system/vendor/modules/sp*.ko

rm $OUT/system/vendor/modules/bma250.ko

rm $OUT/system/vendor/modules/t8et5.ko

rm $OUT/system/vendor/modules/siv121d.ko

rm $OUT/system/vendor/modules/s5k4*.ko

rm $OUT/system/vendor/modules/qf9700.ko

rm $OUT/system/vendor/modules/vfe_os.ko

rm $OUT/system/vendor/modules/vfe_subdev.ko

rm $OUT/system/vendor/modules/vfe_v4l2.ko

rm $OUT/system/vendor/modules/videobuf-core.ko

rm $OUT/system/vendor/modules/videobuf-dma-contig.ko

rm -rf $OUT/system/app/Calculator

rm -rf $OUT/system/app/HoloSpiralWallpaper

rm -rf $OUT/system/app/Browser

rm -rf $OUT/system/app/Calendar

rm -rf  $OUT/system/app/Camera2

rm -rf  $OUT/system/app/Exchange2

rm -rf  $OUT/system/app/Email

rm -rf $OUT/system/app/Galaxy4

rm -rf $OUT/system/app/Gallery2

rm -rf $OUT/system/app/LiveWallpapers

rm -rf $OUT/system/app/LiveWallpapersPicker

rm -rf $OUT/system/app/PrintSpooler

rm -rf $OUT/system/app/VideoPlayer

rm -rf $OUT/system/app/QuickSearchBox

rm -rf $OUT/system/app/DownloadProviderUi

rm -rf $OUT/system/app/DeskClock

rm -rf $OUT/system/app/PhotoTable

rm -rf $OUT/system/app/HTMLViewer

rm -rf $OUT/system/app/Development

rm -rf $OUT/system/app/PicoTts

rm -rf $OUT/system/app/UserDictionaryProvider

rm -rf $OUT/system/app/Music

rm -rf $OUT/system/app/NoiseField

rm -rf $OUT/system/app/PhaseBeam

rm -rf $OUT/system/app/OpenWnn

rm -rf $OUT/system/app/VisualizationWallpapers

rm -rf $OUT/system/app/DocumentsUI

rm -rf $OUT/system/precopy

rm -rf $OUT/system/priv-app/Contacts

rm -rf $OUT/system/priv-app/CalendarProvider

rm -rf $OUT/system/priv-app/WallpaperCropper

rm -rf $OUT/system/priv-app/MmsService

rm -rf $OUT/system/priv-app/DownloadProvider

rm -rf $OUT/system/priv-app/TelephonyProvider

rm -rf $OUT/system/priv-app/ContactsProvider

rm -rf $OUT/system/priv-app/MusicFX

rm -rf $OUT/system/media/audio/notifications/*

rm  $OUT/system/bin/ntfs-3g.probe

rm  $OUT/system/bin/ntfs-3g

rm  $OUT/system/bin/gdbserver

rm  $OUT/system/bin/usb_modeswitch

7.8 裁剪TTS ,注释如下makefile

external/skia/Android.mk

external/svox/pico/lang/all_pico_languages.mk

android5.1.1 触摸震动,基于android5.1无显示触摸系统的系统镜像裁剪相关推荐

  1. 基于MATLAB的无刷直流调速系统的设计与仿真

    614 无刷直流电动机与常规有刷电动机的最大不同之处是其不具有机械整流结构,而是由一种由控制线路和电源开关构成的电子变换器,将直流电流以一定的顺序输入到无刷电动机的定子绕组中,以形成一个旋转的磁场,从 ...

  2. android触摸震动原理

    android触摸震动原理 作者: qw15262901392@gmail.com http://blog.csdn.net/a345017062/article/details/6417929 ht ...

  3. 《About Multi-Touch(多点触摸是个什么东西?)》:基于光学原理的多点触摸技术全解析...

    今天给大家奉上的是"基于光学原理的多点触摸技术"集合文章,包括: -- 受抑全内反射多点触摸技术(FTIR)      -- (正背投式)散射光照明多点触摸技术(DI)      ...

  4. 基于rk3288平台的gt9xx 触摸驱动移植

                                              基于rk3288平台的gt9xx 触摸驱动移植 一.硬件介绍:     1 core-rk3288j 核心板     ...

  5. 基于Android 移动端的网络视频探索系统【100010403】

    基于移动端的网络视频探索系统 1 引言 1.1 研究背景 智能手机用户在 2015 年占全:人数比例超过百分之十,在 2016 年的时候手机用户超过 20 亿,中国占百分之三十左右.现如今,全:的智能 ...

  6. 基于 EG6831 的无感 BLDC 控制方案

    屹晶微电子有限公司 版本号:V1.11 电机控制解决 方案 Motor Control Solution ---------基于 EG6831 的无感 BLDC 控制方案屹晶微电子有限公司 基于 EG ...

  7. 一种基于蓝牙和语音控制的智能家居系统【100010378】

    2018年大学生电子设计竞赛设计报告 一种基于蓝牙和语音控制的智能家居系统 摘要:本项目使用 STM32F407 作为主控芯片,通过蓝牙和语音控制实现安全.便宜的智能家居系统.实现了手机实现家电控制: ...

  8. 基于GPS的嵌入式公交自动报站系统的研究

    基于GPS的嵌入式公交自动报站系统的研究 时间:2009-08-15 01:54:48  来源:   前,国内各大城市的无人售票公交车大都采用半自动报站系统,即通过人工干预语音信箱进行语音报站,和传统 ...

  9. 基于opencv的家居智能安防机器视觉系统

    基于opencv的家居智能安防机器视觉系统(关键词:Windows.树莓派.python.opencv) 1.写在前面的话 大学4年很快过去了,因为疫情原因我们从大四上学期结束之后直接跳到了大学的尾声 ...

最新文章

  1. 4.5万字手把手教你实现MySQL TB级数据存储!!
  2. 计算机专业考研英语二国家线,历年考研英语国家线汇总(2009-2020)
  3. LeetCode Algorithm 414. 第三大的数
  4. [SQLITE_READONLY] Attempt to write a readonly databse (attempt to write a readonly database)
  5. Super-palindrome(思维)
  6. unity3d android 后台运行,unity3d发布apk在android虚拟机中运行的详细步骤(unity3d导出android...
  7. 【数据结构笔记03】算法实例:最大子列和
  8. php加skplayer,织梦dedecms怎么整合添加ckplayer播放器支持flv,mp4等播放功能
  9. 图像超分辨去噪(去雨雾)
  10. 技巧分享篇---如何从GitHub上下载某个项目中单个文件的方法
  11. ABBYY FineReader 15如何比较文档?
  12. 9.PMAC上位机-上位机发送指令
  13. html 漂浮浏览器,HTML5浏览器嵌入窗口程序解决方案 | Hoverlees#39; Blog
  14. IDEA(或Android Studio)推送(push)代码报错 unable to read askpass response from ‘C:\Users\Urasaki\AppData\Loc
  15. 投稿经验分享之五:申请专利
  16. bokeh参数设置详解
  17. php文件如何上传到服务器,php文件怎么上传到云服务器
  18. 访问网络内不同ip段的计算机,[转]问题:话说两台电脑在一个局域网内,把它们的IP地址都设成不同的网段,请问,它们可不可以通讯?如...
  19. 浙江大学计算机学院 00级,“00”后来了!浙江大学2018级新生报到啦!
  20. chatgpt赋能python:Python中的4J-Selenium库:从基础到进阶

热门文章

  1. 经济学人 商论 倾听世界的声音 分享
  2. 《Java黑皮书基础篇第10版》 第2章【笔记】
  3. SSM快速开发超市管理系统 用户详情功能实现(二)
  4. 高通dw9800W_actuator流程总结
  5. 反应性叠氮化物N3-PEG-NH2,Azide-PEG-Amine,叠氮-聚二乙醇-胺
  6. IT的老兵:我们缺什么
  7. 天之痕 android 去广告,轩辕剑叁外传天之痕去广告版
  8. Python中常用的数据结构---哈希表(字典)
  9. LWIP 双IP实现
  10. 台式计算机风扇,台式电脑风扇声音大怎么办_台式风扇噪音大怎么解决