android rom移植 ext4文件系统 需要修改哪些
答案:2 悬赏:70 手机版
解决时间 2021-02-12 16:57
- 提问者网友:咪咪
- 2021-02-12 04:15
android rom移植 ext4文件系统 需要修改哪些
最佳答案
- 五星知识达人网友:洎扰庸人
- 2021-02-12 04:29
下面的教程只适用于MTK芯片手机,并且理论上只能同安卓版本相互移植,例如4.1移植4.1,4.2移植4.2。建议选取分辨率相近的机器,避免部分错位和不开机情况。
们今天先讨论同平台移植(例如MTK65××相互移植)
一、准备ROM
1.把官方ROM和要移植的ROM解压。
2.从的官方系统中提取以下文件(建议整合一下,方便以后更多次的移植),需要替换的文件夹有:
system/vendor/lib/
system/usr/keychars和keylayout两个文件夹(触屏和按键配置)
system/lib/modules/【常规】
system/lib/hw/(传感器)
system/lib/cam开头的.so(这里呢,的习惯是先替换libcameracustom.so,如果相机出了问题再替换其它的)
system/lib/audio开头的.so(这里通常也只替换libaudio.primary.default.so)
system/etc/firmware/(基带)【必须】
system/etc/mddb/
system/etc/vold.fstab(挂载分区位置,自行调换)
system/etc/bluetooth(如出现蓝牙问题请替换)
system/etc/wifi(wifi问题请替换)
二、刷机脚本的修改
用编辑器(如notepad++)打开要移植的ROM中META-INF/google/android/updater-script
1.如果脚本开头有验证机型,例如assert(getprop(“ro.product.device”)== “**x” ||
getprop(“ro.product.product”) ==“**xx”)。这是验证机型的代码。没有则无视,有则删除也可以修改成自己的机器名称。
2.找到format(".......。只需要修mmcblk0p#这里的#是一个数字,修改这个数字为跟官方包相同的,mount("...这句也相同。例如:这是要移植的ROM中的刷机脚本的部分内容:
format("ext4", "EMMC", "/dev/block/mmcblk0p5", "0", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
这是官方包中刷机脚本的部分内容
format("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
那么,只需把要移植的ROM中的刷机脚本中的mmcblk0p5改为mmcblk0p3。注意,如果没有基础,请不要直接把官方ROM中刷机脚本的整个内容替换到要移植的ROM的脚本中去。
三、build.prop修改
此为优化配置文件,要优化的请在此优化,具体请在网上查。
ril.telephony.mode=# 这里#为一个数字,把这个数字改为官方包里的。至于机型、版本,可以不改。
四、boot.img部分
这里呢,有一键移植boot工具,网上就可以找到,用工具移植一下boot.img就OK了。后面有时间也可以谈谈手动修改boot.img。
五、打包
把上面三个打包成zip格式的压缩包。如果移植包目录除了/system,data/,/META-INF,boot.img还有一些其它文件,比如lk.bin,logo.img,或者logo.bin等等,这一部分文件可以用官方rom里的文件替换。如果官方rom里没有那些文件,那么就在刷机脚本boot.img那一段把响应文件刷入部分的脚本删除就OK了。有经验的童鞋可以自行删除不想要的文件。
下面是压缩文件时应选择的配置:压缩格式: ZIP,压缩方式: 标准
六、签名
网上下载签名工具,签名以后就OK了。
们今天先讨论同平台移植(例如MTK65××相互移植)
一、准备ROM
1.把官方ROM和要移植的ROM解压。
2.从的官方系统中提取以下文件(建议整合一下,方便以后更多次的移植),需要替换的文件夹有:
system/vendor/lib/
system/usr/keychars和keylayout两个文件夹(触屏和按键配置)
system/lib/modules/【常规】
system/lib/hw/(传感器)
system/lib/cam开头的.so(这里呢,的习惯是先替换libcameracustom.so,如果相机出了问题再替换其它的)
system/lib/audio开头的.so(这里通常也只替换libaudio.primary.default.so)
system/etc/firmware/(基带)【必须】
system/etc/mddb/
system/etc/vold.fstab(挂载分区位置,自行调换)
system/etc/bluetooth(如出现蓝牙问题请替换)
system/etc/wifi(wifi问题请替换)
二、刷机脚本的修改
用编辑器(如notepad++)打开要移植的ROM中META-INF/google/android/updater-script
1.如果脚本开头有验证机型,例如assert(getprop(“ro.product.device”)== “**x” ||
getprop(“ro.product.product”) ==“**xx”)。这是验证机型的代码。没有则无视,有则删除也可以修改成自己的机器名称。
2.找到format(".......。只需要修mmcblk0p#这里的#是一个数字,修改这个数字为跟官方包相同的,mount("...这句也相同。例如:这是要移植的ROM中的刷机脚本的部分内容:
format("ext4", "EMMC", "/dev/block/mmcblk0p5", "0", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p5", "/system");
这是官方包中刷机脚本的部分内容
format("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
mount("ext4", "EMMC", "/dev/block/mmcblk0p3", "/system");
那么,只需把要移植的ROM中的刷机脚本中的mmcblk0p5改为mmcblk0p3。注意,如果没有基础,请不要直接把官方ROM中刷机脚本的整个内容替换到要移植的ROM的脚本中去。
三、build.prop修改
此为优化配置文件,要优化的请在此优化,具体请在网上查。
ril.telephony.mode=# 这里#为一个数字,把这个数字改为官方包里的。至于机型、版本,可以不改。
四、boot.img部分
这里呢,有一键移植boot工具,网上就可以找到,用工具移植一下boot.img就OK了。后面有时间也可以谈谈手动修改boot.img。
五、打包
把上面三个打包成zip格式的压缩包。如果移植包目录除了/system,data/,/META-INF,boot.img还有一些其它文件,比如lk.bin,logo.img,或者logo.bin等等,这一部分文件可以用官方rom里的文件替换。如果官方rom里没有那些文件,那么就在刷机脚本boot.img那一段把响应文件刷入部分的脚本删除就OK了。有经验的童鞋可以自行删除不想要的文件。
下面是压缩文件时应选择的配置:压缩格式: ZIP,压缩方式: 标准
六、签名
网上下载签名工具,签名以后就OK了。
全部回答
- 1楼网友:玩世
- 2021-02-12 05:47
说到RFS/EXT4,这其实是一种磁盘格式,但RFS性能比较低下,这也是导致三星机子高配低能根本原因(三星Galaxy S全系列原生都是采用的RFS,包括i9000),而EXT4是一种linux的磁盘格式,要知道android的根本核心就linux所以EXT4才是最适合linux的文件系统,于是就有民间高手把系统的磁盘格式从RFS转换为RFS,但光转磁盘的格式没有用,还要系统的支持,系统支持关键是要内核(也就是kernel),因为是kernel从系统底层读取数据,所以要支持EXT4系统的kernel才行。
下面介绍一种转换RFS和EXT4的方法:
RFS->EXT4 :
1.安装clockworldMod 3.0.0.5--------也就是CWM3,(2.5的不行)
2.刷EXT4的ROM,XDA上多的很,刷前CWM3会自动检查当前文件系统格式,如果不是EXT4,它会自动将RFS转换为EXT4,然后再刷ROM的,之后你就是EXT4系统,你可以跑分试下,一般RFS系统的在800-1000,而EXT4的话都在1400以上,而且你可以看到是I/O那项分最高。
EXT4->RFS:
再就是如果某个ROM它不支持EXT4系统,那你刷这个ROM的话就会提示出错,或者开不了机,XDA上说可以用odin刷官方原版,但我用odin刷的时候,半天没动静,我就把数据线给拔了,结果再开机,却出现一个电脑和手机连接中间有个叉的图案,我以为这下完,要返厂了,抱着试试看的心理然后我就拔电池,再进挖煤,还能进(大家要知道能进挖煤,就没有变砖),就又重刷了DK28原版,但考虑到这样做风险太大,我搜遍整个XDA终于在一个外链上找到了答案,刷ReRFS.zip这个其实和用odin刷原版是一样的,但考虑到风险,还是这个比较稳妥。其它的RFS ROM好像不行,因为这个ROM里面有转换格式的脚本,而其它的ROM好像没有。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯