首页 MTK Android卡刷包制作教程

MTK Android卡刷包制作教程

举报
开通vip

MTK Android卡刷包制作教程 MTK Android系统卡刷Update.zip刷机包制作教程 by我不是春哥@移动叔叔 2010.12.31-2011.1.1 Ver1.0 一 基础知识和工具准备 1 linux基础知识,文件目录权限知识 2 官方的ROM,制作卡刷就只需要两个文件boot.img和system.img  以g6i最新的Android2.2官方ROM为例 官方编号:10HX1_HVGA_AND_V22_V01_101222_COM -rw-r--r-- 1 spring spring 2.3M 2010-12-22 17:...

MTK Android卡刷包制作教程
MTK Android系统卡刷Update.zip刷机包制作 教程 人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程 by我不是春哥@移动叔叔 2010.12.31-2011.1.1 Ver1.0 一 基础知识和工具准备 1 linux基础知识,文件目录权限知识 2 官方的ROM,制作卡刷就只需要两个文件boot.img和system.img  以g6i最新的Android2.2官方ROM为例 官方编号:10HX1_HVGA_AND_V22_V01_101222_COM -rw-r--r-- 1 spring spring 2.3M 2010-12-22 17:15 boot.img -rw-r--r-- 1 spring spring 21K 2010-12-22 17:15 logo.bin -rw-r--r-- 1 spring spring 164 2010-12-22 17:15 MT6516_Android_scatter.txt -rw-r--r-- 1 spring spring 42K 2010-12-22 17:15 preloader_bird16_a10y.bin -rw-r--r-- 1 spring spring 317K 2010-12-22 17:15 ramdisk.img -rw-r--r-- 1 spring spring 551K 2010-12-22 17:15 ramdisk-recovery.img -rw-r--r-- 1 spring spring 2.6M 2010-12-22 17:15 recovery.img -rw-r--r-- 1 spring spring 29K 2010-12-22 17:15 secro.img -rw-r--r-- 1 spring spring 112M 2010-12-22 17:15 system.img -rw-r--r-- 1 spring spring 124K 2010-12-22 17:15 uboot_bird16_a10y.bin -rw-r--r-- 1 spring spring 1.5M 2010-12-22 17:15 userdata.img 2.1 其中三个bin文件 -rw-r--r-- 1 spring spring 21K 2010-12-22 17:15 logo.bin -rw-r--r-- 1 spring spring 42K 2010-12-22 17:15 preloader_bird16_a10y.bin -rw-r--r-- 1 spring spring 124K 2010-12-22 17:15 uboot_bird16_a10y.bin 是需要通过刷机线才能升级的 2.2 剩下的img文件,Android刷机时用到就五个,这几个img文件都是可以是用MTK官方 提供的刷机软件Flash_tool通过usb线直接刷机的 -rw-r--r-- 1 spring spring 2.3M 2010-12-22 17:15 boot.img -rw-r--r-- 1 spring spring 2.6M 2010-12-22 17:15 recovery.img -rw-r--r-- 1 spring spring 29K 2010-12-22 17:15 secro.img -rw-r--r-- 1 spring spring 112M 2010-12-22 17:15 system.img -rw-r--r-- 1 spring spring 1.5M 2010-12-22 17:15 userdata.img 2.3 这两个镜像其实是boot.img和recovery.img镜像的文件压缩部分,学名ramdisk。需要更 加深入研究手机怎么引导的同学可以研究。 -rw-r--r-- 1 spring spring 317K 2010-12-22 17:15 ramdisk.img -rw-r--r-- 1 spring spring 551K 2010-12-22 17:15 ramdisk-recovery.img 3 yaffs压缩格式解压工具unyaffs, 3.1 yaffs是什么格式?   yaffs是第一个专門为NAND Flash存储器设计的嵌入式文件系统,适用于大容量的存 储设备;并且是在GPL(General Public License) 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 下发布的。 4 签名java jar包已经java环境。这个在mtk的机器上可以不用做,移动叔叔的Recovery 已经绕过签名执行安装脚本了。 二 工作环境的建立 1 建立一个自己的工作目录,如 ~/mobile/diy/g6i/diyrom, ~在linux系统中代 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 用户自己 的目录。比如你的用户名是mobileuncle,那么~就代表/home/mobileuncle 2 把unyaffs复制到~/bin目录,这个bin是一个可以执行的目录,里面放一些你自己常用的 命令或者脚本,赋予unyaffs可以执行权限chmod 755 ~/bin/unyaffs 3 再在~/mobile/diy/g6i/diyrom目录下建立一个zip目录,将你需要制作的boot.img复制到 ~/mobile/diy/g6i/diyrom/zip目录。 4 在~/mobile/diy/g6i/diyrom/zip/system目录下在建立一个system目录,将你需要制作的 system.img复制到 ~/mobile/diy/g6i/diyrom/zip/system目录。 5 进入~/mobile/diy/g6i/diyrom/zip/system目录,执行 unyaffs system.img解开system的文 件包 6 删除system.img spring@ubuntu:~/mobile/diy/g6i/diyrom/zip/system$ unyaffs system.img end of image spring@ubuntu:~/mobile/diy/g6i/diyrom/zip/system$ ls -alh 总计 112M drwxr-xr-x 12 spring spring 4.0K 2010-12-31 06:25 . drwxr-xr-x 3 spring spring 4.0K 2010-12-31 06:24 .. drwxr-xr-x 2 spring spring 4.0K 2010-12-31 06:25 app drwxr-xr-x 2 spring spring 4.0K 2010-12-31 06:25 bin -rw-r--r-- 1 spring spring 3.4K 2010-12-31 06:25 build.prop drwxr-xr-x 8 spring spring 4.0K 2010-12-31 06:25 etc drwxr-xr-x 2 spring spring 4.0K 2010-12-31 06:25 fonts drwxr-xr-x 2 spring spring 4.0K 2010-12-31 06:25 framework drwxr-xr-x 5 spring spring 12K 2010-12-31 06:25 lib drwxr-xr-x 4 spring spring 4.0K 2010-12-31 06:25 media drwxr-xr-x 3 spring spring 4.0K 2010-12-31 06:25 res -rw-r--r-- 1 spring spring 112M 2010-12-31 06:24 system.img drwxr-xr-x 6 spring spring 4.0K 2010-12-31 06:25 usr drwxr-xr-x 2 spring spring 4.0K 2010-12-31 06:25 xbin spring@ubuntu:~/mobile/diy/g6i/diyrom/zip/system$ rm system.img spring@ubuntu:~/mobile/diy/g6i/diyrom/zip$ ls -al 总计 2352 drwxr-xr-x 3 spring spring 4096 2010-12-31 06:24 . drwxr-xr-x 3 spring spring 4096 2010-12-31 06:19 .. -rw-r--r-- 1 spring spring 2394112 2010-12-31 06:24 boot.img drwxr-xr-x 12 spring spring 4096 2010-12-31 06:26 system 7 到这一步update.zip的文件结构已经出来了,zip目录就是我们以后要刷机的目录了。现 在就是增加刷机脚本了,在zip目录下建立一个META-INF/com/google/android/目录 mkdir -p META-INF/com/google/android 如图 8 在META-INF/com/google/android/目录下建立update-script脚本,可以从其他已经做好 的rom里提取这个脚本来编辑。通过recovery卡刷系统的时候执行的就是这个脚本,做自 己的android卡刷rom要做的通常就是编辑这个脚本和增减apk程序,移动叔叔的recovery 已经把签名绕过了 三 ROM文件的自定义  1 APK程序的自定义   在system/app目录下就是ROM默认自带的apk应用程序,我们可以根据自己的需求 来精简和添加我们的apk程序。 2 bin目录的软链删除   由于我们是从官方的压缩包里提取的系统,在bin目录下有很多可以执行的软链接,用 rm命令吧所有软链删除。rm date getevent ln........... 已经删除完事的bin目录 我们可以根据自己的需求来增加脚本或者扩展程序,比如busybox,然后在安装脚本里添 加软链 四 update-script安装脚本的编写和修改 update-script是整个update.zip刷机包工作的起点,Recovery程序执行的就是这个脚本。 需要我们来做添加一些我们自己的个性化rom安装脚本 参考代码如下: show_progress 0.1 0 #modify by m44 for g6i 2.2 format SYSTEM: format CACHE: copy_dir PACKAGE:system SYSTEM: copy_dir PACKAGE:data SYSTEM: symlink toolbox SYSTEM:bin/cat symlink toolbox SYSTEM:bin/chmod symlink toolbox SYSTEM:bin/chown symlink toolbox SYSTEM:bin/cmp symlink toolbox SYSTEM:bin/date symlink toolbox SYSTEM:bin/dd symlink toolbox SYSTEM:bin/df symlink toolbox SYSTEM:bin/dmesg symlink toolbox SYSTEM:bin/fb2bmp symlink toolbox SYSTEM:bin/getevent symlink toolbox SYSTEM:bin/getprop symlink toolbox SYSTEM:bin/hd symlink toolbox SYSTEM:bin/id symlink toolbox SYSTEM:bin/ifconfig symlink toolbox SYSTEM:bin/iftop symlink toolbox SYSTEM:bin/insmod symlink toolbox SYSTEM:bin/ioctl symlink toolbox SYSTEM:bin/ionice symlink toolbox SYSTEM:bin/kill symlink toolbox SYSTEM:bin/ln symlink toolbox SYSTEM:bin/log symlink toolbox SYSTEM:bin/ls symlink toolbox SYSTEM:bin/lsmod symlink toolbox SYSTEM:bin/mkdir symlink toolbox SYSTEM:bin/mount symlink toolbox SYSTEM:bin/mv symlink toolbox SYSTEM:bin/nandread symlink toolbox SYSTEM:bin/netstat symlink toolbox SYSTEM:bin/newfs_msdos symlink toolbox SYSTEM:bin/notify symlink toolbox SYSTEM:bin/printenv symlink toolbox SYSTEM:bin/ps symlink toolbox SYSTEM:bin/reboot symlink toolbox SYSTEM:bin/renice symlink toolbox SYSTEM:bin/rm symlink toolbox SYSTEM:bin/rmdir symlink toolbox SYSTEM:bin/rmmod symlink toolbox SYSTEM:bin/route symlink toolbox SYSTEM:bin/schedtop symlink toolbox SYSTEM:bin/sendevent symlink toolbox SYSTEM:bin/setconsole symlink toolbox SYSTEM:bin/setprop symlink toolbox SYSTEM:bin/sleep symlink toolbox SYSTEM:bin/smd symlink toolbox SYSTEM:bin/start symlink toolbox SYSTEM:bin/stop symlink toolbox SYSTEM:bin/sync symlink toolbox SYSTEM:bin/top symlink toolbox SYSTEM:bin/umount symlink toolbox SYSTEM:bin/vmstat symlink toolbox SYSTEM:bin/watchprops symlink toolbox SYSTEM:bin/wipe set_perm_recursive 0 0 0755 0644 SYSTEM: set_perm_recursive 0 2000 0755 0755 SYSTEM:bin set_perm 0 3003 02755 SYSTEM:bin/netcfg set_perm 0 3004 02755 SYSTEM:bin/ping set_perm 0 2000 06755 SYSTEM:bin/reboot set_perm_recursive 0 2000 0755 0755 SYSTEM:etc/ppp set_perm 1002 1002 0440 SYSTEM:etc/dbus.conf set_perm 1014 2000 0550 SYSTEM:etc/dhcpcd/dhcpcd-run-hooks set_perm 0 2000 0550 SYSTEM:etc/init.goldfish.sh set_perm 0 0 04755 SYSTEM:xbin/su symlink /system/xbin/su SYSTEM:bin/su show_progress 0.1 10 show_progress 0.2 0 format BOOT: write_raw_image PACKAGE:boot.img BOOT: show_progress 0.2 10 会不会很迷茫,那么多命令,下面我们来总结一下脚本的语法 1 delete 分区:目标文件路径 删除文件,如: delete DATA:data/com.android.vending delete SYSTEM:app/QQ.apk 2 copy_dir PACKAGE:目录 分区: 从update包内复制文件到手机分区,如: copy_dir PACKAGE:system SYSTEM: 3 delete_recursive 分区:子目录路径 删除目录,如: delete_recursive DATA:dalvik-cache 4 format 分区 格式化分区,如  format BOOT:    5 show_progreess x.x x 显示刷机进度,如 show_progress 0.2 0 6 symlink 命令 分区:文件  建立软链 如: symlink toolbox SYSTEM:bin/wipe 7 write_raw_image 刷img镜像 8 set_perm 设置权限 google的update-script脚本英文解析  1 copy_dir Syntax: copy_dir [] Copy the contents of to  . The original contents of are preserved unless something in overwrote them. Ex: copy_dir PACKAGE:system SYSTEM: 2 format Syntax: format Format a partiti0n Ex: format SYSTEM:, will format entire /system . Note: formatting erases data irreversibly. 3 delete Syntax: delete [... ] Delete  file. EX: delete SYSTEM:app/Calculator.apk, will delete Calculator.apk from system/app directory. 4 delete_recursive Syntax: delete_recursive [... ] Delete a file or directory with all of itʼs contents recursively Ex: delete_recursive DATA:dalvik-cache, will delete /data/dalvik-cache directory with all of itʼs contents 5 run_program Syntax: run_program [ ...] Run an external program included in the update package. Ex: run_program PACKAGE:install_busybox.sh, will run install_busybox.sh script (shell command) included in the update package. 6 set_perm Syntax: set_perm [... ] Set ownership and permission of single file or entire directory trees, like ʻchmodʼ, ʻchownʼ, and ʻchgrpʼ all in one Ex: set_perm 0 2000 0550 SYSTEM:etc/init.goldfish.sh 7 set_perm_recursive Syntax: set_perm_recursive [... ] Set ownership and permission of a directory with all of itʼs contents recursively Ex: set_perm_recursive 0 0 0755 0644 SYSTEM:app 8 show_progress Syntax: show_progress Use of the on-screen progress meter for the next operation, automatically advancing the meter over seconds (or more rapidly if the actual rate of progress can be determined). Ex: show_progress 0.1 0 9 symlink Syntax: symlink Create a symlink (like ʻln-sʼ). The is in root:path format, but is for the target filesystem (and may be relative) 参考知识,MT6516,以g6i为例的分区 # cat /proc/mtd dev: size erasesize name mtd0: 00020000 00020000 "preloader" mtd1: 00300000 00020000 "nvram" mtd2: 00020000 00020000 "seccnfg" mtd3: 00060000 00020000 "uboot" mtd4: 00600000 00020000 "boot" mtd5: 00600000 00020000 "recovery" mtd6: 00120000 00020000 "secstatic" mtd7: 00060000 00020000 "misc" mtd8: 07800000 00020000 "system" mtd9: 03c00000 00020000 "cache" mtd10: 00300000 00020000 "logo" mtd11: 000a0000 00020000 "expdb" mtd12: 13740000 00020000 "userdata" 五 打包update.zip 在zip目录使用命令 zip -r ../my-update.zip . 将会把zip目录下的boot.img META-INF system 压缩到diyrom目录 命令结束会在zip的上一级目录生成我们自己制作的刷机包my-update.zip 可以看到有个build.sh,这个是春哥自己做的自动打包和签名脚本。里面是这样的 cd zip zip -r ../my-update.zip . cd .. java -jar ~/tools/testsign.jar my-update.zip m44-update-signed.zip 最后一行是签名,这个没有研究过。可以绕过就是了。到这里刷机包就制作完成了 最后生成的my-update.signed.zip就可以放到sd卡刷机了 四 刷机 1 刷移动叔叔的中文Recovery,现在的版本是0.9.1,进入Recovery模式 2 使用第一项U盘模式,把做好的my- update.signed.zip通过usb模式复制到sd卡上 3 选择从SD卡用?ZIP包刷机 4 等待几分钟,叔叔的Recovery会自动跳过签名 执行刷机脚本的 5 用Recovery菜单的“重启手机”重启,这里要注 意,如果不用这个菜单重启而是用别的 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 手机 重启后还是Recovery模式 6 刷机完成,因为只格式化了System分区, DATA分区没有动,所以用户数据没有丢失包括 之前安装的软件都没丢
本文档为【MTK Android卡刷包制作教程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_517329
暂无简介~
格式:pdf
大小:2MB
软件:PDF阅读器
页数:15
分类:互联网
上传时间:2013-10-08
浏览量:125