Edify语法简介
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最近在学习ROM定制,在Updater-Script语法上花了很多时间,找了不少资料,都不是很完整。
后来无意中找到一篇英文文档,就整理了一下,必进行了翻译。
原地址:/guide/introdution_to_edify
水平有限,难免有误,请高手们见笑。
详细内容如下:
Edify语法简介(Updater-Script) 翻译:Kawvin
这是Android系统来运行updater-scripts的Edify语言的基本介绍。
大部分的Edify命名都是函数,当调用这些函数结束的时候,会返回数据给脚本。当然,你也可以使用这些函数的返回值来确认成功与否,例如:
ifelse(mount("yaffs2", "MTD", "system", "/system") == "system", ui_print("Successfully Mounted!"), ui_print("Mount Failed!");
这个命令会尝试去挂载命名为“system”的“MTD”分区到“/system”。如果挂载成功,脚本会显示“Successfully Mounted!”,否则会显示“Mount Failed!”。
现面是用在Edify的Updater-script中的函数例子:
函数名称: mount
函数语法: mount(fs_type, partition_type, location, mount_point)
参数详解: fs_type-----------------"yaffs2" 或 "ext4"
partition_type----------"MTD" 或 "EMMC"
location-----------------分区(partition) 或驱动器(device)
mount_poin------------挂载文件系统的目标文件夹(target folder to mount FS)
作用解释: 挂载一个文件系统到指定的挂载点
返回值: 挂载成功则返回挂载点,失败返回null
函数示例: mount("MTD", "system", "/system");挂载system分区,设置返回指针"/system”
mount("vfat", "/dev/block/mmcblk1p2", "/system"); 挂载/dev/block/mmcblk1p2,返回指针"/system”
函数名称: is_mounted
函数语法: is_mounted(mount_point)
参数详解: mount_point-----------字符串,检查是否已经挂载的挂载点
作用解释: 检查文件系统是否挂载
返回值: 挂载成功则返回挂载点,失败返回null
函数示例:
函数名称: unmount
函数语法: unmount(mount_point)
参数详解: mount_point-----------字符串,要解除挂载的挂载点
作用解释: 解除文件系统挂载
返回值: 解除挂载成功则返回挂载点,失败返回null
函数示例: unmount("/system"); 卸载/system分区
函数名称: format
函数语法: format(fs_type, partition_type, location)
参数详解: fs_type-----------------字符串,数据为"yaffs2" 或 "ext4" partition_type----------字符串, "MTD" 或 "EMMC"
location-----------------字符串, 分区(partition) 或驱动器(device) 作用解释: 格式化为指定的文件系统
函数示例: format("MTD", "system");格式化system分区
函数名称: delete
函数语法: delete(file1, file2, ..., fileN)
参数详解: 字符串,要删除的文件
作用解释: 删除一个文件。最少指定一个文件;多个文件可以做为多个参数指定
函数示例: delete("/data/zipalign.log");删除文件/data/zipalign.log
函数名称: delete_recursive
函数语法: delete_recursive(dir1, dir2,...,dirN)
参数详解: 字符串,要递归删除的目录
作用解释: 删除文件夹及其包含的所有内容。最少指定1个目录;多个目录可以做为多个参数指定
函数示例: delete_recursive("/data/dalvik-cache");删除文件夹/data/dalvik-cache
函数名称: show_progress
函数语法: show_progress(frac, sec)
参数详解: frac----------------------进度完成数值
Sec----------------------总秒数
作用解释: 显示在Recovery系统中进度
函数示例: show_progress(0.1, 10);show_progress下面的操作可能进行10s,完成后进度条前进0.1(也就是10%)
函数名称: set_progress
函数语法: set_prograss(frac)
参数详解: frac---------------------进度数值
函数示例: