华为手机获取sd卡路径 :Android ROM 刷机脚本 updater-script 的基(转载)

太平洋在线下载手机版 214 0

  本文只有部分内容华为手机获取sd卡路径 ,请到一牛网阅读全文:

  

  简单说说刷机脚本的相关知识, 以及简单的语句说明.

  目的不是让华为手机获取sd卡路径 你通过本帖学会如何做刷机脚本,那不是一下子可以做到的事情.

  但是至少可以通过本帖子,让华为手机获取sd卡路径 你对刷机脚本有一个初步的了解, 并且可以初步动手修改相对简单的内容, 例如制作升级包.

  以下说明,都以华为手机获取sd卡路径 我的Reflex S Data2Ext 2.0.2c 整包ROM为例子说明, 把update的过程流程化, 更加有助于理解.

  首先说明刷机脚本的路径, 其实很多人,包括部分ROM作者, 都不知道这个文件的存在.位于刷机包的如下路径:

  1. META-INFcomgoogleandroidupdater-script

  复制代码

  刷机过程其实很简单, 只要华为手机获取sd卡路径 你理解了流程, 和相关的语句.

  一般来说, 刷机就是如下的步骤:

  1. 开始.

  2. 清理userdata, system, cache, dalvik-cache等 (这是一个可选的步骤, 由ROM作者依据ROM的特性去决定是否要采用)

  3. 挂载userdata, system, sdext (其中sdext为可选挂载, 依据ROM特性决定)

  4. 释放对应的文件/文件夹到对应的区域, 例如刷机包内的目录data对应的释放到手机的userdata区域

  5. Symlink, 这个是必须的动作, 这个有问题, 会导致ROM出现一些问题, 特别是错误的链接或者不存在的链接,很容易引发问题.

  6. 设置权限, 这一个步骤也很重要, 关系到ROM能否正常使用, Android是base在linux基础上的, 对于文件的权限非常重要, 没有权限, 一个应用程序是无法被执行或者读写的.

  7. 刷入内核引导文件boot.img

  8. 取消挂载的各个分区, 刷机结束.

  复制代码

  大概步骤就这样, 这个过程非常明了和直接, 下面华为手机获取sd卡路径 我具体举例说明各个步骤的做法.

  1. 开始准备刷机.

  开始最简单, 实际上就是就是检测硬件, 打印相关信息,提示开始刷机.

  其中可能用到的部分函数做个简单介绍:

  ui_print: 就是在recovery下打印文字给用户阅览.

  getprop: 获取手机对应的属性

  assert: 华为手机获取sd卡路径 你可以理解为辅助执行多行脚本命令

  例如如下华为手机获取sd卡路径 我的部分开始代码:

  1. ui_print(” “);

  2. assert(getprop(“ro.product.device”) == “bravo” || getprop(“ro.build.product”) == “bravo” || getprop(“ro.product.board”)

  3. == “bravo”);

  4. ui_print(“. Reflex S Data2Ext Installation .”);

  5. ui_print(” “);

  6. ui_print(“Installing Gingerbread 2.3.3 – Sense 2.1…”);

  7. ui_print(” “);

  复制代码

  首先开始答应一行空行,编译和之前的文字区别开来.

  然后用assert完成对手机的产品设备型号的检测

  最后打印, 开始安装该ROM.

  2. 清理

  这个过程是可选的,有的rom不需要wipe直接升级,就无需这个过程,有的ROM必须完全wipe才可以刷机,否则会出问题,那么rom作者为华为手机获取sd卡路径 了担心

  华为手机获取sd卡路径 你因为没有wipe而导致出了问题, 就在脚本里面处理了,尽量帮助你避免产生问题.

  例如华为手机获取sd卡路径 我这个data2ext的ROM, 如果不wipe, 会产生一些问题, 例如FC, UID错误等, 就必须wipe, 但是为了不让用户的懒惰成为找我问问题的麻烦,我就主动帮他们”wipe”了所有必须wipe的内容.

  其中可能用到的部分函数做个简单介绍:

  fromat: 格式化相关区域的函数

  delete_recursive: 可以直接删除一个目录.

  如下华为手机获取sd卡路径 我的部分代码摘抄如下:

  1. ui_print(” Clean up cache…”);

  2. format(“MTD”, “cache”);

  3. delete_recursive(“/data/dalvik-cache”);

  4. delete_recursive(“/sdext/dalvik-cache”);

  复制代码

  首先打印华为手机获取sd卡路径 我要开始清理cache了

  然后格式化cache, 删除userdata下的dalvik-cache, 删除sd卡ext分区的dalvik-cache.

  其实华为手机获取sd卡路径 我这里代码还是有一些问题的,可能sdext都还没有挂载我就试图删除了.这个就属于脚本的隐患bug了.

  3挂载和4释放文件, 华为手机获取sd卡路径 我是按照区域来组合做的, 如下分别是userdata的处理和system的处理.

  其中可能用到的部分函数做个简单介绍:

  umount/mount: 分别是取消挂载和挂载相关的区域函数.

  package_extract_dir: 华为手机获取sd卡路径 你可以理解为复制刷机包内的指定目录到手机的指定区域.

  本文只有部分内容华为手机获取sd卡路径 ,请到一牛网阅读全文:

  

标签: 脚本 Android updater 转载 script

抱歉,评论功能暂时关闭!