【安智Rom组】做Rom其实没什么奥秘,浅显易懂的补丁制作教程
rom+app2sd补丁及制作方法

Rom是安智的兵兄的包,我稍微修改了一下,删了俩没有用的软件补丁包是安卓网上找到的不记得哪位大侠传授的了。
109MB的是rom包2.9MB的是app2sd 补丁包Adb是cmd命令执行文件三个文件具备了之后首先给手机的sd重置然后将sd分区大小自己决定sd分区后再把109MB的rom 和2.9MB的补丁包放近sd卡里面具体拷贝的方法可以在rec下面点挂载然后最下方的U盘模式用rec刷完rom之后再继续刷补丁包都刷完之后重启手机开机时间稍微有点长开机之后数据线连接电脑然后选择驱动器模式待sd卡界面弹出之后可以做adb 命令了以下为app2sd的制作adb命令(先把adb的解压包解压到c盘下windows的system32里面然后在电脑界面左下角开始出运行 cmd命令具体的 w7的话是开始点开之后在空格处输入cmd后出来xp的不记得了和这个一样的其实。
下面开始输入命令了(输入之前确保自己手机和电脑处于磁盘驱动器状态)首先在cmd命令栏中输入adb shell之后待光标停止后输入a2sd check读条完成后输入 a2sd reinstall读条完毕后手机会稍等进去重启状态重启完成后继续连接设置为磁盘驱动器模式待弹出sd后在进入cmd命令输入 adb shell后在输入a2sd check读条完毕后输入a2sd zipalign完毕后继续输入a2sd cachesd待手机重启完毕继续连接设置为磁盘驱动器模式待弹出sd后在进入cmd命令输入 adb shell后输入a2sd lowmem-optimum(让内存管理达到最佳状态)再输入a2sd datasd(移动/data/data下文件到sd卡)之后重启后app2sd 完成。
自己制作安卓ROM包教程

ROM包的制作教程制作方法一、ROOT目前的民间ROM 基本上已经自带ROOT 所以省略此步骤当然前提得是ROOT过的二、工具准备下载安装附件中的R.explorer管理器(rootexplorer.v2.9.4.apk)这个工具的作用是备份APK 文件、删除APK文件、查看系统目录里面都有什么下载附件中的AndroidResEdit_By_hanhualan...解压到电脑里(如果不能运行则说明你需要安装.NET Framework 2.0)我们主要用这个来对定制包签名三、定制包制作知识一般定制ROM(不是美化、也不是制作MOD)其实就是对手机内存里的system/app文件夹的内容进行自定义,自己安装的软件将不会出现在这里,而是\data\文件夹中。
系统所有的程序都在这个文件夹里,比如浏览器、拨号器、联系人等先来看一下通常情况下这个文件夹里都包含什么:\system\app\AlarmClock.apk 闹钟\system\app\AlarmClock.odex\system\app\Browser.apk 浏览器\system\app\Browser.odex\system\app\Bugreport.apk Bug报告\system\app\Bugreport.odex\system\app\Calculator.apk 计算器\system\app\Calculator.odex\system\app\Calendar.apk 日历\system\app\Calendar.odex\system\app\CalendarProvider.apk 日历提供\system\app\CalendarProvider.odex\system\app\Camera.apk 照相机\system\app\Camera.odex\system\app\com.amazon.mp3.apk 亚马逊音乐\system\app\Contacts.apk 联系人\system\app\Contacts.odex\system\app\DownloadProvider.apk 下载提供\system\app\DownloadProvider.odex\system\app\DrmProvider.apk DRM数字版权提供\system\app\DrmProvider.odex\system\app\Email.apk 电子邮件客户端\system\app\Email.odex\system\app\FieldTest.apk 测试程序\system\app\FieldTest.odex\system\app\GDataFeedsProvider.apk GoogleData提供\system\app\GDataFeedsProvider.odex\system\app\Gmail.apk Gmail电子邮件\system\app\Gmail.odex\system\app\GmailProvider.apk Gmail提供\system\app\GmailProvider.odex\system\app\GoogleApps.apk 谷歌程序包\system\app\GoogleApps.odex\system\app\GoogleSearch.apk 搜索工具\system\app\GoogleSearch.odex\system\app\gtalkservice.apk GTalk服务\system\app\gtalkservice.odex\system\app\HTMLViewer.apk HTML查看器\system\app\HTMLViewer.odex\system\app\IM.apk 即使通讯组件包含MSN、yahoo通\system\app\ImCredentialProvider.apk\system\app\ImProvider.apk\system\app\ImProvider.odex\system\app\Launcher.apk 启动加载器\system\app\Launcher.odex\system\app\Maps.apk 电子地图\system\app\Maps.odex\system\app\MediaProvider.apk 多媒体播放提供\system\app\MediaProvider.odex\system\app\Mms.apk 短信、彩信\system\app\Mms.odex\system\app\Music.apk 音乐播放器\system\app\Music.odex\system\app\MyFaves.apk T-Mobile MyFaves程序\system\app\MyFaves.odex\system\app\PackageInstaller.apk apk安装程序\system\app\PackageInstaller.odex\system\app\Phone.apk 电话拨号器\system\app\Phone.odex\system\app\Settings.apk 系统设置\system\app\Settings.odex\system\app\SettingsProvider.apk 设置提供\system\app\SettingsProvider.odex\system\app\SetupWizard.apk 设置向导\system\app\SetupWizard.odex\system\app\SoundRecorder.apk 录音工具\system\app\SoundRecorder.odex\system\app\Street.apk 街景地图\system\app\Street.odex\system\app\Sync.apk 同步程序\system\app\Sync.odex\system\app\Talk.apk 语音程序\system\app\Talk.odex\system\app\TelephonyProvider.apk 电话提供\system\app\TelephonyProvider.odex\system\app\Updater.apk 更新程序\system\app\Updater.odex\system\app\V ending.apk 制造商信息\system\app\V ending.odex\system\app\V oiceDialer.apk 语音拨号器\system\app\V oiceDialer.odex\system\app\Y ouTube.apk Y outube视频\system\app\Y ouTube.odex然后是定制包的结构,定制包的命名一般是XXXX(英文).zip内容包括/system/app/my.apk(你想要放进系统中的程序)/META-INF/com/google/update-script(定制包脚本)/META-INF/CERT.SF(签名文件)/META-INF/CERT.RSA(签名文件)/META-INF/MANIFEST.MF(签名文件)(附件中的custom.zip为范例,大家可以下载直接进行修改)首先应将准备好的程序放进这个ZIP包的/system/app目录里,只要将程序拖进附件中custom.zip的APP目录即可然后删除/META-INF/CERT.RSA和META-INF/CERT.SF这两个文件,为了签名做准备下面我们的来看最后一处需要编辑的地方——脚本四、脚本:现在我们对里面的文件有了大致的了解,那么举例说明,如果我们要做一个基于以上ROM 的定制包,那么大概要进行两种操作1.添加目录里的APK程序到ROM的system/app里2.从ROM里删除APK程序(即瘦身)3.显示进程添加目录的语句为copy_dir PACKAGE:定制包路径手机内存路径删除程序的语句为delete 手机内存路径显示进程语句为show_progress脚本文件可用TXT、记事本等程序作为打开方式并编辑保存作为初学者只需要掌握以下范例即可show_progress 0.1 0delete SYSTEM:app/DivXRegCode.odexdelete SYSTEM:app/Y ouTube.apkcopy_dir PACKAGE:system SYSTEM:show_progress 0.1 10其中对前后两个show_progress语句不需要理解,看中间的,第一句是删除system/spp文件夹内的DivXRegCode.odex文件,第二句是删除system/spp文件夹内的Y ouTube.apk文件,第三句是复制(同时会覆盖已存在的文件)定制包中的system文件夹到手机内存的system 文件夹。
教你如何制作安卓rom教程(内置两个教程看完之后基本能解决所有难题)

【新手定制ROM入门教程一】如何内置软件删除自己用不到的软件,添加自己想用的软件,其实很简单例如:打开某ROM出现以下文件夹data->app:目录下的软件是在android中可以自由删除软件,不要想的统统删掉,想添加软件直接把APK文件放到此文件夹即可例如:想要在ROM中添加安智市场,只需将安智市场的APK文件放在data->app目录下即可,如下图system->app:目录下的软件是android自带软件,在系统中无法删除的,你可以在这里删除掉,比如youtube之类.关闭打开的RAR即可,重新刷机之后,你发现想删掉的文件没了,想要的出现了.【新手定制ROM入门教程二】如何美化ROM美化ROM包括,字体,图标,壁纸,状态栏的修改.但是这些全部都在framework-res之内.下面给大家提供一个修改framework-res美化界面教程原文如下:”在尝试制作半透明升级包的过程中,我发现有几个图片无论如何也不能透明,即使你挖空它,可能是Android 2.1还不能接受全透明吧……用WinRar打开framework-res.apk,绝大部分要修改的都在res\drawable-mdpi内(不同的ROM可能文件夹名字不一样,但是很快就能找到图片最多那个)。
状态栏要修改的几个文件:还有status_bar_header_background.9.png、status_bar_item_background_normal.9.png可以修改,但是不能改成透明的(至少我修改失败了,不过末将说可以)。
信号和电池要修改的几个文件(某些ROM,如基于Beta7的,还有stat_sys_signal_null.png、stat_sys_signal_5.png、zz_stat_sys_signal_5.png要修改):这些文件大部分通过英文就能明白它们所指的意思。
屏幕锁屏时要修改的(请到drawable-land-mdpi文件夹修改同样名称的几个,drawable-land-mdpi文件夹保存的是横屏时的一些图片):一般需要我们修改的就是任务栏,这些文件基本都在framework-res里面,大家可以在framework-res文件里面查找对应文件并替换就可以了.修改的经验:用Photoshop打开图片,如果锁定了就双击那个图层解锁,如果是“索引模式”就改图层模式为“RGB模式”。
安卓rom制作教程

安卓rom制作教程安卓ROM制作教程安卓ROM(Read-Only Memory)是一种预先编程的存储器,它包含了操作系统和内置应用程序。
制作自己的安卓ROM可以让你个性化你的手机,并添加一些自定义的功能。
下面是一个简单的安卓ROM制作教程。
第一步:准备工作1. 你需要一台可root的安卓手机,并确保手机已解锁bootloader。
2. 在电脑上下载并安装ADB(Android Debug Bridge)和Fastboot工具。
3. 下载并安装一个合适的ROM制作软件,如Kitchen MTK、ROM Toolbox等。
第二步:备份手机在开始制作ROM之前,务必备份手机中的所有数据,包括联系人、照片、音乐等。
你可以使用ADB工具把数据备份到电脑上。
第三步:解包原始ROM1. 使用ROM制作软件把原始ROM解压到你的电脑上。
这样你就可以编辑ROM包中的文件了。
2. 在解压后的文件夹中,你会找到几个重要的文件,如boot.img、system.img等。
第四步:编辑ROM1. 修改系统设置:你可以编辑系统设置,如添加或删除应用程序、更改启动画面等。
2. 安装自定义应用:你可以在ROM中添加一些自定义应用,例如Root Explorer、SuperUser等。
3. 修改内核:如果你是高级用户,你可以修改内核以提高手机的性能或添加一些新功能。
4. 添加自定义的壁纸、铃声等。
第五步:重新打包ROM完成对ROM的编辑后,你需要重新打包ROM。
第六步:刷入新的ROM1. 使用Fastboot工具把手机连接到电脑上。
2. 进入Fastboot模式,在命令提示符下输入“adb reboot bootloader”命令。
3. 使用“fastboot flash boot boot.img”命令刷入新的启动镜像。
4. 使用“fastboot flash system system.img”命令刷入新的系统镜像。
5. 使用“fastboot reboot”命令重启手机。
三星安卓定制ROM教程 ROM定制包制作教程

三星安卓定制ROM教程 ROM定制包制作教程一个月以来经历了汉化软件——汉化ROM——定制ROM的学习,因为没有师傅,摸爬滚打一路自学,所得经验及教训,不敢独享,希望有兴趣研究的同学以此为阶梯,多研究多分享,为论坛发展作出更大贡献。
此教程适合喜欢研究的初学者制作方法一、ROOT无论是什么版本,首先要ROOT一下机器这是定制的前提ROOT-lk2.02下载地址:/file/f91b16ea85/anzhuo-thread/6000/1/1.html先将LK2.02包中的LK2-02-1_update.zip和JE1-custom1-wp55580691.zip传入SD卡中根目录下。
重新按住音量减、照相键、开机键,再次进入刷机模式,刷ROOT包中的i5700_LK2-02_PDA.tar设置图示如下刷好了之后会自动进入recovery模式(界面绿绿的,绿色的字),用方向键选择apply any zip from sd,然后选择LK2-01_update.zip,按OK键,然后会有提示让你按小房子键,按下小房子键即可。
全部运行完毕后,返回选择第一项reboot重启。
二、工具准备下载安装附件中的R.explorer管理器(rootexplorer.v2.9.4.apk)这个工具的作用是备份APK文件、删除APK文件、查看系统目录里面都有什么下载附件中的AndroidResEdit_By_hanhualan...解压到电脑里(如果不能运行则说明你需要安装.NET Framework 2.0)我们主要用这个来对定制包签名三、定制包制作知识一般定制ROM(不是美化、也不是制作MOD)其实就是对手机内存里的system/app文件夹的内容进行自定义,自己安装的软件将不会出现在这里,而是\data\文件夹中。
系统所有的程序都在这个文件夹里,比如浏览器、拨号器、联系人等先来看一下通常情况下这个文件夹里都包含什么:\system\app\AlarmClock.apk 闹钟\system\app\AlarmClock.odex\system\app\Browser.apk 浏览器\system\app\Browser.odex\system\app\Bugreport.apk Bug报告\system\app\Bugreport.odex\system\app\Calculator.apk 计算器\system\app\Calculator.odex\system\app\Calendar.apk 日历\system\app\Calendar.odex\system\app\CalendarProvider.apk 日历提供\system\app\CalendarProvider.odex\system\app\Camera.apk 照相机\system\app\Camera.odex\system\app\com.amazon.mp3.apk 亚马逊音乐\system\app\Contacts.apk 联系人\system\app\Contacts.odex\system\app\DownloadProvider.apk 下载提供\system\app\DownloadProvider.odex\system\app\DrmProvider.apk DRM数字版权提供\system\app\DrmProvider.odex\system\app\Email.apk 电子邮件客户端\system\app\Email.odex\system\app\FieldTest.apk 测试程序\system\app\FieldTest.odex\system\app\GDataFeedsProvider.apk GoogleData提供\system\app\GDataFeedsProvider.odex\system\app\Gmail.apk Gmail电子邮件\system\app\Gmail.odex\system\app\GmailProvider.apk Gmail提供\system\app\GmailProvider.odex\system\app\GoogleApps.apk 谷歌程序包\system\app\GoogleApps.odex\system\app\GoogleSearch.apk 搜索工具\system\app\GoogleSearch.odex\system\app\gtalkservice.apk GTalk服务\system\app\gtalkservice.odex\system\app\HTMLViewer.apk HTML查看器\system\app\HTMLViewer.odex\system\app\IM.apk 即使通讯组件包含MSN、yahoo通\system\app\ImCredentialProvider.apk\system\app\ImProvider.apk\system\app\ImProvider.odex\system\app\Launcher.apk 启动加载器\system\app\Launcher.odex\system\app\Maps.apk 电子地图\system\app\Maps.odex\system\app\MediaProvider.apk 多媒体播放提供\system\app\MediaProvider.odex\system\app\Mms.apk 短信、彩信\system\app\Mms.odex\system\app\Music.apk 音乐播放器\system\app\Music.odex\system\app\MyFaves.apk T-Mobile MyFaves程序\system\app\MyFaves.odex\system\app\PackageInstaller.apk apk安装程序\system\app\PackageInstaller.odex\system\app\Phone.apk 电话拨号器\system\app\Phone.odex\system\app\Settings.apk 系统设置\system\app\Settings.odex\system\app\SettingsProvider.apk 设置提供\system\app\SettingsProvider.odex\system\app\SetupWizard.apk 设置向导\system\app\SetupWizard.odex\system\app\SoundRecorder.apk 录音工具\system\app\SoundRecorder.odex\system\app\Street.apk 街景地图\system\app\Street.odex\system\app\Sync.apk 同步程序\system\app\Sync.odex\system\app\Talk.apk 语音程序\system\app\Talk.odex\system\app\TelephonyProvider.apk 电话提供\system\app\TelephonyProvider.odex\system\app\Updater.apk 更新程序\system\app\Updater.odex\system\app\Vending.apk 制造商信息\system\app\Vending.odex\system\app\VoiceDialer.apk 语音拨号器\system\app\VoiceDialer.odex\system\app\YouTube.apk Youtube视频\system\app\YouTube.odex然后是定制包的结构,定制包的命名一般是XXXX(英文).zip内容包括/system/app/my.apk(你想要放进系统中的程序)/META-INF/com/google/update-script(定制包脚本)/META-INF/CERT.SF(签名文件)/META-INF/CERT.RSA(签名文件)/META-INF/MANIFEST.MF(签名文件)(附件中的custom.zip为范例,大家可以下载直接进行修改)首先应将准备好的程序放进这个ZIP包的/system/app目录里,只要将程序拖进附件中custom.zip的APP目录即可然后删除/META-INF/CERT.RSA和META-INF/CERT.SF这两个文件,为了签名做准备下面我们的来看最后一处需要编辑的地方——脚本四、脚本:现在我们对里面的文件有了大致的了解,那么举例说明,如果我们要做一个基于以上ROM 的定制包,那么大概要进行两种操作1.添加目录里的APK程序到ROM的system/app里2.从ROM里删除APK程序(即瘦身)3.显示进程添加目录的语句为copy_dir PACKAGE:定制包路径手机内存路径删除程序的语句为delete 手机内存路径显示进程语句为show_progress脚本文件可用TXT、记事本等程序作为打开方式并编辑保存作为初学者只需要掌握以下范例即可show_progress 0.1 0delete SYSTEM:app/DivXRegCode.odexdelete SYSTEM:app/YouTube.apkcopy_dir PACKAGE:system SYSTEM:show_progress 0.1 10其中对前后两个show_progress语句不需要理解,看中间的,第一句是删除system/spp文件夹内的DivXRegCode.odex文件,第二句是删除system/spp文件夹内的YouTube.apk文件,第三句是复制(同时会覆盖已存在的文件)定制包中的system文件夹到手机内存的system 文件夹。
ROM制作单刷包制作最详细教程

ROM制作单刷包制作最详细教程ROM制作单刷包制作最详细教程单刷包的用处,可以对你的ROM的bug修复之后用单刷包进行刷入修复,也可以在精简系统之后把精简掉的程序,驱动用单刷包刷入进行还原当然你也可以进行字体的替换、系统的美化,等等制作步骤:第一步、创建一个名为system的文件夹和一个名为META-INF的文件夹在system文件夹内新建app文件夹(驱动,字体这些也一样,建不同的文件夹就行) 将你想要单独刷入的APK应用放入app文件夹内字体的话就放入fonts文件夹驱动的话放入lib文件夹META-INF文件夹内新建com文件夹com文件夹里新建google文件夹google文件夹里新建android文件夹在android文件夹里新建一个名为updater-script的文件本帖隐藏的内容用NOtepad++之类的程序打开开始写你的脚本不会写的可以用我底下附件包相同文件夹里写好了的之后将system和META-INF文件夹打包成zip格式最关键的一步,签名单刷包,当成ROM包来签名下面大多数是关于单刷包的制作的,那么就肯定需要这个东西,首先,看清楚单刷包的结构。
一般来说就是这两个东西META-INFSYSTEM如果你看了前面的几篇文章,那么这篇估计结构就懂了。
一般我没美化都是修改SystemUI.apk、framework-res.apk或者fonts文件夹中的字体文件。
首先针对recovery3.0以下的同学使用的是update-script语法,那么如下首先找一个你机型的刷机包,去掉其他只留这两个文件META-INF和system前者是签名文件夹,找META-INF\\com\\google\\android的update-script用notepad++打开删掉所有的,并复制如下命令插入show_progress 0.1 0delete SYSTEM:app/SystemUI.apkdelete SYSTEM:framework/framework-res.apk show_progress 0.1 3copy_dir PACKAGE:system SYSTEM:show_progress 0.1 7set_perm 0 0 0644 SYSTEM:app/SystemUI.apk set_perm 0 0 0644 SYSTEM:framework/framework-res.apk show_progress 0.1 10命令解释:delete SYSTEM:app/SystemUI.apk删除system/app/SystemUI.apk copy_dir PACKAGE:system SYSTEM:复制刷机包内的文件到相应的位置,其实呢,整个单刷包就这句就行,不过为了保险,还得加上这些语句~本帖隐藏的内容set_perm 0 0 0644 SYSTEM:app/SystemUI.apk为system.apk 授权show_progress 0.1 0等是进程提示符修改后删除META-INF下的CERT.RSA、CERT.SF,然后压缩包,进行签名,用APKTOOL或者任何可用的签名工具都可以。
如何制作刷机升级包和rom的压缩包

如何制作刷机补丁和CWM刷机包ROM在第一讲和第二讲中介绍过两种刷机方法:用Odin刷机程序在“挖煤”模式下刷TAR刷机包(线刷)和在Recovery(恢复)模式下刷zip 刷机包(卡刷)。
在第五讲中教给大家如何制作或定制Odin刷机包ROM(TAR包)。
在这一讲中,我们来介绍一下制作卡刷刷机包的方法。
在第二讲里的开头讲过:“卡刷”或CWM刷机就是用手机里安装的ClockworkMod程序来在Recovery模式下进行刷机。
刷机包为单个签名的zip压缩包。
在刷机包中有一个脚本文件,里面有一系列命令,规定好把不同的文件内容复制的手机的指定分区,从而达到刷机目的。
那么怎样来制备这种zip刷机包呢?那个脚本文件又是什么呢?本讲的内容包括两个部分:1.制作刷机补丁2.制作完整刷机包ROM通常,两者都称作刷机包。
在本文中,我们说“刷机补丁”是指ROM 的补充内容。
例如:在英文底包上刷中文文件,或者替换字库,替换主题或桌面等等。
它们不构成可使手机运行的全部文件,它们仅仅是ROM的一部分。
以前,常用update.zip来传播。
当我们说“完整刷机包ROM”时,我们是特指一个独立完整的ROM,包含一个刷ROM所具有的所有必要刷机元素。
1. 制作刷机补丁我们都知道,ROM发布者通常发布刷机补丁来升级ROM。
ROM发布后,需要增加、刷新、更改ROM内容或功能时,没有必要重新安装整个ROM。
只要把需要更新的部分写成一个“刷机补丁”,刷进手机与已有的系统合并就行了。
在介绍如何制作刷机补丁之前,先让我们来看一个实例:用刷机补丁来更新两个主题文件,把TouchWiz30Launcher.apk和SystemUI.apk 复制进手机的/system/app目录。
刷机包补丁文件名为:CWM_Update.zip。
用WinRAR打开刷机补丁文件CWM_Update.zip,看到有两个目录:META-INF 刷机脚本文件和签名system 要复制的补丁内容继续打开/system就看到文件夹/app,再下去在/app下看到要复制的两个主题文件TouchWiz30Launcher.apk和SystemUI.apk(见截图)。
如何制作刷机升级包和rom的压缩包

如何制作刷机补丁和CWM刷机包ROM在第一讲和第二讲中介绍过两种刷机方法:用Odin刷机程序在“挖煤”模式下刷TAR刷机包(线刷)和在Recovery(恢复)模式下刷zip 刷机包(卡刷)。
在第五讲中教给大家如何制作或定制Odin刷机包ROM(TAR包)。
在这一讲中,我们来介绍一下制作卡刷刷机包的方法。
在第二讲里的开头讲过:“卡刷”或CWM刷机就是用手机里安装的ClockworkMod程序来在Recovery模式下进行刷机。
刷机包为单个签名的zip压缩包。
在刷机包中有一个脚本文件,里面有一系列命令,规定好把不同的文件内容复制的手机的指定分区,从而达到刷机目的。
那么怎样来制备这种zip刷机包呢?那个脚本文件又是什么呢?本讲的内容包括两个部分:1.制作刷机补丁2.制作完整刷机包ROM通常,两者都称作刷机包。
在本文中,我们说“刷机补丁”是指ROM 的补充内容。
例如:在英文底包上刷中文文件,或者替换字库,替换主题或桌面等等。
它们不构成可使手机运行的全部文件,它们仅仅是ROM的一部分。
以前,常用update.zip来传播。
当我们说“完整刷机包ROM”时,我们是特指一个独立完整的ROM,包含一个刷ROM所具有的所有必要刷机元素。
1. 制作刷机补丁我们都知道,ROM发布者通常发布刷机补丁来升级ROM。
ROM发布后,需要增加、刷新、更改ROM内容或功能时,没有必要重新安装整个ROM。
只要把需要更新的部分写成一个“刷机补丁”,刷进手机与已有的系统合并就行了。
在介绍如何制作刷机补丁之前,先让我们来看一个实例:用刷机补丁来更新两个主题文件,把TouchWiz30Launcher.apk和SystemUI.apk 复制进手机的/system/app目录。
刷机包补丁文件名为:CWM_Update.zip。
用WinRAR打开刷机补丁文件CWM_Update.zip,看到有两个目录:META-INF 刷机脚本文件和签名system 要复制的补丁内容继续打开/system就看到文件夹/app,再下去在/app下看到要复制的两个主题文件TouchWiz30Launcher.apk和SystemUI.apk(见截图)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
重要说明:看完这个帖子,你将学到:刷机脚本的含义,如何对刷机脚本进行简单修改,如何制作补丁,如何往内核里加入G大脚本,甚至如何制作Rom的zip包。
另外,此贴较长,或许以后还会更长,要想学到东西的机油请耐心看。
我将先以我的Blade-Bingo-2.3 Rom里的脚本为例,讲一讲刷机脚本。
然后再以我此贴的附件KernelPatch.zip 内核补丁为例,简单讲一讲内核单刷补丁怎么做。
首先,我想说,其实,补丁的本质就是一个不完整的Rom刷机包。
为什么这么说它?我想看完这个帖子大家就明白了。
首先,请把任意一个V880的Rom解压缩(或者直接用双击打开它,当然,前提是这种格式已被压缩软件关联)。
你会看到,根目录下有META-INF、system文件夹和boot.img文件(其他Rom 组织方式,如含data、cust等文件夹的Rom暂不细说)。
刷补丁(或者说,刷机),成功的几个要点:正确的文件,准确的脚本,精确的操作。
而这样做,的确的有效。
system文件夹里是所有刷机所需文件,今天只教大家做内核补丁,所以暂时不去关心这里是什么。
META-INF\com\google\android\目录下有个edify的updater-script刷机脚本,它与Rom厨房默认的脚本有些不同。
如何不同,那里不同,这也不是今天咱们要讨论的问题,暂此越过。
用记事本或高级一点工具的如NotePad2(建议使用高级工具,自动排列,颜色突出,看起来更有条理)打开脚本文件。
------------------------------------------------------------------------------------------------------ui_print("");ui_print(" =================================");ui_print(" | ------==bingo1991==------ |");ui_print(" ============ 2.3.7-0214 =============");ui_print("");ui_print("Updating, plese wait....");ui_print("");assert(getprop("ro.product.device") == "blade" || getprop("ro.build.product") == "blade" || getprop("ro.product.board") == "blade");package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh"); set_perm(0, 0, 0777, "/tmp/backuptool.sh");run_program("/tmp/backuptool.sh", "backup");show_progress(0.100000, 3);format("yaffs2", "MTD", "system");mount("yaffs2", "MTD", "system", "/system");package_extract_dir("system", "/system");show_progress(0.600000, 40);symlink("busybox", "/system/xbin/[", "/system/xbin/[[","/system/xbin/arp", "/system/xbin/ash", "/system/xbin/awk", ......"/system/xbin/xz", "/system/xbin/xzcat", "/system/xbin/yes","/system/xbin/zcat");symlink("toolbox", "/system/bin/cat", "/system/bin/cmp","/system/bin/date", "/system/bin/dd", "/system/bin/dmesg", ......"/system/bin/wipe");set_perm_recursive(0, 0, 0755, 0644, "/system");......set_perm(0, 0, 06755, "/system/xbin/su");set_perm(0, 0, 06755, "/system/xbin/tcpdump");show_progress(0.200000, 5);package_extract_file("system/bin/backuptool.sh", "/tmp/backuptool.sh"); set_perm(0, 0, 0777, "/tmp/backuptool.sh");run_program("/tmp/backuptool.sh", "restore");package_extract_file("system/bin/modelid_cfg.sh","/tmp/modelid_cfg.sh");set_perm(0, 0, 0777, "/tmp/modelid_cfg.sh");run_program("/tmp/modelid_cfg.sh");package_extract_file("system/bin/verify_cache_partition_size.sh","/tmp/verify_cache_partition_size.sh");set_perm(0, 0, 0777, "/tmp/verify_cache_partition_size.sh");run_program("/tmp/verify_cache_partition_size.sh");show_progress(0.100000, 2);assert(package_extract_file("boot.img", "/tmp/boot.img"),write_raw_image("/tmp/boot.img", "boot"),delete("/tmp/boot.img"));unmount("/system");ui_print("");ui_print(" ***[ Thanks for using Blade-Bingo-2.3 ]***");ui_print("**[ A compatible stable long time support Rom]**"); ......号处为省略相同格式的语句。
-----------------------------------------------------------------------------------------------很多行代码,是不是?看不太懂,是不是?没关系,前显得很,我挑几处重要的地方讲一讲你就懂了。
代码段1:ui_print("");是在recovery刷机屏幕上显示出一行空格。
ui_print(" | ------==bingo1991==------ |");是在recovery刷机屏幕上显示括号内的文字,为什么不用中文?因为汉化的Recovery的中文字库极为有限,仅支持刷机界面的那些必须显示的文字,其他不包含的文字会显示成“?”至此,你可以随便改刷机界面的显示信息了,不过,可别盗版哦。
比如,拿我的Rom,把里面的bingo1991 改为你的大名,然后不加修改地再发出去。
这样的行为是我坚决不会赞同的,违者罚款。
罚款请主动交至中国工商银行XXXXXXXXXX账号处。
开个玩笑。
代码段2:assert(getprop("ro.product.device") == "blade" || getprop("ro.build.product") == "blade" || getprop("ro.product.board") == "blade");获取手机信息,验证你的手机到底是不是V880,否则将无法刷入。
这是为了防止让一些其他机型的小白误刷咱们V880的Rom从而发生变砖的惨剧。
不加这行的Rom所有机型都可以刷入,建议Rom同行或者补丁制作者们一定要加上,人性化关怀。
当然,你不加这些,但在补丁或Rom发布时仔细说明适用机型的话也是可以的。
代码段:3:format("yaffs2", "MTD", "system");mount("yaffs2", "MTD", "system", "/system");package_extract_dir("system", "/system");这是非常重要的一段代码,第一步,格式化MTD为yaffs格式,分区命名为system,就是咱们常常说的system分区了;第二步,以yaffs2格式将此分区挂载到/system挂载点;最后,解压缩Rom文件里的system目录到/system。