您的位置:首页 > 移动开发 > Android开发

打造自己的ROM--for Android(附字体替换教程)

2010-05-24 22:22 267 查看
1.定制包制作知识
一般定制ROM(不是美化、也不是制作MOD)其实就是对手机内存里的system/app文件夹的内容进行自定义,自己安装的软件将不会出现在这里,而是\data\文件夹中。
系统所有的程序都在这个文件夹里,比如浏览器、拨号器、联系人等
先来看一下通常情况下这个文件夹里都包含什么:
\system\app\AlarmClock.apk 闹钟
\system\app\Browser.apk 浏览器
\system\app\Bugreport.apk Bug报告
\system\app\Calculator.apk 计算器
\system\app\Calendar.apk 日历
\system\app\CalendarProvider.apk 日历提供
\system\app\Camera.apk 照相机
\system\app\com.amazon.mp3.apk 亚马逊音乐
\system\app\Contacts.apk 联系人
\system\app\DownloadProvider.apk 下载提供
\system\app\DrmProvider.apk DRM数字版权提供
\system\app\Email.apk 电子邮件客户端
\system\app\FieldTest.apk 测试程序
\system\app\GDataFeedsProvider.apk GoogleData提供
\system\app\Gmail.apk Gmail电子邮件
\system\app\GmailProvider.apk Gmail提供
\system\app\GoogleApps.apk 谷歌程序包
\system\app\GoogleSearch.apk 搜索工具
\system\app\gtalkservice.apk GTalk服务
\system\app\HTMLViewer.apk HTML查看器
\system\app\IM.apk 即使通讯组件包含MSN、yahoo通(包括下面两个)
\system\app\ImCredentialProvider.apk
\system\app\ImProvider.apk
\system\app\Launcher.apk 启动加载器
\system\app\Maps.apk 电子地图
\system\app\MediaProvider.apk 多媒体播放提供
\system\app\Mms.apk 短信、彩信
\system\app\Music.apk 音乐播放器
\system\app\MyFaves.apk T-Mobile MyFaves程序
\system\app\PackageInstaller.apk apk安装程序
\system\app\Phone.apk 电话拨号器
\system\app\Settings.apk 系统设置
\system\app\SettingsProvider.apk 设置提供
\system\app\SetupWizard.apk 设置向导
\system\app\SoundRecorder.apk 录音工具
\system\app\Street.apk 街景地图
\system\app\Sync.apk 同步程序
\system\app\Talk.apk 语音程序
\system\app\TelephonyProvider.apk 电话提供
\system\app\Updater.apk 更新程序
\system\app\Vending.apk 制造商信息--电子市场
\system\app\VoiceDialer.apk 语音拨号器
\system\app\YouTube.apk Youtube视频

然后是定制包的结构,定制包的命名一般是XXXX.zip

内容包括

/system/ (系统文件)

/system/app/my.apk(你想要放进系统中的程序)
/META-INF/com/google/update-script(定制包脚本)
/META-INF/CERT.SF(签名文件)
/META-INF/CERT.RSA(签名文件)
/META-INF/MANIFEST.MF(签名文件)
首先应将准备好的程序放进这个ZIP包的/system/app目录里,只要将程序拖进附件中custom.zip的APP目录即可

下面我们的来看最后一处需要编辑的地方——脚本

2.脚本:
现在我们对里面的文件有了大致的了解,那么举例说明,如果我们要做一个基于以上ROM的定制包,那么大概要进行两种操作
1.添加目录里的APK程序到ROM的system/app里
2.从ROM里删除APK程序(即瘦身)
3.显示进程

添加目录的语句为copy_dir PACKAGE:定制包路径 手机内存路径
删除程序的语句为delete 手机内存路径
显示进程语句为show_progress

脚本文件可用TXT、记事本等程序作为打开方式并编辑保存

作为初学者
只需要掌握以下范例即可
show_progress 0.1 0

delete SYSTEM:app/DivXRegCode.odex
delete SYSTEM:app/YouTube.apk

copy_dir PACKAGE:system SYSTEM:

show_progress 0.1 10

其中对前后两个show_progress语句不需要理解,看中间的,
第一句是删除system/spp文件夹内的DivXRegCode.odex文件,
第二句是删除system/spp文件夹内的YouTube.apk文件,
第三句是复制(同时会覆盖已存在的文件)定制包中的system文件夹到手机内存的system文件夹。

需要注意的是不是所有的系统文件都可以替换、删除,一般来说
Layar304-final-market.apk
MetaMidpPlayer.apk
MidpPlayer.apk
switchers.apk
Youtube.apk
MySpace.apk
Facebook.apk
这些休闲娱乐类的东西可以删除,像MMS、PHONE等重要的程序通常情况下替换或者删除会出问题

掌握了这个就可以轻松地写一般的脚本了,一定要注意,脚本的最后一行下面必须有个空行,即只有一个回车存在的空行

脚本也制作完成后,即可进行下一步:签名(使用签名工具)(需要java运行环境)
提醒一下!如果对自己做的定制包不是非常有信心,而且不想重新刷机,一定要备份ROM!(recovery界面备份)
安装定制包方法:
进入recovery模式,用方向键选择apply any zip from sd,然后选择xxxx-SignFile.zip,按OK键,然后会有提示让你按小房子键,按下小房子键即可。
全部运行完毕后,返回选择第一项reboot重启。

进入系统之后,如果成功的话,发现你在脚本中想删掉的程序已经不再菜单里了,而添加进system/app的程序出现在菜单里,这样一套基本的制作定制包的过程就结束了。

你已经可以制作各种定制包以备刷机后使用~

3.字体修改
1) android系统字体结构: |4 \8 P; ^0 F4 {8 r5 `

DroidSans.ttf 系统默认英文字体
& I+ _' v2 s, y" l(
w/ e! |+ ] DroidSans-Bold.ttf 系统默认英文粗字体

DroidSansFallback.ttf 系统默认中文字体
3 ],
L! v: H$ F% H1 n" f. Z( \
ps:英文字体一般只有几十K到几百k,字符内容少,一般包括数字、字母和特殊符号。

中文字体一般为几M到十几M,一般小于5M的只包括简体,大于6M的包括简繁。
: ]- Z% g"
x9 s- e, x; _ 平面设计用的方正、汉仪等字体都是简繁分离的,每个字体文件大约在2-4M左右。

原版雅黑字体有十几M,精简后的有3M版,6M版和10M等等。
2)现在以HandelGotD+雅黑为例替换android系统字体
' J3 S4 C! N6 H" S: ?
将HandelGotD.ttf改名为DroidSans.ttf

将HandelGotDbol.ttf改名为DroidSans-Bold.ttf

将msyh.ttf改名为DroidSansFallback.ttf
注意大小写,包括ttf的大小写。
) V# W2 u' C' T) \( N 将这三个文件复制到sd卡
! x% {* n# M$ N, h
打开root浏览器将这三个文件复制到/system/fonts/下面替换系统字体,一定要注意系统空间是否够用!!

3)关于口口问题的几种情况
1 n0 U: P3 {$ ~" u T 1.
字库不全。简体中文字库不能识别繁体、日文、韩文和某些特殊符号。是字体文件的问题。
6 K( N'
b/ ^/ A( T5 F" K 2. 只有“设置”、关机栏、状态提示栏出现口口。是字体权限没有修改为读取。3 P) @& z7 K* K: B. s/ g% t: E(
_
3. 某些汉化软件中,汉字后面跟随口口。是英文字体的表述不为中文。换一个大一点的英文字体。; \8 H4 z( o) X0 Z1 s9 K4 u+ l

4.其他

语言区域、APN设置、运营商设置、联系人排序、智能拨号 等等修改 大家有需要的话,有时间再写
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: