首页互动交流区粉丝杂谈

三星安卓手机刷机脚本详解及修改教程工具 图片

粉丝杂谈 ▪ 爱·分享

2015-12-09 11:05


现在的ROM基本都是卡刷包、还有增量升级包以及补丁包、还原包等,这些卡刷包之所以能卡刷进手机里,就是通过刷机脚本实现的!
下面通过讲解刷机脚本各种基本命令的作用和用法,使大家掌握、然后能自己编写刷机脚本,并控制整个刷机过程!
卡刷包都是ZIP文件,刷机文件为:updater-script


一、脚本位置
META-INF\com\google\android\updater-script  如下图
 

二、修改工具
Notepad++优化版

抱歉,当前内容回复可见


三、修改方法
使用任何卡刷包的脚本文件进行修改,修改成自己,也可以用Notepad++创建

四、命令(常用命令)
注意每条命令结束,需要用英文分号 ; 结尾,如:
show_progress(1.000000, 0);
ui_print("Mounting filesystems...");
run_program("/sbin/busybox", "mount", "/system");


命令:ui_print
作用:在屏幕显示提示等文字信息
格式:ui_print("你要现实的内容") 
          如果省略内容即:ui_print("") 就是留一空白行


命令:show_progress
作用:在屏幕下方显示进度条
格式:show_progress(1.000000, 0)
          1.000000表示100%
          0表示完成操作可能需要的时间(秒)
          基本就用show_progress(1.000000, 0)这个格式,不需要修改


命令:set_progress
作用:设置当前进度条位置(%),在进行某个或某些操作后加入此命令,以显示当前完成进度
格式:set_progress(0.300000)
          0.300000表示30%,以此类推直到set_progress(1.000000) 结束100%


命令:set_perm_recursive
作用:设置文件夹在安卓系统的权限
格式:set_perm_recursive(用户ID, 用户组ID, 文件夹内的文件夹的权限代码,文件夹内文件的权限代码, "文件夹路径")
          如:set_perm_recursive(0, 0, 0755, 0644, "/system")表示,设置/system里文件夹权限为0755:rwxr-xr-x,设置/system里文件权限为0644:rw-r--r--
          权限代码: 某种权限组合,可以通过RE管理查得
          用户ID, 用户组ID:一般都为0


命令:set_perm
作用:设置文件在安卓系统的权限
格式:set_perm(0, 0, 权限代码, "文件路径")
          如:set_perm(用户ID, 用户组ID,, 0644, "/system/app/InCallUI.apk")表示,设置/system/app/InCallUI.apk的权限为rw-r--r--
          权限代码: 某种权限组合,可以通过RE管理查得
          用户ID, 用户组ID:一般都为0


命令:package_extract_dir
作用:解压(提取)卡刷包里指定目录的内容,至手机指定目录内。(如果和手机里的内容相同则自动进行覆盖)
格式:package_extract_dir("卡刷包路径", "手机路径")
          如:package_extract_dir("system", "/system")表示解压(提取)卡刷包根目录下的system文件夹下的所有内容,至手机的/system下。
          根目录:就是刚进入卡刷包ZIP文件时显示的目录

命令:package_extract_file
作用:解压(提取)卡刷包里指定文件,至手机指定目录内。(如果和手机里的内容相同则自动进行覆盖)
格式:package_extract_file("卡刷包文件路径", "手机路径")
          如:package_extract_dir("/system/app/123.apk", "/system/app")表示解压(提取)卡刷包目录/system/app下的文件123.apk,至手机的/system/app下。


命令:mount
作用:挂载一个文件系统(或分区)到指定的挂载点,也就是让这个文件系统(或分区)有读写操作权,其他很多操作必须要进行此操作!
格式:mount("ext4", ""EMMC", "文件系统或分区编号", "手机对应路径")
          如:mount("ext4", "EMMC", "/dev/block/mmcblk0p25", "/preload")表示挂载/preload,其中ext4安卓系统的文件系统格式,EMMC表示内储存存芯片(俗称字库)
          文件系统或分区编号对应手机路径列表:
          mount("ext4", "EMMC", "/dev/block/mmcblk0p23", "/system")
          mount("ext4", "EMMC", "/dev/block/mmcblk0p24", "/cache")
          mount("ext4", "EMMC", "/dev/block/mmcblk0p25", "/preload")
          mount("ext4", "EMMC", "/dev/block/mmcblk0p26", "/data")
也可以使用下列命令代替mount
          run_program("/sbin/busybox", "mount", "/system");
          run_program("/sbin/busybox", "mount", "/data");
          run_program("/sbin/busybox", "mount", "/cache");
          run_program("/sbin/busybox", "mount", "/preload");

命令:unmount
作用:卡刷结束前与mount对应的解除挂载
格式:unmount("手机对应路径")
          如:unmount("/system")
                 unmount("/cache")
                 unmount("/preload")
                 unmount("/data")
如使用了run_program命令代替mount,则使用下列命令
             run_program("/sbin/busybox", "unmount", "/system");             run_program("/sbin/busybox", "unmount", "/data");
             run_program("/sbin/busybox", "unmount", "/cache");
             run_program("/sbin/busybox", "unmount", "/preload");

命令:delete_recursive
作用:删除手机内指定文件夹及其包含的所有内容
格式:delete_recursive("手机对应路径")
         如:delete_recursive("/preload")
               delete_recursive("/system")
               delete_recursive("/data")
               delete_recursive("/cache")
               delete_recursive("/data/dalvik-cache")
               红色两条等同于双清操作!!!


命令:delete
作用:删除手机内指定文件
格式:delete("手机对应文件路径")
         如:delete("/system/priv-app/SFinder.apk")


命令:symlink(这个我也不太深入的理解,主要还是在ROM完整刷机包有使用,机友们可以直接复制别人刷机包的这些内容)
作用:软链接命令,相当于建议快捷链接,我这么理解的
格式:symlink("被连接目标", "链接到的地址")
         如:symlink("/system/xbin/su", "/system/bin/su")表示在手机中system中的xbin中建立一个/system/bin/su的快捷方式


五、特殊功能命令组合
自动重启:
run_program("/sbin/sleep", "3s")   休眠3秒,也可取消此命令只用下面的命令,直接重启
run_program("/sbin/reboot")     重启


写入boot.img(内核)
assert(package_extract_file("boot.img", "/tmp/boot.img")
write_raw_image("/tmp/boot.img", "/dev/block/mmcblk0p15")
delete("/tmp/boot.img")
请注意:红色两行结尾使用英文逗号,
             和其它的结尾用英文分号不同!!!!


回复

举报回复

请您选择举报理由
close

设置帖子

设置帖子
备注
close

操作记录

操作记录
操作者 时间 操作 备注
close

编辑回复

close

VOC推送

VOC推送
帖子标题: 三星安卓手机刷机脚本详解及修改教程工具
所属版块: 互动交流区>粉丝杂谈
部 门:
备注信息:
消息内容:
close

温馨提示

VOC帖子推送
该版块未设置问题反馈主题,不能被推送为VOC
帖子名称: 三星安卓手机刷机脚本详解及修改教程工具
所属板块: 互动交流区>粉丝杂谈
close

删除帖子

删除帖子
删除原因
close

审核帖子

帖子名称 三星安卓手机刷机脚本详解及修改教程工具
*审核状态
*备注信息:
close