admin 管理员组

文章数量: 887083


2024年1月23日发(作者:vue中改变input的值)

本教程主要内容有:Android系统文件夹结构解析、应用软件说明、定制精简、ROM签名把包等内容。本教程测试平台为HTC G2、G3这两个型号,其它机型可以借鉴,刷机有风险,出问题自负。其实这个教程一早就想写的,但由于时间及本人的懒惰,一直拖着。今晚终于静下心来写好本文,本文有部份内容来自于网络。

速度与华丽,你喜欢那个。是不是想要一个又够速度又华丽的ROM呢?我是一个追求新鲜的人,对于手机的ROM,我又追求稳定、精简、美观、省电。现在Hero ROM有很多,最新的有第三方Android 2.1版本,但这些ROM的制作者都会跟据自已的个人喜欢会增加和增少相应的功能或是界面,但我们往往不喜欢这些ROM的某些小方面,所以随着而来面对的问题就是怎样把这个ROM修改成为一个自已真正需要的ROM呢?以往一直是依靠“大杀器”来解决,但觉得还是过于麻烦,所以寻求办法自己动手修改ROM。于是有了本文。废话少说,进入正题。

一、Android系统文件夹结构

一个完整的ROM根目录会有以下几个文件夹及文件:

data

META-IN

system

系统目录说明

1. 应用程序安装目录

1) 系统应用程序所在目录

/system/app/*.apk

2)用户安装应用程序所在目录

/data/app/*.apk

3) 注意:

a)在模拟器中,每重启一次,/system/app/下的应用都会被还原,有时/data/app下也会被清除

b)若在/system/app和/data/app下有重名的应用,不一定会启动哪一个,尤其是在adb install杀死正在运行的程序时,有时旧的就会被启动

2.用户数据所在目录

/data/data/应用包名/shared_prefs 配置文件

/data/data/应用包名/databases/* 库文件所在目录

3. SD卡对应目录

/sdcard/

而我们需要处理的只是两个文件夹里面的内容:

data/app –该文本夹里的文件可以全删,也可以自由添加自已所需安装的应用软件,刷机安装后可以自由删除。

system/app –在这个文件夹下的程序为系统默认的组件,可以看到都是以APK格式结尾的文件,但有些自制的ROM里面还有和APK文件名对应的odex文件。我们主要是针对该文件夹里的文件进行精简,如果有odex文件的,删除APK文件名时同时也删除与其对应的odex文件。

虽然一般定制时只是对以上两个文件夹里的文件做相应的增减,但我们还是一起来了解system相应目录相应文件的用途吧。(rom版本不同里面的APK也会不一样)

systemapp

闹钟

浏览器

Bug报告

计算器

日历

日历提供

照相机

亚马逊音乐

联系人

下载提供

DRM数字版权提供

电子邮件客户端

测试程序

GoogleData提供

Gmail电子邮件

Gmail提供

谷歌程序包

搜索工具

GTalk服务

HTML查看器

systemappHtc**.apk 集成**客户端PEEP

即使通讯组件包含MSN、yahoo通

启动加载器

导航软件

电子地图

多媒体播放提供

短信、彩信

音乐播放器

T-Mobile MyFaves程序

新闻阅读器

apk安装程序

电话拨号器

系统设置

设置提供

设置向导

录音工具

街景地图

同步程序

语音程序

电话提供

更新程序

VPN服务

制造商信息

语音拨号器

语音搜索

systemapp**.apk **视频

systembin

这个目录下的文件都是系统的本地程序,从bin文件夹名称可以看出是binary二进制的程序,里面主要是Linux系统自带的组件,就主要文件做下简单的分析介绍:

systembinakmd

systembinam

systembinapp_process 系统进程

systembindalvikvm Dalvik虚拟机宿主

systembindbus-daemon 系统BUS总线监控

systembindebuggerd 调试器

systembindebug_tool 调试工具

systembindexopt DEX选项

systembindhcpcd DHCP服务器

systembindumpstate 状态抓取器

systembindumpsys 系统抓取器

systembindvz

systembinfillup

systembinflash_image 闪存映像

systembinhciattach

systembinhcid HCID内核

systembinhostapd

systembinhostapd_cli

systembinhtclogkernel

systembininput

systembininstalld

systembinitr

systembinlinker

systembinlogcat Logcat日志打印

systembinlogwrapper

systembinmediaserver

systembinmonkey

systembinmountd 存储挂载器

systembinnetcfg 网络设置

systembinping Ping程序

systembinplaymp3 MP3播放器

systembinpm 包管理器

systembinqemud QEMU虚拟机

systembinradiooptions 无线选项

systembinrild RIL组件

systembinsdptool

systembinsdutil

systembinservice

systembinservicemanager 服务管理器

systembinsh

systembinssltest SSL测试

systembinsurfaceflinger 触摸感应驱动

systembinsvc 服务

systembinsystem_server

systembintelnetd Telnet组件

systembintoolbox

systembinwlan_loader

systembinwpa_cli

systembinwpa_supplicant

systemetc

从文件夹名称来看保存的都是系统的配置文件,比如APN接入点设置等核心配置。

APN接入点配置文件

音频过滤器配置文件

书签数据库

总线监视配置文件

systemetcdhcpcd

systemetcevent-log-tags

收藏夹

systemetcfirmware 固件信息

GPS设置文件

内核HCID配置文件

systemetchosts 网络DNS缓存

systemetclocation 定位相关

存储挂载配置文件

提示网页

权限许可

systemetcsecurity

systemetcwifi WLAN相关组件

systemetcdhcpcddhcpcd-hooks

systemetcdhcpcddhcpcd-run-hooks

systemetcdhcpcddhcpcd-hooks01-test

systemetcdhcpcddhcpcd-hooks95-configured

systemetclocationgps

systemetclocationgpslocation 定位相关

systemetclocationgpsnmea GPS数据解析

systemetclocationgpsproperties

OTA下载验证

systemetcwifiwpa_ WPA验证组件

systemfonts

字体文件夹,除了标准字体和粗体、斜体外可以看到文件体积最大的可能是中文字库,或一些unicode字库,其中文件最大,为中文字库

systemframework

framework主要是一些核心的文件,从后缀名为jar可以看出是是系统平台框架。

AWT库

GTalk服务

电子地图库

核心库,启动桌面时首先加载这个

输入库

包管理库

系统服务

systemlib

lib目录中存放的主要是系统底层库,如平台运行时库。

systemliblibandroid_ Android运行时库

systemliblibandroid_ 系统服务组件

音频处理

EQ均衡器

音频过滤器

蓝牙组件

超相机组件

加密组件

DRM解析库

systemliblibdrm1_

systemliblibGLES_

systemliblibhtc_

systemliblibmedia_

systemliblibpvnet_

systemliblibstdc++.so

systemliblibsystem_

systemliblibthread_

systemliblibUAPI_

systemliblibwbxml_

systemliblibwpa_

systemlibmodules

systemmedia

铃声音乐文件夹,除了常规的铃声外还有一些系统提示事件音

systemmediaaudio

systemmediaaudioalarms 闹铃音

systemmediaaudionotifications 提示音

systemmediaaudioringtones 铃声

systemmediaaudioui 界面操作事件音

开机动画

systemusr

用户文件夹,包含共享、键盘布局、时间区域文件等。

systemusrkeychars

systemusrkeylayout

systemusrshare

systemusrsrec

systemusrkeylayouth2w_

systemusrsharebsk

systemusrsharezoneinfo

systemusrsharebskV_FD_speed_

systemusrsharebskV_FD_std_

systemusrsrecconfig

ionary

2p

mars

ls

marsVoiceDialer.g2g

lsgeneric11_

lsgeneric11_

lsgeneric8_

lsgeneric8_

OK,了解Android系统文件夹结构和相应文件的作用后,我们进行下一步真正定制工作。

二、定制简单流程:

1、下载相应的ROM(.zip格式的)

2、安装JAVA(自行搜索即可,金币多的也只可以在文末下载),下载签名工具(文末附下载),并且解压。

3、将.zip格式的ROM双击打开,不解压

4、进入dataapp目录,看这里是否有你所需的程序,不需要的请删除。你还可以添加你需要的默认安装软件。如:搜狗输入法,只需要把文件直接拖放到压缩包dataapp目录内即可。

5、进入systemapp删除你不想要的组件、或是添加你需要的组件。由于有一些组件与其它组件是有依赖的,所以删除时请注意。但也不要怕,如果你删除的组件不对,刷机时最多是无法进入系统,你用完整ROM重新刷一次既可。一般不会变成砖的。

6、删除、添加软件完毕,然后把 ROM 改名为,然后复制到Auto-sign文件夹,双击等待即可(重新打包、自动签名)。在此目录里打包签名完成后自动会生成update_,这个就是我们已精简的ROM了。此时update_可自由改名。

三、刷ROM

请如果 Recovery 已经准备好。请按严格安装以下步骤操作刷入 ROM:

1. 把 ROM 文件复制到 SD 卡。

2. 关机,然后按住 Home(小房子)启动手机,进入 Recovery 模式。

3. WIPE。

4. 在 Recovery 中选择正确的 ROM 文件(ZIP)刷入。

4. 重新启动即可。

四、定制注意事项

1、细心、细心、细心

2、为安全起见,建议只对data/app和system/app这两个文件夹内的文件做删除、添加。

3、不知或是不太清楚要删除的文件是干啥的,那请保留不要删除。

4、本文中的Android系统文件夹结构可能比较旧,如果碰到不知该文件是干什么的,建议搜索一下找答案。

5、按照本教程来定制ROM,如果在定制过程自已失误删除相应的软件,那造成的后果最多也是无法进入系统,重新刷一个完整的ROM一般解决问题。还是那句话:刷机有风险,出问题自负。


本文标签: 文件 系统 文件夹