From f9d15ab1ea6bdd5c4542e238a1e50eea13003234 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Thu, 24 Aug 2023 19:13:34 +0800 Subject: [PATCH 01/27] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B0=8F=E7=B1=B3?= =?UTF-8?q?=E8=A7=86=E9=A2=91=E4=B8=A2=E5=A4=B1=E5=88=86=E5=B1=82=E5=9B=BE?= =?UTF-8?q?=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 默认主题的分层图标,小米视频,修改错误的包名 --- XIAOMIPAD5PRO.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 4f059d1..b953f29 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -93,6 +93,12 @@ persist.miui.density_v2=360 persist.miui.extm.enable=0 ``` + +修复默认主题小米视频无分层图标功能,包名com.miui.videoplayer,这里文件夹名莫名少了一个r +product\media\theme\miui_mod_icons\dynamic\com.miui.videoplaye +改成 +product\media\theme\miui_mod_icons\dynamic\com.miui.videoplayer + overlay保留5pro本身设备的apk product\overlay\DevicesAndroidOverlay.apk product\overlay\DevicesOverlay.apk From 321a3a1d05389e29862b3649c5d6b9c11a94972f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Thu, 24 Aug 2023 19:49:50 +0800 Subject: [PATCH 02/27] =?UTF-8?q?=E6=B7=BB=E5=8A=A0vendor=5Fboot=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 设置selinux宽容的具体代码 --- XIAOMIPAD5PRO.md | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index b953f29..a21674c 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -114,9 +114,7 @@ system\system\build.prop ``` ro.product.mod_device=elish ``` - ## system_ext分区无需修改,直接照搬6max - ## vendor分区修改,如果选择不集成pc版wps无需修改,直接用5pro的 如果要集成pc版wps则注意以下部分 6max新增pc版wps相关文件,只要对比6pro(liuqin)的整个vendor分区,看孤立文件,一眼就能看出这些文件跟pc版wps有关, @@ -530,22 +528,21 @@ hal_mslgkeeper_default (typeattribute base_typeattr_724_30_0) (typeattributeset base_typeattr_724_30_0 ((and (domain) ((not (hal_mslgkeeper_server)))))) ``` - ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 这里的目标是打包成sparse格式的super.img,vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里用卡刷脚本写入到super分区, 常见的情况也有使用zstd工具把super压缩成zst格式,在线刷、卡刷的时候再解压,这种用压缩解压的时间来节省刷机包占用空间大小的做法, 这种的情况就需要专门的脚本和工具了 由于无wps版由于不需要修改odm、vendor分区,所以理论上其实你可以直接用fastbootd模式刷入mi_ext、system、system_ext、product分区 -dsu包的做法就是直接把mi_ext、system、system_ext、product分区的raw image文件打包成一个zip或者gz文件即可 -解包打包偷懒就找个安卓工具箱,米欧、dna、多幸运之类的,直接一键打包 - +dsu包的做法就是直接把mi_ext、system、system_ext、product分区的raw image文件打包成一个zip或者gz文件即可 +解包打包偷懒就找个安卓工具箱,米欧、dna、多幸运之类的,直接一键打包 ## 关闭avb验证 可选,修改fstab.qcom去除avb代码 vendor\etc\fstab.qcom -把system那一行的flags从`,avb_keys=`开始把后面的全删除 +把system那一行的flags从`,avb_keys=`开始把后面的内容全删除 -可选,vendor_boot修改header在最后增加设置宽容的代码 +可选,vendor_boot修改header在最后增加设置宽容的代码,如果要打包pc版wps就设置一下宽容,如果不需要改vendor就算了 +`androidboot.selinux=permissive` 刷入vbmeta、vbmeta_system时使用命令关闭avb验证或者在twrp中直接用选项关闭 ```bash From 151c592f5109f9bfc17e169362f953c6888e319b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Tue, 29 Aug 2023 23:13:40 +0800 Subject: [PATCH 03/27] =?UTF-8?q?=E6=9B=B4=E6=96=B014.0.4.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index a21674c..dcb7769 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6 MAX MIUI 14记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.3.0 +基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.4.0 由于是同一个安卓版本同一个MIUI大版本移植,所以需要修改的内容不多 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准,先打一个草稿,慢慢更新 @@ -84,7 +84,7 @@ build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/missi:13/TKQ1.221114.001/V14.0.3.0.TMHCNXM:user/release-keys +ro.product.build.fingerprint=Xiaomi/elish/missi:13/TKQ1.221114.001/V14.0.4.0.TMHCNXM:user/release-keys ro.product.mod_device=elish ro.sf.lcd_density=360 @@ -94,11 +94,6 @@ persist.miui.extm.enable=0 ``` -修复默认主题小米视频无分层图标功能,包名com.miui.videoplayer,这里文件夹名莫名少了一个r -product\media\theme\miui_mod_icons\dynamic\com.miui.videoplaye -改成 -product\media\theme\miui_mod_icons\dynamic\com.miui.videoplayer - overlay保留5pro本身设备的apk product\overlay\DevicesAndroidOverlay.apk product\overlay\DevicesOverlay.apk @@ -131,7 +126,7 @@ ro.product.mod_device=elish /vendor/etc/assets/md5.txt /vendor/etc/assets/mslgoptimg /vendor/etc/assets/mslgusrimg -/vendor/etc/assets/rootfs-23.07.28.tgz +/vendor/etc/assets/rootfs-23.08.22.tgz /vendor/etc/init/mslgservice.rc @@ -142,7 +137,7 @@ ro.product.mod_device=elish ``` vendor/build.prop加入代码 ``` -ro.vendor.mslg.rootfs.version=rootfs-23.07.28.tgz +ro.vendor.mslg.rootfs.version=rootfs-23.08.22.tgz sys.mslg.available=1 ``` 接下来是补充selinux的上下文权限, From 93ed664e1c4cf128d128e26c04414b6db365e54c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sat, 16 Sep 2023 10:57:11 +0800 Subject: [PATCH 04/27] =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E5=AE=8C=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加mslgservice.rc具体修改代码 修改super打包描述 修改vbmeta修改描述 --- XIAOMIPAD5PRO.md | 43 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 38 insertions(+), 5 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index dcb7769..a7a121a 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -2,7 +2,7 @@ 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.4.0 由于是同一个安卓版本同一个MIUI大版本移植,所以需要修改的内容不多 -本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准,先打一个草稿,慢慢更新 +本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 这里有两个选择, 第一个选择是很多有的没的(像是控制中心工作台开关、设置里的平板专区、平行世界拖拽点、会议工具箱等等)是6max专属新功能,有机型验证, @@ -142,8 +142,38 @@ sys.mslg.available=1 ``` 接下来是补充selinux的上下文权限, 我也不知道补了有什么用,也不知道写的对不对,反正就是照yudi的文件抄,补了 -我看别人的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,这样mslg是直接用shell的权限,就不用补mslgd的sepolicy权限了 +我看鲁迅的霸权、曾小理的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,这样mslg是直接用shell的权限,就不用补mslgd的sepolicy权限了(修改方法感谢水龙指导) +修改mslgservice.rc文件 +vendor\etc\init\mslgservice.rc +``` +service mslgservice /vendor/bin/hw/mslgservice + class core + user root + disabled + oneshot + +service tar_rootfs /vendor/bin/tar-rootfs.sh ${vendor.mslgrootfs.version} + class core + user root + seclabel u:r:shell:s0 + disabled + oneshot + +service losetup_rootfs /vendor/bin/losetup.sh + class core + user root + seclabel u:r:shell:s0 + disabled + oneshot + +service mslgrootfs /vendor/bin/start-rootfs.sh + class core + user root + seclabel u:r:shell:s0 + disabled + oneshot +``` 修改vendor文件上下文文件 vendor\etc\selinux\vendor_file_contexts ``` @@ -525,8 +555,9 @@ hal_mslgkeeper_default ``` ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, -这里的目标是打包成sparse格式的super.img,vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里用卡刷脚本写入到super分区, -常见的情况也有使用zstd工具把super压缩成zst格式,在线刷、卡刷的时候再解压,这种用压缩解压的时间来节省刷机包占用空间大小的做法, +然后用lpmake打包成super img +这里的目标是打包成sparse格式的super.img(线刷必须要sparse格式,卡刷不一定取决于刷机脚本怎么写),vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里用卡刷脚本写入到super分区, +常见的情况也有使用zstd工具把super压缩成zst格式(打包zst需要raw格式的super.img),在线刷、卡刷的时候再解压,这种用压缩解压的时间来节省刷机包占用空间大小的做法, 这种的情况就需要专门的脚本和工具了 由于无wps版由于不需要修改odm、vendor分区,所以理论上其实你可以直接用fastbootd模式刷入mi_ext、system、system_ext、product分区 dsu包的做法就是直接把mi_ext、system、system_ext、product分区的raw image文件打包成一个zip或者gz文件即可 @@ -539,7 +570,9 @@ vendor\etc\fstab.qcom 可选,vendor_boot修改header在最后增加设置宽容的代码,如果要打包pc版wps就设置一下宽容,如果不需要改vendor就算了 `androidboot.selinux=permissive` -刷入vbmeta、vbmeta_system时使用命令关闭avb验证或者在twrp中直接用选项关闭 +修改vbmeta.img、vbmeta_system.img,关闭avb验证,这玩意得用十六进制编辑器或者打包工具修改, +我看米欧是修改的十六进制0000007B这个地址00改成02 +另一个办法,用户刷入vbmeta、vbmeta_system时使用命令关闭avb验证或者在twrp中直接用选项关闭 ```bash fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img fastboot --disable-verity --disable-verification flash vbmeta_system vbmeta_system.img From 09bcb61a86f7e95d5fd7838dcc4f838299e442be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sun, 17 Sep 2023 12:56:32 +0800 Subject: [PATCH 05/27] =?UTF-8?q?=E5=B0=8F=E7=88=B1=E7=BF=BB=E8=AF=91?= =?UTF-8?q?=E6=9B=BF=E6=8D=A2=E5=9B=9E=E6=97=A7=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新版离线字幕识别在骁龙870上会闪退 换回3.x版本 --- XIAOMIPAD5PRO.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index a7a121a..6e74455 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -30,6 +30,8 @@ product\app\MSLgRdp product\data-app\WpsLauncher product\app +删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的6max小爱翻译 AiAsstVision +保留5pro小爱翻译 AiAsstVision(开发板内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) 删除无法使用的6max人脸识别解锁 MiuiBiometric 保留5pro人脸识别解锁 MiuiBiometric3373 From e637487c8c53800cc9e7026a55f2d579296b741a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Tue, 19 Sep 2023 22:16:29 +0800 Subject: [PATCH 06/27] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B0=B7=E6=AD=8C?= =?UTF-8?q?=E6=94=AF=E4=BB=98=E4=B8=A2=E5=A4=B1=E5=88=86=E5=B1=82=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加谷歌支付的图标文件 --- XIAOMIPAD5PRO.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 6e74455..f86281e 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -93,8 +93,9 @@ ro.sf.lcd_density=360 persist.miui.density_v2=360 persist.miui.extm.enable=0 - ``` +默认主题谷歌支付无分层图标功能,平板6max好像直接就没这个文件夹,从6pro的包里提取一个,改好包名复制过来 +product\media\theme\miui_mod_icons\dynamic\com.google.android.apps.nbu overlay保留5pro本身设备的apk product\overlay\DevicesAndroidOverlay.apk From 39a6af8f602110c5d676fced91e62c235b2094df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Wed, 20 Sep 2023 22:47:50 +0800 Subject: [PATCH 07/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0V14.0.6.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改屏幕配置文件,微调全局亮度 补充主题谷歌支付分层图标文件 默认主题小米视频分层图标无问题,所以删除相关描述 更新vendor分区wps相关修改描述 补充fstab修改关于去除avb代码的描述 --- XIAOMIPAD5PRO.md | 411 +++-------------------------------------------- 1 file changed, 23 insertions(+), 388 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index f86281e..28a45ce 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6 MAX MIUI 14记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.4.0 +基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.6.0 由于是同一个安卓版本同一个MIUI大版本移植,所以需要修改的内容不多 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 @@ -80,13 +80,27 @@ product\etc\displayconfig\display_id_4630946932993367170.xml product\etc\displayconfig\display_id_19260527152667265.xml product\etc\displayconfig\display_id_4630946481717202305.xml product\etc\displayconfig\display_id_4630946545580055169.xml -这三个文件的内容是完全一样的,所以只要用任意一个里面的内容替换掉display_id_4630946932993367170.xml屏幕亮度调节就正常了 - +这三个文件的内容是完全一样的,所以只要用任意一个里面的内容替换掉display_id_4630946932993367170.xml屏幕亮度调节就正常了 +屏幕亮度曲线,三个点,随意调一调,就加个400nits中间值好了,反正决定亮度的值是在MiuiFrameworkResOverlay.apk里,value是直接抄yudi,最大最小值也是有其他地方决定的,改的太离谱也会出现上面那个报错 +``` + + 0.001709819 + 2.0 + + + 0.49975574 + 400.0 + + + 1.0 + 500 + +``` build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/missi:13/TKQ1.221114.001/V14.0.4.0.TMHCNXM:user/release-keys +ro.product.build.fingerprint=Xiaomi/elish/missi:13/TKQ1.221114.001/V14.0.6.0.TMHCNXM:user/release-keys ro.product.mod_device=elish ro.sf.lcd_density=360 @@ -129,7 +143,7 @@ ro.product.mod_device=elish /vendor/etc/assets/md5.txt /vendor/etc/assets/mslgoptimg /vendor/etc/assets/mslgusrimg -/vendor/etc/assets/rootfs-23.08.22.tgz +/vendor/etc/assets/rootfs-23.09.08.tgz /vendor/etc/init/mslgservice.rc @@ -140,12 +154,12 @@ ro.product.mod_device=elish ``` vendor/build.prop加入代码 ``` -ro.vendor.mslg.rootfs.version=rootfs-23.08.22.tgz +ro.vendor.mslg.rootfs.version=rootfs-23.09.08.tgz sys.mslg.available=1 ``` 接下来是补充selinux的上下文权限, -我也不知道补了有什么用,也不知道写的对不对,反正就是照yudi的文件抄,补了 -我看鲁迅的霸权、曾小理的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,这样mslg是直接用shell的权限,就不用补mslgd的sepolicy权限了(修改方法感谢水龙指导) +补个锤子 +我看鲁迅的霸权、曾小理的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,mslgservice直接不要了那行(修改方法感谢水龙指导) 修改mslgservice.rc文件 vendor\etc\init\mslgservice.rc @@ -177,385 +191,6 @@ service mslgrootfs /vendor/bin/start-rootfs.sh disabled oneshot ``` -修改vendor文件上下文文件 -vendor\etc\selinux\vendor_file_contexts -``` -/(vendor|system/vendor)/bin/hw/vendor.xiaomi.mslg.keeper@1.0-service u:object_r:hal_mslgkeeper_default_exec:s0 -/(vendor|system/vendor)/bin/start-rootfs.sh u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/bin/tar-rootfs.sh u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/bin/losetup.sh u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/bin/hw/mslgservice u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/etc/assets(/.*)? u:object_r:vendor_file:s0 -/(vendor|system/vendor)/etc/assets/mslgoptimg u:object_r:vendor_file:s0 -/(vendor|system/vendor)/etc/assets/mslgusrimg u:object_r:vendor_file:s0 - -/dev/msl(/.*)? u:object_r:mslg_rootfs_file:s0 - -/data/vendor/mslg(/.*)? u:object_r:mslg_rootfs_file:s0 -``` -修改vendor服务上下文文件 -vendor\etc\selinux\vendor_hwservice_contexts -``` -vendor.xiaomi.mslg.keeper::IMSLgKeeper u:object_r:hal_mslgkeeper_hwservice:s0 -``` -修改vendor属性上下文文件 -vendor\etc\selinux\vendor_property_contexts -``` -#line 1 "out/soong/.intermediates/system/sepolicy/vendor_property_contexts/android_common/gen/namespace_checked/vendor/xiaomi/proprietary/mslg/keeper/1.0/default/sepolicy/property_contexts" -persist.vendor.unzip.mslgrootfs u:object_r:vendor_mslg_prop:s0 -vendor.mslgrootfs.isready u:object_r:vendor_mslg_prop:s0 -vendor.mslgrootfs.version u:object_r:vendor_mslg_prop:s0 -vendor.setup.mslgrootfs u:object_r:vendor_mslg_prop:s0 -vendor.mslg.mslgusrimg u:object_r:vendor_mslg_prop:s0 -vendor.mslg.mslgoptimg u:object_r:vendor_mslg_prop:s0 -ro.vendor.mslg.rootfs.version u:object_r:vendor_mslg_prop:s0 -``` -修改vendor seapp上下文文件 -vendor\etc\selinux\vendor_seapp_contexts -``` -user=_app seinfo=platform name=com.xiaomi.mslgrdp domain=mslg_app type=app_data_file levelFrom=all -``` -修改se策略文件,这段需要补的权限超级多,痛苦 -vendor\etc\selinux\vendor_sepolicy.cil -``` -(typeattributeset domain (adbd_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default mslg_app mslg_init mslgd - -(typeattributeset fs_type (device_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -mslg_app_devpts - -(typeattributeset file_type (adbd_exec_30_0开头的这行到下三行,最后面的))之前,按照前面的格式加上 -mslg_rootfs_file hal_mslgkeeper_default_exec mslg_init_exec mslgd_exec - -(typeattributeset exec_type (adbd_exec_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default_exec mslg_init_exec mslgd_exec - -(typeattributeset data_file_type (incremental_control_file_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -mslg_rootfs_file - -(typeattributeset vendor_file_type (vendor_cgroup_desc_file_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default_exec mslg_init_exec mslgd_exec - -(typeattributeset property_type (apexd_prop_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -vendor_mslg_prop - -(typeattributeset vendor_property_type (rebootescrow_hal_prop_30_0开头的这行到最后面的))之前,按照前面的格式加上 -vendor_mslg_prop - -(typeattributeset vendor_public_property_type (开头的这行到最后面的))之前,按照前面的格式加上 -vendor_mslg_prop - -(typeattributeset hwservice_manager_type (default_android_hwservice_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_hwservice - -(typeattributeset mlstrustedsubject (bufferhubd_30_0开头的这行到最后面的))之前,按照前面的格式加上 -mslg_init mslgd - -(typeattributeset mlstrustedobject (ashmem_device_30_0开头的这行到最后面的))之前,按照前面的格式加上 -mslg_rootfs_file - -(typeattributeset appdomain (开头的这行到最后面的))之前,按照前面的格式加上 -mslg_app - -(typeattributeset netdomain (dhcp_30_0(开头的这行到最后面的))之前,按照前面的格式加上 -mslg_app - -新增行 -(typeattributeset bluetoothdomain (mslg_app)) -(typeattributeset coredomain (mslg_app)) -(typeattributeset socket_between_core_and_vendor_violators (mslg_app mslgd)) - -(typeattributeset halserverdomain (mediaswcodec_30_0开头的这行到最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default - -新增行 -(typeattribute hal_mslgkeeper) -(typeattributeset hal_mslgkeeper (hal_mslgkeeper_default)) -(typeattribute hal_mslgkeeper_server) -(typeattributeset hal_mslgkeeper_server (hal_mslgkeeper_default)) -(typeattribute hal_mslgkeeper_client) - -新增行 -(type mslg_rootfs_file) -(roletype object_r mslg_rootfs_file) -(type hal_mslgkeeper_default) -(roletype object_r hal_mslgkeeper_default) -(type hal_mslgkeeper_default_exec) -(roletype object_r hal_mslgkeeper_default_exec) -(type hal_mslgkeeper_hwservice) -(roletype object_r hal_mslgkeeper_hwservice) -(type mslg_app) -(roletype object_r mslg_app) -(type mslg_app_userfaultfd) -(roletype object_r mslg_app_userfaultfd) -(type mslg_app_devpts) -(roletype object_r mslg_app_devpts) -(type mslg_init) -(roletype object_r mslg_init) -(type mslg_init_exec) -(roletype object_r mslg_init_exec) -(type mslgd) -(roletype object_r mslgd) -(type mslgd_exec) -(roletype object_r mslgd_exec) -(type vendor_mslg_prop) -(roletype object_r vendor_mslg_prop) - -新增行 -(allow hal_mslgkeeper_client hal_mslgkeeper_server (binder (call transfer))) -(allow hal_mslgkeeper_server hal_mslgkeeper_client (binder (transfer))) -(allow hal_mslgkeeper_client hal_mslgkeeper_server (fd (use))) -(allow hal_mslgkeeper_server hal_mslgkeeper_client (binder (call transfer))) -(allow hal_mslgkeeper_client hal_mslgkeeper_server (binder (transfer))) -(allow hal_mslgkeeper_server hal_mslgkeeper_client (fd (use))) -(allow hal_mslgkeeper_server hal_mslgkeeper_hwservice (hwservice_manager (add find))) -(allow hal_mslgkeeper_server hidl_base_hwservice_30_0 (hwservice_manager (add))) -(neverallow base_typeattr_724_30_0 hal_mslgkeeper_hwservice (hwservice_manager (add))) -(allow init_30_0 hal_mslgkeeper_default_exec (file (read getattr map execute open))) -(allow init_30_0 hal_mslgkeeper_default (process (transition))) -(allow hal_mslgkeeper_default hal_mslgkeeper_default_exec (file (read getattr map execute open entrypoint))) -(dontaudit init_30_0 hal_mslgkeeper_default (process (noatsecure))) -(allow init_30_0 hal_mslgkeeper_default (process (siginh rlimitinh))) -(typetransition init_30_0 hal_mslgkeeper_default_exec process hal_mslgkeeper_default) -(allow hal_mslgkeeper_default hwservicemanager_30_0 (binder (call transfer))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (binder (call transfer))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (dir (search))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (file (read map open))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (process (getattr))) -(allow hal_mslgkeeper_default vendor_mslg_prop (file (read getattr map open))) -(allow hal_mslgkeeper_default property_socket_30_0 (sock_file (write))) -(allow hal_mslgkeeper_default init_30_0 (unix_stream_socket (connectto))) -(allow hal_mslgkeeper_default vendor_mslg_prop (property_service (set))) -(allow hal_mslgkeeper_default vendor_mslg_prop (file (read getattr map open))) -(allow hal_mslgkeeper_default mslg_rootfs_file (file (read getattr open))) -(allow hal_mslgkeeper_default mslg_rootfs_file (dir (read getattr open search))) -(allow init_30_0 mslg_rootfs_file (dir (mounton))) -(allow init_30_0 mslg_rootfs_file (file (mounton))) -(allow init_30_0 fuse_30_0 (dir (mounton))) -(allow init_30_0 fuse_30_0 (file (mounton))) -(allow init_30_0 mnt_user_file_30_0 (lnk_file (read write create open))) -(allow hal_misys_default mslg_rootfs_file (file (read getattr open))) -(allow hal_misys_default mslg_rootfs_file (dir (read getattr open search))) -(typetransition mslg_app tmpfs_30_0 file appdomain_tmpfs) -(allow mslg_app mslg_app_userfaultfd (anon_inode (ioctl read create))) -(neverallow base_typeattr_725_30_0 mslg_app_userfaultfd (anon_inode (ioctl read write create getattr setattr lock relabelfrom relabelto append map unlink link rename execute quotaon mounton audit_access open execmod watch watch_mount watch_sb watch_with_perm watch_reads))) -(neverallow mslg_app base_typeattr_726_30_0 (anon_inode (ioctl read write create getattr setattr lock relabelfrom relabelto append map unlink link rename execute quotaon mounton audit_access open execmod watch watch_mount watch_sb watch_with_perm watch_reads))) -(allow mslg_app appdomain_tmpfs_30_0 (file (read write getattr map execute))) -(neverallow base_typeattr_727_30_0 base_typeattr_725_30_0 (file (ioctl read write create setattr lock relabelfrom append unlink link rename open watch watch_mount watch_sb watch_with_perm watch_reads))) -(neverallow base_typeattr_728_30_0 mslg_app (file (ioctl read write create setattr lock relabelfrom append unlink link rename open watch watch_mount watch_sb watch_with_perm watch_reads))) -(neverallow base_typeattr_729_30_0 mslg_app (process (ptrace))) -(allow mslg_app app_data_file_30_0 (dir (write add_name search))) -(allow mslg_app app_data_file_30_0 (file (create open))) -(auditallow mslg_app app_data_file_30_0 (file (execute))) -(allow mslg_app system_linker_exec_30_0 (file (execute_no_trans))) -(allow mslg_app privapp_data_file_30_0 (lnk_file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app app_data_file_30_0 (lnk_file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app app_data_file_30_0 (sock_file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app app_data_file_30_0 (fifo_file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app asec_apk_file_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app asec_apk_file_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslg_app asec_public_file_30_0 (file (execute))) -(allow mslg_app shell_data_file_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app shell_data_file_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslg_app trace_data_file_30_0 (file (read getattr))) -(allow mslg_app system_app_data_file_30_0 (file (read write getattr))) -(allow mslg_app media_rw_data_file_30_0 (dir (ioctl read write create getattr setattr lock rename open watch watch_reads add_name remove_name reparent search rmdir))) -(allow mslg_app media_rw_data_file_30_0 (file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app mnt_media_rw_file_30_0 (dir (search))) -(allow mslg_app servicemanager_30_0 (service_manager (list))) -(allow mslg_app audioserver_service_30_0 (service_manager (find))) -(allow mslg_app cameraserver_service_30_0 (service_manager (find))) -(allow mslg_app drmserver_service_30_0 (service_manager (find))) -(allow mslg_app mediaserver_service_30_0 (service_manager (find))) -(allow mslg_app mediaextractor_service_30_0 (service_manager (find))) -(allow mslg_app mediametrics_service_30_0 (service_manager (find))) -(allow mslg_app mediadrmserver_service_30_0 (service_manager (find))) -(allow mslg_app nfc_service_30_0 (service_manager (find))) -(allow mslg_app radio_service_30_0 (service_manager (find))) -(allow mslg_app app_api_service (service_manager (find))) -(allow mslg_app vr_manager_service_30_0 (service_manager (find))) -(allow mslg_app gpu_service_30_0 (service_manager (find))) -(allow mslg_app gpuservice_30_0 (binder (call transfer))) -(allow gpuservice_30_0 mslg_app (binder (transfer))) -(allow mslg_app gpuservice_30_0 (fd (use))) -(allow mslg_app self (process (ptrace))) -(allow mslg_app runas_app_30_0 (unix_stream_socket (connectto))) -(allow mslg_app mslgd (unix_stream_socket (connectto))) -(allow mslg_app runas_app_30_0 (process (sigchld))) -(allow mslg_app sysfs_hwrandom_30_0 (dir (search))) -(allow mslg_app sysfs_hwrandom_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app preloads_media_file_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslg_app preloads_media_file_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app preloads_data_file_30_0 (dir (search))) -(allow mslg_app vendor_app_file_30_0 (dir (read getattr open search))) -(allow mslg_app vendor_app_file_30_0 (file (ioctl read getattr lock map execute open watch watch_reads))) -(allow mslg_app vendor_app_file_30_0 (lnk_file (read getattr open))) -(allow mslg_app traced_30_0 (fd (use))) -(allow mslg_app traced_tmpfs_30_0 (file (read write getattr map))) -(allow mslg_app traced_producer_socket_30_0 (sock_file (write))) -(allow mslg_app traced_30_0 (unix_stream_socket (connectto))) -(allow traced_30_0 mslg_app (fd (use))) -(allow traced_perf_30_0 mslg_app (file (ioctl read getattr lock map open watch watch_reads))) -(allow traced_perf_30_0 mslg_app (dir (ioctl read getattr lock open watch watch_reads search))) -(allow traced_perf_30_0 mslg_app (process (signal))) -(allow mslg_app traced_perf_socket_30_0 (sock_file (write))) -(allow mslg_app traced_perf_30_0 (unix_stream_socket (connectto))) -(allow traced_perf_30_0 mslg_app (fd (use))) -(allow mslg_app system_server_30_0 (udp_socket (read write getattr connect getopt setopt recvfrom sendto))) -(allow mslg_app rs_exec_30_0 (file (read getattr map execute open))) -(allow mslg_app rs_30_0 (process (transition))) -(allow rs_30_0 rs_exec_30_0 (file (read getattr map execute open entrypoint))) -(allow rs_30_0 mslg_app (process (sigchld))) -(dontaudit mslg_app rs_30_0 (process (noatsecure))) -(allow mslg_app rs_30_0 (process (siginh rlimitinh))) -(typetransition mslg_app rs_exec_30_0 process rs) -(dontaudit mslg_app net_dns_prop_30_0 (file (read))) -(dontaudit mslg_app proc_stat_30_0 (file (read))) -(dontaudit mslg_app proc_vmstat_30_0 (file (read))) -(dontaudit mslg_app proc_uptime_30_0 (file (read))) -(typetransition mslg_app devpts_30_0 chr_file mslg_app_devpts) -(allow mslg_app mslg_app_devpts (chr_file (ioctl read write getattr open))) -(allowx mslg_app mslg_app_devpts (ioctl chr_file (((range 0x5401 0x5404)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) ((range 0x5450 0x5451))))) -(neverallowx base_typeattr_185_30_0 mslg_app_devpts (ioctl chr_file (0x5412))) -(allow mslg_app simpleperf_30_0 (process (signal))) -(allow mslg_app system_app_service_30_0 (service_manager (find))) -(allow mslg_app vendor_hal_perf_hwservice (hwservice_manager (find))) -(allow mslg_app hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow mslg_app hal_mslgkeeper_default (binder (call transfer))) -(allow mslg_app procfs_memory (file (read))) -(allow mslg_app mslgd (unix_dgram_socket (sendto))) -(allow mslg_app procfs_memory (file (open))) -(allow mslg_app mslg_rootfs_file (sock_file (write create getattr setattr unlink rename))) -(allow mslg_app mslg_rootfs_file (file (ioctl read write create getattr setattr lock append map unlink link rename open watch))) -(allow mslg_app mslg_rootfs_file (fifo_file (read write create unlink open))) -(allow mslg_app mslg_rootfs_file (dir (read write create getattr setattr open watch add_name remove_name search rmdir))) -(allow mslg_app mslg_rootfs_file (lnk_file (read getattr))) -(allow mslg_app tmpfs_30_0 (sock_file (write create))) -(allow mslg_app tmpfs_30_0 (file (read open))) -(allow mslg_app app_api_service (service_manager (find))) -(allow mslg_app mslg_app (tcp_socket (read write))) -(allow mslg_app property_socket_30_0 (sock_file (write))) -(allow mslg_app init_30_0 (unix_stream_socket (connectto))) -(allow mslg_app system_prop_30_0 (property_service (set))) -(allow init_30_0 mslg_init_exec (file (read getattr map execute open))) -(allow init_30_0 mslg_init (process (transition))) -(allow mslg_init mslg_init_exec (file (read getattr map execute open entrypoint))) -(dontaudit init_30_0 mslg_init (process (noatsecure))) -(allow init_30_0 mslg_init (process (siginh rlimitinh))) -(typetransition init_30_0 mslg_init_exec process mslg_init) -(allow init_30_0 mslgd_exec (file (read getattr map execute open))) -(allow init_30_0 mslgd (process (transition))) -(allow mslgd mslgd_exec (file (read getattr map execute open entrypoint))) -(dontaudit init_30_0 mslgd (process (noatsecure))) -(allow init_30_0 mslgd (process (siginh rlimitinh))) -(typetransition init_30_0 mslgd_exec process mslgd) -(allow mslgd su_30_0 (unix_stream_socket (accept setopt))) -(allow mslgd mslg_rootfs_file (file (ioctl read write create getattr setattr lock append map unlink link rename open watch))) -(allow mslgd mslg_rootfs_file (fifo_file (read write create unlink open))) -(allow mslgd mslg_rootfs_file (dir (read write create getattr setattr rename open watch add_name remove_name search rmdir))) -(allow mslgd mslg_rootfs_file (lnk_file (read create getattr setattr link))) -(allow mslgd mslgd (netlink_kobject_uevent_socket (create getattr bind setopt))) -(allow mslgd devpts_30_0 (chr_file (ioctl read write getattr setattr append open))) -(allow mslgd devpts_30_0 (dir (read open))) -(allow mslgd proc_filesystems_30_0 (file (read getattr open))) -(allow mslgd proc_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslgd sysfs_30_0 (dir (read))) -(allow mslgd system_app_30_0 (process (signull))) -(allow mslgd untrusted_app_30_0 (process (signull))) -(allow mslgd priv_app_30_0 (process (signull))) -(allow mslgd mslgd (netlink_audit_socket (read write create nlmsg_relay))) -(allow mslgd mslgd (key (write search))) -(allow mslgd kernel_30_0 (key (link))) -(allow mslgd kernel_30_0 (dir (search))) -(allow mslgd kernel_30_0 (file (read open))) -(allow mslgd hal_graphics_composer_default (process (signull))) -(allow mslgd init_30_0 (dir (search))) -(allow mslgd init_30_0 (file (read getattr open))) -(allow mslgd init_30_0 (lnk_file (read))) -(allow mslgd fuse_30_0 (dir (ioctl read write create getattr setattr lock rename open watch watch_reads add_name remove_name reparent search rmdir))) -(allow mslgd fuse_30_0 (file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslgd mslg_rootfs_file (sock_file (write create getattr setattr unlink rename))) -(allow mslgd mslgd (capability (chown fowner fsetid kill setgid setuid setpcap sys_chroot sys_admin sys_nice sys_resource audit_write))) -(allow mslgd mslgd (netlink_route_socket (read write create getattr bind setopt nlmsg_read nlmsg_readpriv))) -(allow mslgd mslgd (tcp_socket (read write create bind connect listen accept setopt name_connect))) -(allow mslgd mslgd (tcp_socket (ioctl shutdown))) -(allow mslgd port_30_0 (tcp_socket (name_bind name_connect))) -(allow mslgd node_30_0 (tcp_socket (node_bind))) -(allow mslgd mslgd (udp_socket (read write create getattr connect setopt))) -(allow mslgd untrusted_app_30 (unix_dgram_socket (sendto))) -(allow mslgd tmpfs_30_0 (chr_file (ioctl read write getattr setattr open))) -(allow mslgd tmpfs_30_0 (dir (ioctl read write create getattr setattr lock rename open watch watch_reads add_name remove_name reparent search rmdir))) -(allow mslgd tmpfs_30_0 (file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslgd tmpfs_30_0 (lnk_file (read))) -(allow mslgd mslgd_exec (file (ioctl read getattr lock map execute open execute_no_trans entrypoint))) -(allow mslgd mslgd_exec (dir (read getattr add_name remove_name search))) -(allow mslgd mslgd_exec (lnk_file (read getattr))) -(allow mslgd mslgd (process (execmem))) -(allow mslgd mslg_app (unix_dgram_socket (sendto))) -(allow mslgd mslgd (process (setexec execmem))) -(allow mslgd kernel_30_0 (file (getattr))) -(allow mslgd kernel_30_0 (lnk_file (read))) -(allow mslgd platform_app_30_0 (process (signull))) -(allow mslgd su_30_0 (fd (use))) -(allow mslgd su_30_0 (process (transition noatsecure siginh rlimitinh))) -(allow mslgd vendor_init_30_0 (dir (search))) -(allow mslgd vendor_init_30_0 (file (read open))) -(allow mslgd vendor_toolbox_exec_30_0 (file (execute_no_trans))) -(allow mslgd vendor_file_30_0 (file (read))) -(allow mslgd block_device_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslgd loop_device_30_0 (blk_file (ioctl read write getattr lock append map open watch watch_reads))) -(allowx mslgd loop_device_30_0 (ioctl blk_file (0x1261))) -(allowx mslgd loop_device_30_0 (ioctl blk_file (((range 0x4c00 0x4c01)) ((range 0x4c04 0x4c05)) ((range 0x4c08 0x4c0a))))) -(allow kernel_30_0 mslgd (fd (use))) -(allow mslgd vendor_mslg_prop (file (read getattr map open))) -(allow mslgd property_socket_30_0 (sock_file (write))) -(allow mslgd init_30_0 (unix_stream_socket (connectto))) -(allow mslgd vendor_mslg_prop (property_service (set))) -(allow mslgd vendor_mslg_prop (file (read getattr map open))) -(allow kernel_30_0 vendor_file_30_0 (file (read))) -(allow mslgd loop_control_device_30_0 (chr_file (ioctl read write open))) -(allow vendor_init_30_0 vendor_mslg_prop (property_service (set))) -(allow vendor_init_30_0 vendor_mslg_prop (file (read getattr map open))) -(allow vendor_init_30_0 vendor_mslg_prop (file (read getattr map open))) -(allow mslgd hwservicemanager_prop_30_0 (file (read getattr map open))) -(allow hwservicemanager_30_0 mslgd (binder (transfer))) -(allow mslgd hwservicemanager_30_0 (binder (call))) -(allow mslgd hal_mslgkeeper_default (binder (call))) -(allow mslgd hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow platform_app_30_0 hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow platform_app_30_0 hal_mslgkeeper_default (binder (call transfer))) -(allow platform_app_30_0 mslg_rootfs_file (dir (ioctl read getattr lock open watch watch_reads search))) -(allow platform_app_30_0 mslg_rootfs_file (file (ioctl read getattr lock map open watch watch_reads))) -(allow platform_app_30_0 mslg_rootfs_file (sock_file (write))) -(allow system_app_30_0 hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow system_app_30_0 hal_mslgkeeper_default (binder (call))) -(allow system_server_30_0 hal_mslgkeeper_default (binder (call))) -(allow system_server_30_0 hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow untrusted_app_30 mslg_rootfs_file (dir (ioctl read write getattr lock open watch watch_reads add_name remove_name search))) -(allow untrusted_app_30 mslgd (unix_dgram_socket (sendto))) -(allow untrusted_app_30 mslgd (unix_stream_socket (connectto))) -(allow untrusted_app_30 zygote_30_0 (unix_stream_socket (getopt))) -(allow untrusted_app_30 procfs_memory (file (open))) -(allow untrusted_app_30 mslg_rootfs_file (file (ioctl read write getattr lock append map open watch watch_reads))) -(allow untrusted_app_30 mslg_rootfs_file (sock_file (write create getattr setattr unlink rename))) - -新增行 -(typetransition mslg_app mslg_app anon_inode "[userfaultfd]" mslg_app_userfaultfd) - -新增行 -(typeattribute base_typeattr_729_30_0) -(typeattributeset base_typeattr_729_30_0 ((and (domain) ((not (crash_dump_30_0 runas_app_30_0 simpleperf_30_0 mslg_app)))))) -(typeattribute base_typeattr_728_30_0) -(typeattributeset base_typeattr_728_30_0 ((and (appdomain) ((not (runas_app_30_0 shell_30_0 simpleperf_30_0 mslg_app)))))) -(typeattribute base_typeattr_727_30_0) -(typeattributeset base_typeattr_727_30_0 ((and (mslg_app) ((not (runas_app_30_0 shell_30_0 simpleperf_30_0)))))) -(typeattribute base_typeattr_726_30_0) -(typeattributeset base_typeattr_726_30_0 ((not (mslg_app_userfaultfd)))) -(typeattribute base_typeattr_725_30_0) -(typeattributeset base_typeattr_725_30_0 ((and (domain) ((not (mslg_app)))))) -(typeattribute base_typeattr_724_30_0) -(typeattributeset base_typeattr_724_30_0 ((and (domain) ((not (hal_mslgkeeper_server)))))) -``` ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 然后用lpmake打包成super img @@ -568,7 +203,7 @@ dsu包的做法就是直接把mi_ext、system、system_ext、product分区的raw ## 关闭avb验证 可选,修改fstab.qcom去除avb代码 vendor\etc\fstab.qcom -把system那一行的flags从`,avb_keys=`开始把后面的内容全删除 +把system那一行的flags从`,avb_keys=`开始把后面的内容全删除,所有`,avb=vbmeta_system`删除,所有`,avb=vbmeta`删除, 可选,vendor_boot修改header在最后增加设置宽容的代码,如果要打包pc版wps就设置一下宽容,如果不需要改vendor就算了 `androidboot.selinux=permissive` From d49c7d16995bd24e5773d5e5f5ee218d3bd4a50f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Fri, 22 Sep 2023 21:26:52 +0800 Subject: [PATCH 08/27] =?UTF-8?q?=E6=8D=A2=E5=9B=9E5pro=E5=8E=9F=E7=89=88?= =?UTF-8?q?=E6=89=8B=E5=86=99=E7=AC=94=E5=92=8C=E9=94=AE=E7=9B=98=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 据说6max的这个app会导致有线鼠标失灵 --- XIAOMIPAD5PRO.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 28a45ce..cd324fa 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -34,6 +34,8 @@ product\app 保留5pro小爱翻译 AiAsstVision(开发板内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) 删除无法使用的6max人脸识别解锁 MiuiBiometric 保留5pro人脸识别解锁 MiuiBiometric3373 +删除6max的手写笔和键盘设置 MiuiInputSettings_M80 据说会导致有线鼠标操作失灵 +保留5pro的手写笔和键盘设置 MiuiInputSettings 按需精简 快应用服务引擎 From 22820342a0005cf01ce705053aeb2af9e74c72b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Mon, 9 Oct 2023 22:36:27 +0800 Subject: [PATCH 09/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=BA=95=E5=8C=85?= =?UTF-8?q?=E5=88=B0miui=5FELISH=5FV14.0.5.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充需替换MiuiInputSettingsOverlay.apk 修改system_ext\etc\build.prop,作用未知 添加常见开机异常是因为selinux错误的说明 删除关于super.img的部分描述,因为我发现raw格式的super.img也能用新版fastboot工具线刷 --- XIAOMIPAD5PRO.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index cd324fa..da2a59b 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6 MAX MIUI 14记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.6.0 +基于miui_ELISH_V14.0.5.0,移植文件来源于miui_YUDI_V14.0.6.0 由于是同一个安卓版本同一个MIUI大版本移植,所以需要修改的内容不多 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 @@ -36,6 +36,7 @@ product\app 保留5pro人脸识别解锁 MiuiBiometric3373 删除6max的手写笔和键盘设置 MiuiInputSettings_M80 据说会导致有线鼠标操作失灵 保留5pro的手写笔和键盘设置 MiuiInputSettings +overlay同上需要替换 product\overlay\MiuiInputSettingsOverlay.apk 按需精简 快应用服务引擎 @@ -128,7 +129,12 @@ system\system\build.prop ``` ro.product.mod_device=elish ``` -## system_ext分区无需修改,直接照搬6max +## system_ext分区修改,整体上照搬6max,但要注意以下部分 +build.prop修改,作用未知 +system_ext\etc\build.prop +``` +persist.vendor.dpm.feature=11 +``` ## vendor分区修改,如果选择不集成pc版wps无需修改,直接用5pro的 如果要集成pc版wps则注意以下部分 6max新增pc版wps相关文件,只要对比6pro(liuqin)的整个vendor分区,看孤立文件,一眼就能看出这些文件跟pc版wps有关, @@ -161,6 +167,7 @@ sys.mslg.available=1 ``` 接下来是补充selinux的上下文权限, 补个锤子 +selinux这玩意如果有问题就会导致开机重启、直接进入recovery或者fastboot界面,所以我是真的不推荐动vendor搞wps 我看鲁迅的霸权、曾小理的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,mslgservice直接不要了那行(修改方法感谢水龙指导) 修改mslgservice.rc文件 @@ -196,7 +203,7 @@ service mslgrootfs /vendor/bin/start-rootfs.sh ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 然后用lpmake打包成super img -这里的目标是打包成sparse格式的super.img(线刷必须要sparse格式,卡刷不一定取决于刷机脚本怎么写),vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里用卡刷脚本写入到super分区, +vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里用卡刷脚本写入到super分区, 常见的情况也有使用zstd工具把super压缩成zst格式(打包zst需要raw格式的super.img),在线刷、卡刷的时候再解压,这种用压缩解压的时间来节省刷机包占用空间大小的做法, 这种的情况就需要专门的脚本和工具了 由于无wps版由于不需要修改odm、vendor分区,所以理论上其实你可以直接用fastbootd模式刷入mi_ext、system、system_ext、product分区 From a71a3df5c4061e1f1fa4097529a05ccb43d19ce2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sun, 10 Dec 2023 20:26:34 +0800 Subject: [PATCH 10/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=BE=8E=E6=B9=83OS1.0?= =?UTF-8?q?.2.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 166 +++++++++++++---------------------------------- 1 file changed, 45 insertions(+), 121 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index da2a59b..871ec59 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,18 +1,12 @@ -# 小米平板5 PRO 移植小米平板6 MAX MIUI 14记录 +# 小米平板5 PRO 移植小米平板6 MAX HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.5.0,移植文件来源于miui_YUDI_V14.0.6.0 -由于是同一个安卓版本同一个MIUI大版本移植,所以需要修改的内容不多 +基于miui_ELISH_V14.0.5.0,移植文件来源于YUDI_OS1.0.2.0 +其中由于我自己开原包,系统设置会无限闪退,目测是平板专区等6max专属功能检测到5Pro的型号不支持,澎湃早期版本有bug小米没写完对老设备的兼容所导致的,可能需要修改apk,没时间,没脑子,搞不定,一旦要改系统apk我就搞不定miui的签名,就必须同时改核心破解 +所以system、system_ext部分直接抄的[柚坛移植包](https://www.uotan.cn/resources/hyperos_1-0-2_for_-5pro.507/)感谢暮间雾大佬 +这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 -这里有两个选择, -第一个选择是很多有的没的(像是控制中心工作台开关、设置里的平板专区、平行世界拖拽点、会议工具箱等等)是6max专属新功能,有机型验证, -如果需要解锁这些功能,要么用模块hook或者apktool反编译对应文件改判断代码,要么就全局修改机器代号,把所有代号全改成yudi, -但是相对来说,因为硬件不匹配,改代号一般都会有bug,所以如果要追求稳定,代号最好就还是用elish,用户要改代号可以用模块改。 -第二个选择就是是否集成pc版wps这一套东西, -这个玩意2.44GB,目前小米是都放在vendor分区, -因为有一个vendor服务启动项的mslgservice.rc文件,每次开机挂载镜像,解压rootfs,把linux容器放到/data/vendor/mslg/rootfs -服务启动优先级更高,所以不能普通的用面具模块代替,除非你重写一个shell脚本开机执行代替mslgservice.rc服务,而且据说不能直接用面具的losetup得用系统的,面具的权限太高了运行不了,就很麻烦。 -如果就这样直接集成,就需要扩容机器的super分区才能刷得进去,或者你就干脆做成dsu系统包,直接dsu侧载就不管包多大也不需要扩容。 +由于修改了系统文件,所以avb验证肯定是要关的,而想保证各种app兼容性,所以我选择保持selinux enforce,既不集成pc版wps 如果不集成,就不需要改vendor分区,随便在product分区里精简一点东西,就可以确保刷进机器那8.5G的super分区。 ## mi_ext分区修改,整体上照搬6max,但要注意以下部分 build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 @@ -25,18 +19,20 @@ ro.product.mod_device=elish ## product分区修改,整体上照搬6max,但要注意以下部分 pc版wps相关文件 访问linux容器的rdp后端MSLgRdp和交互操作的前端WpsLauncher -如果不集成pc版wps就可以删除 +不集成pc版wps可以直接删除 product\app\MSLgRdp product\data-app\WpsLauncher product\app 删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的6max小爱翻译 AiAsstVision -保留5pro小爱翻译 AiAsstVision(开发板内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) -删除无法使用的6max人脸识别解锁 MiuiBiometric +保留5pro小爱翻译 AiAsstVision(MIUI 14内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) +(目前12月小米在应用商店全平台推送了4.7.0更新,这个版本据说在开发版上可以启动字幕识别在线模型兼容算力不足老设备,但是我测试的在这个版本澎湃上还是离线模型闪退,所以不更新) +删除无法使用的6max人脸识别解锁 Biometric 保留5pro人脸识别解锁 MiuiBiometric3373 -删除6max的手写笔和键盘设置 MiuiInputSettings_M80 据说会导致有线鼠标操作失灵 -保留5pro的手写笔和键盘设置 MiuiInputSettings -overlay同上需要替换 product\overlay\MiuiInputSettingsOverlay.apk +我选择删除两个oat文件 +product\app\Biometric\oat\arm64\Biometric.odex +product\app\Biometric\oat\arm64\Biometric.vdex +然后直接把MiuiBiometric3373.apk改名成Biometric.apk替换 按需精简 快应用服务引擎 @@ -52,7 +48,7 @@ product\data-app\ 小米创作 product\data-app\Creation 小米商城 -product\data-app\MiShopPad +product\data-app\MiShop 米兔儿童 product\data-app\Mitukid 多看阅读 @@ -76,130 +72,58 @@ product\etc\device_features\yudi.xml 修改屏幕亮度配置文件 product\etc\displayconfig\display_id_4630946932993367170.xml -目前6max只有一家屏幕供应商,后续更新可能会随着增加屏幕类型,而多出其他id的文件, -而这个东西的文件名是在其他地方写死的,只能用display_id_4630946932993367170.xml,否则会出现`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机 +目前6max只有一家屏幕供应商,由于没有再之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 5pro屏幕的xml文件为: product\etc\displayconfig\display_id_19260527152667265.xml product\etc\displayconfig\display_id_4630946481717202305.xml product\etc\displayconfig\display_id_4630946545580055169.xml -这三个文件的内容是完全一样的,所以只要用任意一个里面的内容替换掉display_id_4630946932993367170.xml屏幕亮度调节就正常了 -屏幕亮度曲线,三个点,随意调一调,就加个400nits中间值好了,反正决定亮度的值是在MiuiFrameworkResOverlay.apk里,value是直接抄yudi,最大最小值也是有其他地方决定的,改的太离谱也会出现上面那个报错 -``` - - 0.001709819 - 2.0 - - - 0.49975574 - 400.0 - - - 1.0 - 500 - -``` +这三个文件的内容是完全一样的,所以我选择覆盖掉display_id_4630946932993367170.xml,并且保留这四个xml文件,屏幕亮度调节就正常了 +这里需要注意Overlay里面的AospFrameworkResOverlay.apk要换成5Pro的,否则会遇到自动亮度导致系统软重启的问题 +product\overlay\AospFrameworkResOverlay.apk +本来按理说是要反编译这个apk,对比6max的澎湃os与miui14改动,修改到5Pro的文件上的,能力有限,不想努力了 + build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/missi:13/TKQ1.221114.001/V14.0.6.0.TMHCNXM:user/release-keys -ro.product.mod_device=elish +ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.230804.001/V816.0.2.0.UMHCNXM:user/release-keys ro.sf.lcd_density=360 persist.miui.density_v2=360 persist.miui.extm.enable=0 -``` -默认主题谷歌支付无分层图标功能,平板6max好像直接就没这个文件夹,从6pro的包里提取一个,改好包名复制过来 -product\media\theme\miui_mod_icons\dynamic\com.google.android.apps.nbu +注释掉这行,因为cust分区格式不是erofs +#ro.miui.cust_erofs=1 +``` overlay保留5pro本身设备的apk -product\overlay\DevicesAndroidOverlay.apk -product\overlay\DevicesOverlay.apk product\overlay\MiuiBiometricResOverlay.apk product\overlay\MiuiFrameworkResOverlay.apk -保留5pro相机,删除6max相机,否则会提示机型不匹配无法使用然后退出, -我个人是建议使用sevtinge修改相机4.7.230127.0版本,没有机型限制而且解锁更多功能 -product\priv-app\MiuiCamera -## system分区修改,整体上照搬6max,但要注意以下部分 -build.prop修改机型代号 -system\system\build.prop -``` -ro.product.mod_device=elish -``` -## system_ext分区修改,整体上照搬6max,但要注意以下部分 -build.prop修改,作用未知 -system_ext\etc\build.prop -``` -persist.vendor.dpm.feature=11 -``` -## vendor分区修改,如果选择不集成pc版wps无需修改,直接用5pro的 -如果要集成pc版wps则注意以下部分 -6max新增pc版wps相关文件,只要对比6pro(liuqin)的整个vendor分区,看孤立文件,一眼就能看出这些文件跟pc版wps有关, -其中mslgoptimg、mslgusrimg两个1G以上大文件,是导致super分区需要扩容的原因, -所以如果能以某种方法比如这里留一个到userdata的链接,然后把实际文件丢进userdata, -或者直接改sh脚本把位置就写到其他地方,就不需要占用vendor、super分区了 -另外说一句,由于有人测试了,这东西类原生也可以用,所以理论上用这个东西不一定非要移植6max的rom,如果你能把这些相关文件还有上面product分区里面的两个app放进其他安卓系统的对应位置,其他安卓系统搞不好也能运行 -``` -/vendor/bin/hw/mslgservice -/vendor/bin/losetup.sh -/vendor/bin/start-rootfs.sh -/vendor/bin/tar-rootfs.sh +删除6max相机,否则会提示机型不匹配无法使用然后退出, +目前澎湃只能用5.0以上版本的相机,老apk无法使用,同样会提示机型不匹配无法使用然后退出, +我所以只能用sevtinge修改相机5.0.230706.0版本,没有机型限制而且解锁更多功能 +缺点就是ui不匹配,横屏影像会错位,但由于没的其他选择,只能用谷歌相机、骁龙相机这种第三方相机 +product\priv-app\MiuiCamera +并且删除两个oat文件 +## system分区不修改,直接照搬暮间雾大佬的raw image,经对比以下部分为修改文件 +system\system\framework\services.jar +反编译,大致修改为核心破解,但是具体修改内容详询暮间雾大佬 +## system_ext分区不修改,直接照搬暮间雾大佬的raw image,经对比以下部分为修改文件 +system_ext\priv-app\Settings\Settings.apk +反编译,大致修改为找到平板相关新功能的代码,修改平板6系列机型代号为平板5系列机型代号,但是具体修改内容详询暮间雾大佬 -/vendor/etc/assets/md5.txt -/vendor/etc/assets/mslgoptimg -/vendor/etc/assets/mslgusrimg -/vendor/etc/assets/rootfs-23.09.08.tgz - -/vendor/etc/init/mslgservice.rc - -/vendor/lib/libext2_uuid.so - -/vendor/lib64/libext2_uuid.so -/vendor/lib64/vendor.xiaomi.mslg.keeper@1.0.so -``` +为什么system、system_ext要照搬暮间雾大佬的raw image呢?因为系统设置闪退,用他的这两个镜像就没有问题,而我自己拆原包替换里面两个文件之后仍然卡第二屏开机动画,目测为拆包打包软件不兼容,二次拆包容易损坏文件系统 +## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 +修复millet ``` -ro.vendor.mslg.rootfs.version=rootfs-23.09.08.tgz -sys.mslg.available=1 -``` -接下来是补充selinux的上下文权限, -补个锤子 -selinux这玩意如果有问题就会导致开机重启、直接进入recovery或者fastboot界面,所以我是真的不推荐动vendor搞wps -我看鲁迅的霸权、曾小理的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,mslgservice直接不要了那行(修改方法感谢水龙指导) - -修改mslgservice.rc文件 -vendor\etc\init\mslgservice.rc -``` -service mslgservice /vendor/bin/hw/mslgservice - class core - user root - disabled - oneshot - -service tar_rootfs /vendor/bin/tar-rootfs.sh ${vendor.mslgrootfs.version} - class core - user root - seclabel u:r:shell:s0 - disabled - oneshot - -service losetup_rootfs /vendor/bin/losetup.sh - class core - user root - seclabel u:r:shell:s0 - disabled - oneshot - -service mslgrootfs /vendor/bin/start-rootfs.sh - class core - user root - seclabel u:r:shell:s0 - disabled - oneshot +#add millet netlink property +ro.millet.netlink=29 ``` +咦,这段代码我是不是可以加到其他分区的build.prop里,vendor分区就彻底不用改了 +可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 然后用lpmake打包成super img @@ -218,7 +142,7 @@ vendor\etc\fstab.qcom `androidboot.selinux=permissive` 修改vbmeta.img、vbmeta_system.img,关闭avb验证,这玩意得用十六进制编辑器或者打包工具修改, -我看米欧是修改的十六进制0000007B这个地址00改成02 +我看米欧是修改的十六进制0000007B这个地址00改成02,这个改法跟下面两条命令是同样的效果 另一个办法,用户刷入vbmeta、vbmeta_system时使用命令关闭avb验证或者在twrp中直接用选项关闭 ```bash fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img From 1d4b75e9f56c4b402be89e5329a9024b4b1797c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sun, 10 Dec 2023 20:39:23 +0800 Subject: [PATCH 11/27] Update XIAOMIPAD5PRO.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修正错别字, 调整product Overlay apk描述, 添加平板缺失部分手机app --- XIAOMIPAD5PRO.md | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 871ec59..a28c94e 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -6,7 +6,7 @@ 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 -由于修改了系统文件,所以avb验证肯定是要关的,而想保证各种app兼容性,所以我选择保持selinux enforce,既不集成pc版wps +由于修改了系统文件,所以avb验证肯定是要关的,而想保证各种app兼容性,所以我选择保持selinux enforce,即不集成pc版wps 如果不集成,就不需要改vendor分区,随便在product分区里精简一点东西,就可以确保刷进机器那8.5G的super分区。 ## mi_ext分区修改,整体上照搬6max,但要注意以下部分 build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 @@ -33,6 +33,8 @@ product\app product\app\Biometric\oat\arm64\Biometric.odex product\app\Biometric\oat\arm64\Biometric.vdex 然后直接把MiuiBiometric3373.apk改名成Biometric.apk替换 +以及保留配套的5pro的overlay资源文件 +product\overlay\MiuiBiometricResOverlay.apk 按需精简 快应用服务引擎 @@ -97,8 +99,9 @@ persist.miui.extm.enable=0 注释掉这行,因为cust分区格式不是erofs #ro.miui.cust_erofs=1 ``` -overlay保留5pro本身设备的apk -product\overlay\MiuiBiometricResOverlay.apk +overlay保留5pro本身设备的apk,但是目前测试下来没有什么太大的影响,可以保留也可以不保留 +product\overlay\DevicesAndroidOverlay.apk +product\overlay\DevicesOverlay.apk product\overlay\MiuiFrameworkResOverlay.apk 删除6max相机,否则会提示机型不匹配无法使用然后退出, @@ -124,6 +127,25 @@ ro.millet.netlink=29 ``` 咦,这段代码我是不是可以加到其他分区的build.prop里,vendor分区就彻底不用改了 可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 +## 可选product分区修改,补全小米平板缺失的工具app +我用的k60手机官方澎湃,所以我这里的app是用的手机版补,按理说是要用mix fold3折叠屏的app更好 +小爱建议 +product\app\XiaoaiRecommendation +小米运动健康 +product\data-app\Health\Health.apk +小米锁屏画报 +product\data-app\MIGalleryLockscreen-MIUI15\MIGalleryLockscreen-MIUI15.apk +指南针 +product\data-app\MIUICompass\MIUICompass.apk +传送门 +product\priv-app\MIUIContentExtension\MIUIContentExtension.apk +添加传送门所需权限 +product\etc\permissions\privapp-permissions-product.xml +``` + + + +``` ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 然后用lpmake打包成super img From a2512dc0f75f55e482b37e222e1c0cf159a6272c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Mon, 11 Dec 2023 21:05:01 +0800 Subject: [PATCH 12/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0overlay=E7=9A=84?= =?UTF-8?q?=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 看了一下,这几个东西还是不用6max的比较好,按理说不能直接复制粘贴,要反编译改apk增加新内容,但是我懒 --- XIAOMIPAD5PRO.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index a28c94e..0d5f828 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -99,9 +99,12 @@ persist.miui.extm.enable=0 注释掉这行,因为cust分区格式不是erofs #ro.miui.cust_erofs=1 ``` -overlay保留5pro本身设备的apk,但是目前测试下来没有什么太大的影响,可以保留也可以不保留 +overlay保留5pro本身设备的apk +DevicesAndroidOverlay主要影响圆角弧率、状态栏高度,aod服务(lcd没有) product\overlay\DevicesAndroidOverlay.apk +DevicesOverlay主要影响导航栏(小白条)布局以及圆角,充电动画 product\overlay\DevicesOverlay.apk +MiuiFrameworkResOverlay主要影响屏幕hbm背光、hbm亮度曲线、以及一些网络制式的属性 product\overlay\MiuiFrameworkResOverlay.apk 删除6max相机,否则会提示机型不匹配无法使用然后退出, @@ -114,7 +117,7 @@ product\priv-app\MiuiCamera system\system\framework\services.jar 反编译,大致修改为核心破解,但是具体修改内容详询暮间雾大佬 ## system_ext分区不修改,直接照搬暮间雾大佬的raw image,经对比以下部分为修改文件 -system_ext\priv-app\Settings\Settings.apk +system_ext\priv-app\Settings\Settings.apk 反编译,大致修改为找到平板相关新功能的代码,修改平板6系列机型代号为平板5系列机型代号,但是具体修改内容详询暮间雾大佬 为什么system、system_ext要照搬暮间雾大佬的raw image呢?因为系统设置闪退,用他的这两个镜像就没有问题,而我自己拆原包替换里面两个文件之后仍然卡第二屏开机动画,目测为拆包打包软件不兼容,二次拆包容易损坏文件系统 From 5b902f331b07b1e9149cdb2d65758d0b55f1bd1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Tue, 12 Dec 2023 22:23:33 +0800 Subject: [PATCH 13/27] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=82=AC=E6=B5=AE?= =?UTF-8?q?=E7=90=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 文件夹路径 --- XIAOMIPAD5PRO.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 0d5f828..449af56 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -132,6 +132,8 @@ ro.millet.netlink=29 可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 ## 可选product分区修改,补全小米平板缺失的工具app 我用的k60手机官方澎湃,所以我这里的app是用的手机版补,按理说是要用mix fold3折叠屏的app更好 +悬浮球 +product\app\MIUITouchAssistant 小爱建议 product\app\XiaoaiRecommendation 小米运动健康 From b2469c4448603e46618f9e6e6e218ec07144e8c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Fri, 15 Dec 2023 23:44:01 +0800 Subject: [PATCH 14/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0millet=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E5=B1=9E=E6=80=A7=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 449af56..e5e976c 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -125,10 +125,13 @@ system_ext\priv-app\Settings\Settings.apk vendor/build.prop加入代码 修复millet ``` +注释掉旧的millet配置 +#persist.sys.millet.cgroup1=true + #add millet netlink property ro.millet.netlink=29 ``` -咦,这段代码我是不是可以加到其他分区的build.prop里,vendor分区就彻底不用改了 +`ro.millet.netlink`我看了dagu是加到product分区的build.prop里,但是6max的是在vendor里,所以在这里提一句 可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 ## 可选product分区修改,补全小米平板缺失的工具app 我用的k60手机官方澎湃,所以我这里的app是用的手机版补,按理说是要用mix fold3折叠屏的app更好 From 6cd7fc03870184db6dc47b435e023970d7ef26b3 Mon Sep 17 00:00:00 2001 From: ymdzq <233900743@qq.com> Date: Sat, 16 Dec 2023 16:31:15 +0800 Subject: [PATCH 15/27] =?UTF-8?q?=E6=8C=89=E7=85=A7=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E9=87=8D=E6=96=B0=E5=BB=BA=E7=AB=8B=E5=88=86=E6=94=AF=20?= =?UTF-8?q?=E4=BB=85=E4=BF=9D=E7=95=99=E5=B9=B3=E6=9D=BF=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- REDMI10XPRO.md | 265 ------------------------------------------------- 1 file changed, 265 deletions(-) delete mode 100644 REDMI10XPRO.md diff --git a/REDMI10XPRO.md b/REDMI10XPRO.md deleted file mode 100644 index 15a2175..0000000 --- a/REDMI10XPRO.md +++ /dev/null @@ -1,265 +0,0 @@ -# 红米 10X PRO 移植MIUI 14记录 -资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_BOMB_V13.0.7.0,移植文件来源于miui_CEZANNE_V14.0.5.0,卡刷包解包就行了, -思路就是对比miui_CEZANNE_V13.0.5.0与miui_CEZANNE_V14.0.5.0,取出变更了的部分,未变化的文件仍然保留10x原本的文件, -由于project treble这个东西,厂商把大部分机器直接硬件相关的文件放进了单独的vendor分区,使得product和system分区在不同机器上有了很大程度的通用性, -再加上MIUI现在很多资源都是集成在一个文件里,通过检测机型代码来切换功能,移植就很方便了 -同处理器同系统版本机型非常相近,但还是有需要修改的部分 -本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 - -## product分区修改,整体上照搬k30u,但要注意以下部分 - -保留10x特有刘海 -product\app\NotchOverlay\NotchOverlay.apk - -增加游戏工具箱自动连招开关、动态分区列表和记录分区列表,其中第二部分记录分区为miui14新增,由于内核没有实际升级,所以这段感觉上无效 -product\etc\device_features\bomb.xml -``` - - true - - /system - /product - /vendor - - - rescue - oops - minidump - rawdump - crash_history - expdb - -``` -build.prop修改编译日期和指纹、版本号 -product\etc\build.prop -``` -ro.product.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.product.build.date.utc=1688559391 -ro.product.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.product.build.version.incremental=V14.0.5.0.SJNCNXM -``` -overlay升级以下apk -product\overlay\AospFrameworkResOverlay.apk -product\overlay\MccMncOverlay.apk - -overlay保留10x本身设备的apk -product\overlay\DevicesAndroidOverlay.apk -product\overlay\DevicesOverlay.apk -product\overlay\MiuiBiometricResOverlay.apk -product\overlay\MiuiFrameworkResOverlay.apk - -## system分区修改,整体上照搬k30u,但要注意以下部分 - -system\system\app -去除k30u指纹识别 -GFDelmarSetting -保留10x指纹识别 -goodix_sz - -删除data-app推广应用(番茄免费小说、抖音短视频) -system\system\data-app\com.dragon.read_104 -system\system\data-app\com.ss.android.ugc.aweme_15 - -miui14新增misys服务 -system\system\etc\permissions\vendor.xiaomi.hardware.misys-V4.0-java-permission.xml - -保留10x震动设备相关文件 -system\system\etc\excluded-input-devices.xml - -新增MiSansC字体,照搬note12pro -system\system\etc\fonts.xml -``` - - MiSansC_3.005.ttf - - - - - - MiSansC_3.005.ttf - - - - - - MiSansC_3.005.ttf - - - - - - MiSansC_3.005.ttf - - - - -``` -system\system\fonts\MiSansC_3.005.ttf - -删除system分区里k30u马达、震动服务相关文件 -system\system\framework\vendor.xiaomi.hardware.motor-V1.0-java.jar -system\system\lib\vendor.xiaomi.hardware.motor@1.0.so -system\system\lib\vendor.xiaomi.hardware.vibratorfeature@1.0.so -system\system\lib64\vendor.xiaomi.hardware.motor@1.0.so -system\system\lib64\vendor.xiaomi.hardware.vibratorfeature@1.0.so - -miui14新增misys服务相关文件 -system\system\framework\vendor.xiaomi.hardware.misys-V4.0-java.jar -system\system\lib\vendor.xiaomi.hardware.misys@4.0.so -system\system\lib64\vendor.xiaomi.hardware.misys@4.0.so - -保留10x人脸识别相关lib,MiuiBiometric有通过链接使用到这三个lib -system\system\lib64\libjni_faceunlock.so -system\system\lib64\libjni_stfaceunlock_api.so -system\system\lib64\libstfaceunlockocl.so - -MIUI14默认主题、开机动画、壁纸、图标、资源文件,照搬k30u -system\system\media - -修复默认主题小米视频无分层图标功能,包名com.miui.videoplayer,这里文件夹名莫名少了一个r -system\system\media\theme\miui_mod_icons\dynamic\com.miui.videoplaye -改成 -system\system\media\theme\miui_mod_icons\dynamic\com.miui.videoplayer - -保留10x本身的收音机apk -system\system\system_ext\app\FM - -build.prop修改编译日期和指纹、版本号 -system\system\system_ext\etc\build.prop -``` -ro.system_ext.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.system_ext.build.date.utc=1688559391 -ro.system_ext.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.system_ext.build.version.incremental=V14.0.5.0.SJNCNXM -``` -保留10x本身的收音机lib文件 -system\system\system_ext\lib64\libfmjni.so - -键位文件由于还是安卓12整体没变 -system\system\usr\keylayout -去除k30u键位文件 -ACCDET_cen.kl -保留10x键位文件 -ACCDET.kl - -build.prop修改编译日期和指纹、版本号 -system\system\build.prop -``` -ro.system.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.system.build.date.utc=1688559391 -ro.system.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.system.build.version.incremental=V14.0.5.0.SJNCNXM -ro.build.version.incremental=V14.0.5.0.SJNCNXM -ro.build.version.security_patch=2023-07-01 -ro.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.build.date.utc=1688559391 -ro.build.description=bomb-user 12 SP1A.210812.016 V14.0.5.0.SJNCNXM release-keys -ro.miui.ui.version.code=14 -ro.miui.ui.version.name=V140 -ro.vendor.build.software.version=Android12_140 -ro.miui.version.code_time=1688486400 -``` -## vendor分区修改,整体上保留10x,但要注意以下部分 - -miui14新增misys服务相关文件 -vendor\bin\hw\vendor.xiaomi.hardware.misys@4.0-service -vendor\etc\init\vendor.xiaomi.hardware.misys@4.0-service.rc - -修改权限设置文件,增加misys服务 -以及之前有提到过的miui14新增的记录分区相关权限,由于内核没有实际升级,所以这段感觉上无效 -vendor\etc\selinux\vendor_file_contexts -``` -/(vendor|system/vendor)/bin/hw/vendor.xiaomi.hardware.misys@4.0-service u:object_r:hal_misys_default_exec:s0 -/dev/block/by-name/cust u:object_r:cust_block_device:s0 -/dev/block/by-name/oops u:object_r:oops_block_device:s0 -/dev/block/by-name/rescue u:object_r:rescue_block_device:s0 -/dev/block/by-name/logdump u:object_r:vendor_logdump_partition:s0 -/dev/block/by-name/minidump u:object_r:minidump_partition:s0 -``` -修改se策略文件, -添加内容第一段大部分为miui13本身就有的,在最后两行中间追加了内容, -第二段和第三段是新增内容, -主要是增加之前有提到过的miui14新增的记录分区相关,由于内核没有实际升级,所以这段感觉上无效 -vendor\etc\selinux\vendor_sepolicy.cil -``` -cam_cal_device ebr_device expdb_device fat_device logo_device loop-control_device mbr_device met_device misc_device misc2_device mtfreqhopping_device mtgpio_device mtk_kpd_device network_device nvram_device pmt_device preloader_device pro_info_device protect_f_device protect_s_device psaux_device ptyp_device recovery_device sec_ro_device seccfg_device tee_part_device snapshot_device tgt_device touch_device tpd_em_log_device ttyp_device uboot_device uibc_device usrdata_device zram0_device hwzram0_device RT_Monitor_device kick_powerkey_device agps_device mnld_device geo_device mdlog_device md32_device scp_device adsp_device audio_scp_device sspm_device etb_device MT_pmic_adc_cali_device mtk-adc-cali_device MT_pmic_cali_device otp_device otp_part_block_device qemu_pipe_device icusb_device nlop_device irtx_device pmic_ftm_device charger_ftm_device shf_device keyblock_device offloadservice_device ttyACM_device hrm_device lens_device nvdata_device mcf_ota_block_device nvcfg_device expdb_block_device misc2_block_device logo_block_device para_block_device tee_block_device seccfg_block_device secro_block_device preloader_block_device lk_block_device protect1_block_device protect2_block_device keystore_block_device oemkeystore_block_device sec1_block_device md1img_block_device md1dsp_block_device md1arm7_block_device md3img_block_device mmcblk1_block_device mmcblk1p1_block_device bootdevice_block_device odm_block_device oem_block_device vendor_block_device dtbo_block_device loader_ext_block_device spm_device persist_block_device md_block_device spmfw_block_device mcupmfw_block_device scp_block_device sspm_block_device dsp_block_device ppl_block_device nvcfg_block_device ancservice_device mbim_device audio_ipi_device cam_vpu_block_device boot_para_block_device mtk_dfrc_device vbmeta_block_device alarm_device mdp_device mrdump_device kb_block_device dkb_block_device sar_device mtk_radio_device dpm_block_device audio_dsp_block_device gz_block_device pi_img_device vpud_device vcu_device mml_pq_device hwmsensor_device msensor_device gsensor_device als_ps_device gyroscope_device barometer_device humidity_device biometric_device sensorlist_device hf_manager_device m_batch_misc_device m_als_misc_device m_ps_misc_device m_baro_misc_device m_hmdy_misc_device m_acc_misc_device m_mag_misc_device m_gyro_misc_device m_act_misc_device m_pedo_misc_device m_situ_misc_device m_step_c_misc_device m_fusion_misc_device m_bio_misc_device dri_device postinstall_block_device ccci_wifi_proxy_device teei_fp_device teei_client_device teei_config_device utr_tui_device teei_vfs_device teei_rpmb_device ut_keymaster_device nwkopt_device tx_device gdix_mt_wrapper_device gdix_thp_device mddp_device tkcore_admin_device tkcore_block_device mobicore_admin_device mobicore_user_device mobicore_tui_device rpmb_block_device rpmb_device fingerprint_device widevine_drv_device ccci_aud_device ccci_ccb_device ccci_mdmonitor_device hall_device motor_device ccci_vts_device sound_device oops_block_device rescue_block_device cust_block_device minidump_partition vendor_logdump_partition touchfeature_device aed_device ccci_mdl_device vendor_fingerprint_device gsort_block_device ffu_partition)) - -(type oops_block_device) -(roletype object_r oops_block_device) -(type rescue_block_device) -(roletype object_r rescue_block_device) -(type cust_block_device) -(roletype object_r cust_block_device) -(type minidump_partition) -(roletype object_r minidump_partition) -(type vendor_logdump_partition) -(roletype object_r vendor_logdump_partition) - -(allow hal_misys_default block_device_31_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow hal_misys_default super_block_device_31_0 (blk_file (ioctl read getattr lock map open watch watch_reads))) -(allow hal_misys_default oops_block_device (blk_file (ioctl read getattr lock map open watch watch_reads))) -(allow hal_misys_default rescue_block_device (blk_file (ioctl read getattr lock map open watch watch_reads))) -(allow hal_misys_default cust_block_device (blk_file (ioctl read getattr lock map open watch watch_reads))) -(allow hal_misys_default expdb_block_device (blk_file (ioctl read getattr lock map open watch watch_reads))) -``` -miui14新增misys服务相关文件 -vendor\etc\vintf\manifest\vendor.xiaomi.hardware.misys@4.0.xml -vendor\lib\hw\vendor.xiaomi.hardware.misys@4.0-impl.so -vendor\lib\vendor.xiaomi.hardware.misys@4.0.so -vendor\lib64\hw\vendor.xiaomi.hardware.misys@4.0-impl.so -vendor\lib64\vendor.xiaomi.hardware.misys@4.0.so - -build.prop修改编译日期和指纹、版本号 -vendor\odm\etc\build.prop -``` -ro.odm.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.odm.build.date.utc=1688559391 -ro.odm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.odm.build.version.incremental=V14.0.5.0.SJNCNXM -``` -build.prop修改编译日期和指纹、版本号 -vendor\odm_dlkm\etc\build.prop -``` -ro.odm_dlkm.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.odm_dlkm.build.date.utc=1688559391 -ro.odm_dlkm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.odm_dlkm.build.version.incremental=V14.0.5.0.SJNCNXM -``` -build.prop修改编译日期和指纹、版本号 -vendor\vendor_dlkm\etc\build.prop -``` -ro.vendor_dlkm.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.vendor_dlkm.build.date.utc=1688559391 -ro.vendor_dlkm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.vendor_dlkm.build.version.incremental=V14.0.5.0.SJNCNXM -``` -build.prop修改编译日期和指纹、版本号 -vendor\build.prop -``` -ro.vendor.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.vendor.build.date.utc=1688559391 -ro.vendor.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.vendor.build.version.incremental=V14.0.5.0.SJNCNXM -``` -## 重新打包system、vendor、product分区 -先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, -使用img2simg工具把raw image转换为sparse image, -使用img2sdat把sparse image转换为dat格式, -使用brotli把dat格式转换为new.dat.br格式, -就可以替换进zip卡刷包里了 -解包打包偷懒就找个安卓工具箱,dna、多幸运之类的,直接一键打包成br - -## 动态分区配置列表 -刷入卡刷包的时候会根据这个文件调整手机里动态分区的实际分布,根据上面打包得到的raw image文件大小,修改文件里对应的rawimg字节大小 -dynamic_partitions_op_list -``` -# Grow partition system from 0 to rawimg字节大小 -resize system rawimg字节大小 -# Grow partition vendor from 0 to rawimg字节大小 -resize vendor rawimg字节大小 -# Grow partition product from 0 to rawimg字节大小 -resize product rawimg字节大小 -``` -## avb验证文件,直接替换成关闭avb的文件 -vbmeta.img From 78d2b8099cd475fc77e9b529680a9e3fdbf52684 Mon Sep 17 00:00:00 2001 From: ymdzq <233900743@qq.com> Date: Sat, 16 Dec 2023 16:37:00 +0800 Subject: [PATCH 16/27] =?UTF-8?q?=E6=8C=89=E7=85=A7=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E9=87=8D=E6=96=B0=E5=BB=BA=E7=AB=8B=E5=88=86=E6=94=AF=20?= =?UTF-8?q?=E4=BB=85=E4=BF=9D=E7=95=99=E6=89=8B=E6=9C=BA=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 548 ----------------------------------------------- 1 file changed, 548 deletions(-) delete mode 100644 XIAOMIPAD5PRO.md diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md deleted file mode 100644 index 4f059d1..0000000 --- a/XIAOMIPAD5PRO.md +++ /dev/null @@ -1,548 +0,0 @@ -# 小米平板5 PRO 移植小米平板6 MAX MIUI 14记录 -资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.23.7.31,移植文件来源于miui_YUDI_V14.0.3.0 -由于是同一个安卓版本同一个MIUI大版本移植,所以需要修改的内容不多 -本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准,先打一个草稿,慢慢更新 - -这里有两个选择, -第一个选择是很多有的没的(像是控制中心工作台开关、设置里的平板专区、平行世界拖拽点、会议工具箱等等)是6max专属新功能,有机型验证, -如果需要解锁这些功能,要么用模块hook或者apktool反编译对应文件改判断代码,要么就全局修改机器代号,把所有代号全改成yudi, -但是相对来说,因为硬件不匹配,改代号一般都会有bug,所以如果要追求稳定,代号最好就还是用elish,用户要改代号可以用模块改。 -第二个选择就是是否集成pc版wps这一套东西, -这个玩意2.44GB,目前小米是都放在vendor分区, -因为有一个vendor服务启动项的mslgservice.rc文件,每次开机挂载镜像,解压rootfs,把linux容器放到/data/vendor/mslg/rootfs -服务启动优先级更高,所以不能普通的用面具模块代替,除非你重写一个shell脚本开机执行代替mslgservice.rc服务,而且据说不能直接用面具的losetup得用系统的,面具的权限太高了运行不了,就很麻烦。 -如果就这样直接集成,就需要扩容机器的super分区才能刷得进去,或者你就干脆做成dsu系统包,直接dsu侧载就不管包多大也不需要扩容。 -如果不集成,就不需要改vendor分区,随便在product分区里精简一点东西,就可以确保刷进机器那8.5G的super分区。 -## mi_ext分区修改,整体上照搬6max,但要注意以下部分 -build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 -mi_ext\etc\build.prop -``` -ro.product.mod_device=elish -``` -## odm分区无修改 -这个分区是跟vendor分区配套的,目前无需修改 -## product分区修改,整体上照搬6max,但要注意以下部分 -pc版wps相关文件 -访问linux容器的rdp后端MSLgRdp和交互操作的前端WpsLauncher -如果不集成pc版wps就可以删除 -product\app\MSLgRdp -product\data-app\WpsLauncher - -product\app -删除无法使用的6max人脸识别解锁 MiuiBiometric -保留5pro人脸识别解锁 MiuiBiometric3373 - -按需精简 -快应用服务引擎 -product\app\HybridPlatform -智能服务 -product\app\MSA - -data-app可卸载的预装app,其中不少app都是可以在应用商店里重新安装的, -product\data-app\ -因为平板5pro默认的super分区只有8.5G,而且重新打包必须预留更多空间,所以可以精简这里,把super精简到7.4G以下,越小越好 -不过如果你要塞pc版wps,就一定是扩容了机器的super分区,搞不好空间还有多就没必要精简了 -我个人是觉得没必要只为了一个难用的特别版wps,就去搞极限精简,很多常用自带功能用户到时候又要想办法装回来,挺烦人的 -小米创作 -product\data-app\Creation -小米商城 -product\data-app\MiShopPad -米兔儿童 -product\data-app\Mitukid -多看阅读 -product\data-app\MIUIDuokanReaderPad -电子邮件 -product\data-app\MIUIEmail -游戏中心 -product\data-app\MIUIGameCenterPad -小米云盘 -product\data-app\MIUIMiDrive -小米社区 -product\data-app\MIUIVipAccountPad -米家 -product\data-app\SmartHome - -设备功能配置文件,本来正常代号要用elish稳定使用的话,删除yudi.xml,照搬elish.xml就好了, -但是如果你要全局改机器代号的话,这里配置文件也要改名成yudi.xml, -所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫yudi.xml,都放进去,这样用哪个代号也不要紧 -product\etc\device_features\elish.xml -product\etc\device_features\yudi.xml - -修改屏幕亮度配置文件 -product\etc\displayconfig\display_id_4630946932993367170.xml -目前6max只有一家屏幕供应商,后续更新可能会随着增加屏幕类型,而多出其他id的文件, -而这个东西的文件名是在其他地方写死的,只能用display_id_4630946932993367170.xml,否则会出现`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机 - -5pro屏幕的xml文件为: -product\etc\displayconfig\display_id_19260527152667265.xml -product\etc\displayconfig\display_id_4630946481717202305.xml -product\etc\displayconfig\display_id_4630946545580055169.xml -这三个文件的内容是完全一样的,所以只要用任意一个里面的内容替换掉display_id_4630946932993367170.xml屏幕亮度调节就正常了 - -build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 -product\etc\build.prop -``` -ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/missi:13/TKQ1.221114.001/V14.0.3.0.TMHCNXM:user/release-keys -ro.product.mod_device=elish - -ro.sf.lcd_density=360 -persist.miui.density_v2=360 - -persist.miui.extm.enable=0 - -``` -overlay保留5pro本身设备的apk -product\overlay\DevicesAndroidOverlay.apk -product\overlay\DevicesOverlay.apk -product\overlay\MiuiBiometricResOverlay.apk -product\overlay\MiuiFrameworkResOverlay.apk - -保留5pro相机,删除6max相机,否则会提示机型不匹配无法使用然后退出, -我个人是建议使用sevtinge修改相机4.7.230127.0版本,没有机型限制而且解锁更多功能 -product\priv-app\MiuiCamera -## system分区修改,整体上照搬6max,但要注意以下部分 -build.prop修改机型代号 -system\system\build.prop -``` -ro.product.mod_device=elish -``` - -## system_ext分区无需修改,直接照搬6max - -## vendor分区修改,如果选择不集成pc版wps无需修改,直接用5pro的 -如果要集成pc版wps则注意以下部分 -6max新增pc版wps相关文件,只要对比6pro(liuqin)的整个vendor分区,看孤立文件,一眼就能看出这些文件跟pc版wps有关, -其中mslgoptimg、mslgusrimg两个1G以上大文件,是导致super分区需要扩容的原因, -所以如果能以某种方法比如这里留一个到userdata的链接,然后把实际文件丢进userdata, -或者直接改sh脚本把位置就写到其他地方,就不需要占用vendor、super分区了 -另外说一句,由于有人测试了,这东西类原生也可以用,所以理论上用这个东西不一定非要移植6max的rom,如果你能把这些相关文件还有上面product分区里面的两个app放进其他安卓系统的对应位置,其他安卓系统搞不好也能运行 -``` -/vendor/bin/hw/mslgservice -/vendor/bin/losetup.sh -/vendor/bin/start-rootfs.sh -/vendor/bin/tar-rootfs.sh - -/vendor/etc/assets/md5.txt -/vendor/etc/assets/mslgoptimg -/vendor/etc/assets/mslgusrimg -/vendor/etc/assets/rootfs-23.07.28.tgz - -/vendor/etc/init/mslgservice.rc - -/vendor/lib/libext2_uuid.so - -/vendor/lib64/libext2_uuid.so -/vendor/lib64/vendor.xiaomi.mslg.keeper@1.0.so -``` -vendor/build.prop加入代码 -``` -ro.vendor.mslg.rootfs.version=rootfs-23.07.28.tgz -sys.mslg.available=1 -``` -接下来是补充selinux的上下文权限, -我也不知道补了有什么用,也不知道写的对不对,反正就是照yudi的文件抄,补了 -我看别人的移植包倒是根本就没改,直接改selinux宽容,然后mslgservice.rc把所有seclabel的mslgd改成shell,这样mslg是直接用shell的权限,就不用补mslgd的sepolicy权限了 - -修改vendor文件上下文文件 -vendor\etc\selinux\vendor_file_contexts -``` -/(vendor|system/vendor)/bin/hw/vendor.xiaomi.mslg.keeper@1.0-service u:object_r:hal_mslgkeeper_default_exec:s0 -/(vendor|system/vendor)/bin/start-rootfs.sh u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/bin/tar-rootfs.sh u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/bin/losetup.sh u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/bin/hw/mslgservice u:object_r:mslgd_exec:s0 -/(vendor|system/vendor)/etc/assets(/.*)? u:object_r:vendor_file:s0 -/(vendor|system/vendor)/etc/assets/mslgoptimg u:object_r:vendor_file:s0 -/(vendor|system/vendor)/etc/assets/mslgusrimg u:object_r:vendor_file:s0 - -/dev/msl(/.*)? u:object_r:mslg_rootfs_file:s0 - -/data/vendor/mslg(/.*)? u:object_r:mslg_rootfs_file:s0 -``` -修改vendor服务上下文文件 -vendor\etc\selinux\vendor_hwservice_contexts -``` -vendor.xiaomi.mslg.keeper::IMSLgKeeper u:object_r:hal_mslgkeeper_hwservice:s0 -``` -修改vendor属性上下文文件 -vendor\etc\selinux\vendor_property_contexts -``` -#line 1 "out/soong/.intermediates/system/sepolicy/vendor_property_contexts/android_common/gen/namespace_checked/vendor/xiaomi/proprietary/mslg/keeper/1.0/default/sepolicy/property_contexts" -persist.vendor.unzip.mslgrootfs u:object_r:vendor_mslg_prop:s0 -vendor.mslgrootfs.isready u:object_r:vendor_mslg_prop:s0 -vendor.mslgrootfs.version u:object_r:vendor_mslg_prop:s0 -vendor.setup.mslgrootfs u:object_r:vendor_mslg_prop:s0 -vendor.mslg.mslgusrimg u:object_r:vendor_mslg_prop:s0 -vendor.mslg.mslgoptimg u:object_r:vendor_mslg_prop:s0 -ro.vendor.mslg.rootfs.version u:object_r:vendor_mslg_prop:s0 -``` -修改vendor seapp上下文文件 -vendor\etc\selinux\vendor_seapp_contexts -``` -user=_app seinfo=platform name=com.xiaomi.mslgrdp domain=mslg_app type=app_data_file levelFrom=all -``` -修改se策略文件,这段需要补的权限超级多,痛苦 -vendor\etc\selinux\vendor_sepolicy.cil -``` -(typeattributeset domain (adbd_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default mslg_app mslg_init mslgd - -(typeattributeset fs_type (device_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -mslg_app_devpts - -(typeattributeset file_type (adbd_exec_30_0开头的这行到下三行,最后面的))之前,按照前面的格式加上 -mslg_rootfs_file hal_mslgkeeper_default_exec mslg_init_exec mslgd_exec - -(typeattributeset exec_type (adbd_exec_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default_exec mslg_init_exec mslgd_exec - -(typeattributeset data_file_type (incremental_control_file_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -mslg_rootfs_file - -(typeattributeset vendor_file_type (vendor_cgroup_desc_file_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default_exec mslg_init_exec mslgd_exec - -(typeattributeset property_type (apexd_prop_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -vendor_mslg_prop - -(typeattributeset vendor_property_type (rebootescrow_hal_prop_30_0开头的这行到最后面的))之前,按照前面的格式加上 -vendor_mslg_prop - -(typeattributeset vendor_public_property_type (开头的这行到最后面的))之前,按照前面的格式加上 -vendor_mslg_prop - -(typeattributeset hwservice_manager_type (default_android_hwservice_30_0开头的这行到下一行,最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_hwservice - -(typeattributeset mlstrustedsubject (bufferhubd_30_0开头的这行到最后面的))之前,按照前面的格式加上 -mslg_init mslgd - -(typeattributeset mlstrustedobject (ashmem_device_30_0开头的这行到最后面的))之前,按照前面的格式加上 -mslg_rootfs_file - -(typeattributeset appdomain (开头的这行到最后面的))之前,按照前面的格式加上 -mslg_app - -(typeattributeset netdomain (dhcp_30_0(开头的这行到最后面的))之前,按照前面的格式加上 -mslg_app - -新增行 -(typeattributeset bluetoothdomain (mslg_app)) -(typeattributeset coredomain (mslg_app)) -(typeattributeset socket_between_core_and_vendor_violators (mslg_app mslgd)) - -(typeattributeset halserverdomain (mediaswcodec_30_0开头的这行到最后面的))之前,按照前面的格式加上 -hal_mslgkeeper_default - -新增行 -(typeattribute hal_mslgkeeper) -(typeattributeset hal_mslgkeeper (hal_mslgkeeper_default)) -(typeattribute hal_mslgkeeper_server) -(typeattributeset hal_mslgkeeper_server (hal_mslgkeeper_default)) -(typeattribute hal_mslgkeeper_client) - -新增行 -(type mslg_rootfs_file) -(roletype object_r mslg_rootfs_file) -(type hal_mslgkeeper_default) -(roletype object_r hal_mslgkeeper_default) -(type hal_mslgkeeper_default_exec) -(roletype object_r hal_mslgkeeper_default_exec) -(type hal_mslgkeeper_hwservice) -(roletype object_r hal_mslgkeeper_hwservice) -(type mslg_app) -(roletype object_r mslg_app) -(type mslg_app_userfaultfd) -(roletype object_r mslg_app_userfaultfd) -(type mslg_app_devpts) -(roletype object_r mslg_app_devpts) -(type mslg_init) -(roletype object_r mslg_init) -(type mslg_init_exec) -(roletype object_r mslg_init_exec) -(type mslgd) -(roletype object_r mslgd) -(type mslgd_exec) -(roletype object_r mslgd_exec) -(type vendor_mslg_prop) -(roletype object_r vendor_mslg_prop) - -新增行 -(allow hal_mslgkeeper_client hal_mslgkeeper_server (binder (call transfer))) -(allow hal_mslgkeeper_server hal_mslgkeeper_client (binder (transfer))) -(allow hal_mslgkeeper_client hal_mslgkeeper_server (fd (use))) -(allow hal_mslgkeeper_server hal_mslgkeeper_client (binder (call transfer))) -(allow hal_mslgkeeper_client hal_mslgkeeper_server (binder (transfer))) -(allow hal_mslgkeeper_server hal_mslgkeeper_client (fd (use))) -(allow hal_mslgkeeper_server hal_mslgkeeper_hwservice (hwservice_manager (add find))) -(allow hal_mslgkeeper_server hidl_base_hwservice_30_0 (hwservice_manager (add))) -(neverallow base_typeattr_724_30_0 hal_mslgkeeper_hwservice (hwservice_manager (add))) -(allow init_30_0 hal_mslgkeeper_default_exec (file (read getattr map execute open))) -(allow init_30_0 hal_mslgkeeper_default (process (transition))) -(allow hal_mslgkeeper_default hal_mslgkeeper_default_exec (file (read getattr map execute open entrypoint))) -(dontaudit init_30_0 hal_mslgkeeper_default (process (noatsecure))) -(allow init_30_0 hal_mslgkeeper_default (process (siginh rlimitinh))) -(typetransition init_30_0 hal_mslgkeeper_default_exec process hal_mslgkeeper_default) -(allow hal_mslgkeeper_default hwservicemanager_30_0 (binder (call transfer))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (binder (call transfer))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (dir (search))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (file (read map open))) -(allow hwservicemanager_30_0 hal_mslgkeeper_default (process (getattr))) -(allow hal_mslgkeeper_default vendor_mslg_prop (file (read getattr map open))) -(allow hal_mslgkeeper_default property_socket_30_0 (sock_file (write))) -(allow hal_mslgkeeper_default init_30_0 (unix_stream_socket (connectto))) -(allow hal_mslgkeeper_default vendor_mslg_prop (property_service (set))) -(allow hal_mslgkeeper_default vendor_mslg_prop (file (read getattr map open))) -(allow hal_mslgkeeper_default mslg_rootfs_file (file (read getattr open))) -(allow hal_mslgkeeper_default mslg_rootfs_file (dir (read getattr open search))) -(allow init_30_0 mslg_rootfs_file (dir (mounton))) -(allow init_30_0 mslg_rootfs_file (file (mounton))) -(allow init_30_0 fuse_30_0 (dir (mounton))) -(allow init_30_0 fuse_30_0 (file (mounton))) -(allow init_30_0 mnt_user_file_30_0 (lnk_file (read write create open))) -(allow hal_misys_default mslg_rootfs_file (file (read getattr open))) -(allow hal_misys_default mslg_rootfs_file (dir (read getattr open search))) -(typetransition mslg_app tmpfs_30_0 file appdomain_tmpfs) -(allow mslg_app mslg_app_userfaultfd (anon_inode (ioctl read create))) -(neverallow base_typeattr_725_30_0 mslg_app_userfaultfd (anon_inode (ioctl read write create getattr setattr lock relabelfrom relabelto append map unlink link rename execute quotaon mounton audit_access open execmod watch watch_mount watch_sb watch_with_perm watch_reads))) -(neverallow mslg_app base_typeattr_726_30_0 (anon_inode (ioctl read write create getattr setattr lock relabelfrom relabelto append map unlink link rename execute quotaon mounton audit_access open execmod watch watch_mount watch_sb watch_with_perm watch_reads))) -(allow mslg_app appdomain_tmpfs_30_0 (file (read write getattr map execute))) -(neverallow base_typeattr_727_30_0 base_typeattr_725_30_0 (file (ioctl read write create setattr lock relabelfrom append unlink link rename open watch watch_mount watch_sb watch_with_perm watch_reads))) -(neverallow base_typeattr_728_30_0 mslg_app (file (ioctl read write create setattr lock relabelfrom append unlink link rename open watch watch_mount watch_sb watch_with_perm watch_reads))) -(neverallow base_typeattr_729_30_0 mslg_app (process (ptrace))) -(allow mslg_app app_data_file_30_0 (dir (write add_name search))) -(allow mslg_app app_data_file_30_0 (file (create open))) -(auditallow mslg_app app_data_file_30_0 (file (execute))) -(allow mslg_app system_linker_exec_30_0 (file (execute_no_trans))) -(allow mslg_app privapp_data_file_30_0 (lnk_file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app app_data_file_30_0 (lnk_file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app app_data_file_30_0 (sock_file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app app_data_file_30_0 (fifo_file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app asec_apk_file_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app asec_apk_file_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslg_app asec_public_file_30_0 (file (execute))) -(allow mslg_app shell_data_file_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app shell_data_file_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslg_app trace_data_file_30_0 (file (read getattr))) -(allow mslg_app system_app_data_file_30_0 (file (read write getattr))) -(allow mslg_app media_rw_data_file_30_0 (dir (ioctl read write create getattr setattr lock rename open watch watch_reads add_name remove_name reparent search rmdir))) -(allow mslg_app media_rw_data_file_30_0 (file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslg_app mnt_media_rw_file_30_0 (dir (search))) -(allow mslg_app servicemanager_30_0 (service_manager (list))) -(allow mslg_app audioserver_service_30_0 (service_manager (find))) -(allow mslg_app cameraserver_service_30_0 (service_manager (find))) -(allow mslg_app drmserver_service_30_0 (service_manager (find))) -(allow mslg_app mediaserver_service_30_0 (service_manager (find))) -(allow mslg_app mediaextractor_service_30_0 (service_manager (find))) -(allow mslg_app mediametrics_service_30_0 (service_manager (find))) -(allow mslg_app mediadrmserver_service_30_0 (service_manager (find))) -(allow mslg_app nfc_service_30_0 (service_manager (find))) -(allow mslg_app radio_service_30_0 (service_manager (find))) -(allow mslg_app app_api_service (service_manager (find))) -(allow mslg_app vr_manager_service_30_0 (service_manager (find))) -(allow mslg_app gpu_service_30_0 (service_manager (find))) -(allow mslg_app gpuservice_30_0 (binder (call transfer))) -(allow gpuservice_30_0 mslg_app (binder (transfer))) -(allow mslg_app gpuservice_30_0 (fd (use))) -(allow mslg_app self (process (ptrace))) -(allow mslg_app runas_app_30_0 (unix_stream_socket (connectto))) -(allow mslg_app mslgd (unix_stream_socket (connectto))) -(allow mslg_app runas_app_30_0 (process (sigchld))) -(allow mslg_app sysfs_hwrandom_30_0 (dir (search))) -(allow mslg_app sysfs_hwrandom_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app preloads_media_file_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslg_app preloads_media_file_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslg_app preloads_data_file_30_0 (dir (search))) -(allow mslg_app vendor_app_file_30_0 (dir (read getattr open search))) -(allow mslg_app vendor_app_file_30_0 (file (ioctl read getattr lock map execute open watch watch_reads))) -(allow mslg_app vendor_app_file_30_0 (lnk_file (read getattr open))) -(allow mslg_app traced_30_0 (fd (use))) -(allow mslg_app traced_tmpfs_30_0 (file (read write getattr map))) -(allow mslg_app traced_producer_socket_30_0 (sock_file (write))) -(allow mslg_app traced_30_0 (unix_stream_socket (connectto))) -(allow traced_30_0 mslg_app (fd (use))) -(allow traced_perf_30_0 mslg_app (file (ioctl read getattr lock map open watch watch_reads))) -(allow traced_perf_30_0 mslg_app (dir (ioctl read getattr lock open watch watch_reads search))) -(allow traced_perf_30_0 mslg_app (process (signal))) -(allow mslg_app traced_perf_socket_30_0 (sock_file (write))) -(allow mslg_app traced_perf_30_0 (unix_stream_socket (connectto))) -(allow traced_perf_30_0 mslg_app (fd (use))) -(allow mslg_app system_server_30_0 (udp_socket (read write getattr connect getopt setopt recvfrom sendto))) -(allow mslg_app rs_exec_30_0 (file (read getattr map execute open))) -(allow mslg_app rs_30_0 (process (transition))) -(allow rs_30_0 rs_exec_30_0 (file (read getattr map execute open entrypoint))) -(allow rs_30_0 mslg_app (process (sigchld))) -(dontaudit mslg_app rs_30_0 (process (noatsecure))) -(allow mslg_app rs_30_0 (process (siginh rlimitinh))) -(typetransition mslg_app rs_exec_30_0 process rs) -(dontaudit mslg_app net_dns_prop_30_0 (file (read))) -(dontaudit mslg_app proc_stat_30_0 (file (read))) -(dontaudit mslg_app proc_vmstat_30_0 (file (read))) -(dontaudit mslg_app proc_uptime_30_0 (file (read))) -(typetransition mslg_app devpts_30_0 chr_file mslg_app_devpts) -(allow mslg_app mslg_app_devpts (chr_file (ioctl read write getattr open))) -(allowx mslg_app mslg_app_devpts (ioctl chr_file (((range 0x5401 0x5404)) 0x540b ((range 0x540e 0x5411)) ((range 0x5413 0x5414)) ((range 0x5450 0x5451))))) -(neverallowx base_typeattr_185_30_0 mslg_app_devpts (ioctl chr_file (0x5412))) -(allow mslg_app simpleperf_30_0 (process (signal))) -(allow mslg_app system_app_service_30_0 (service_manager (find))) -(allow mslg_app vendor_hal_perf_hwservice (hwservice_manager (find))) -(allow mslg_app hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow mslg_app hal_mslgkeeper_default (binder (call transfer))) -(allow mslg_app procfs_memory (file (read))) -(allow mslg_app mslgd (unix_dgram_socket (sendto))) -(allow mslg_app procfs_memory (file (open))) -(allow mslg_app mslg_rootfs_file (sock_file (write create getattr setattr unlink rename))) -(allow mslg_app mslg_rootfs_file (file (ioctl read write create getattr setattr lock append map unlink link rename open watch))) -(allow mslg_app mslg_rootfs_file (fifo_file (read write create unlink open))) -(allow mslg_app mslg_rootfs_file (dir (read write create getattr setattr open watch add_name remove_name search rmdir))) -(allow mslg_app mslg_rootfs_file (lnk_file (read getattr))) -(allow mslg_app tmpfs_30_0 (sock_file (write create))) -(allow mslg_app tmpfs_30_0 (file (read open))) -(allow mslg_app app_api_service (service_manager (find))) -(allow mslg_app mslg_app (tcp_socket (read write))) -(allow mslg_app property_socket_30_0 (sock_file (write))) -(allow mslg_app init_30_0 (unix_stream_socket (connectto))) -(allow mslg_app system_prop_30_0 (property_service (set))) -(allow init_30_0 mslg_init_exec (file (read getattr map execute open))) -(allow init_30_0 mslg_init (process (transition))) -(allow mslg_init mslg_init_exec (file (read getattr map execute open entrypoint))) -(dontaudit init_30_0 mslg_init (process (noatsecure))) -(allow init_30_0 mslg_init (process (siginh rlimitinh))) -(typetransition init_30_0 mslg_init_exec process mslg_init) -(allow init_30_0 mslgd_exec (file (read getattr map execute open))) -(allow init_30_0 mslgd (process (transition))) -(allow mslgd mslgd_exec (file (read getattr map execute open entrypoint))) -(dontaudit init_30_0 mslgd (process (noatsecure))) -(allow init_30_0 mslgd (process (siginh rlimitinh))) -(typetransition init_30_0 mslgd_exec process mslgd) -(allow mslgd su_30_0 (unix_stream_socket (accept setopt))) -(allow mslgd mslg_rootfs_file (file (ioctl read write create getattr setattr lock append map unlink link rename open watch))) -(allow mslgd mslg_rootfs_file (fifo_file (read write create unlink open))) -(allow mslgd mslg_rootfs_file (dir (read write create getattr setattr rename open watch add_name remove_name search rmdir))) -(allow mslgd mslg_rootfs_file (lnk_file (read create getattr setattr link))) -(allow mslgd mslgd (netlink_kobject_uevent_socket (create getattr bind setopt))) -(allow mslgd devpts_30_0 (chr_file (ioctl read write getattr setattr append open))) -(allow mslgd devpts_30_0 (dir (read open))) -(allow mslgd proc_filesystems_30_0 (file (read getattr open))) -(allow mslgd proc_30_0 (file (ioctl read getattr lock map open watch watch_reads))) -(allow mslgd sysfs_30_0 (dir (read))) -(allow mslgd system_app_30_0 (process (signull))) -(allow mslgd untrusted_app_30_0 (process (signull))) -(allow mslgd priv_app_30_0 (process (signull))) -(allow mslgd mslgd (netlink_audit_socket (read write create nlmsg_relay))) -(allow mslgd mslgd (key (write search))) -(allow mslgd kernel_30_0 (key (link))) -(allow mslgd kernel_30_0 (dir (search))) -(allow mslgd kernel_30_0 (file (read open))) -(allow mslgd hal_graphics_composer_default (process (signull))) -(allow mslgd init_30_0 (dir (search))) -(allow mslgd init_30_0 (file (read getattr open))) -(allow mslgd init_30_0 (lnk_file (read))) -(allow mslgd fuse_30_0 (dir (ioctl read write create getattr setattr lock rename open watch watch_reads add_name remove_name reparent search rmdir))) -(allow mslgd fuse_30_0 (file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslgd mslg_rootfs_file (sock_file (write create getattr setattr unlink rename))) -(allow mslgd mslgd (capability (chown fowner fsetid kill setgid setuid setpcap sys_chroot sys_admin sys_nice sys_resource audit_write))) -(allow mslgd mslgd (netlink_route_socket (read write create getattr bind setopt nlmsg_read nlmsg_readpriv))) -(allow mslgd mslgd (tcp_socket (read write create bind connect listen accept setopt name_connect))) -(allow mslgd mslgd (tcp_socket (ioctl shutdown))) -(allow mslgd port_30_0 (tcp_socket (name_bind name_connect))) -(allow mslgd node_30_0 (tcp_socket (node_bind))) -(allow mslgd mslgd (udp_socket (read write create getattr connect setopt))) -(allow mslgd untrusted_app_30 (unix_dgram_socket (sendto))) -(allow mslgd tmpfs_30_0 (chr_file (ioctl read write getattr setattr open))) -(allow mslgd tmpfs_30_0 (dir (ioctl read write create getattr setattr lock rename open watch watch_reads add_name remove_name reparent search rmdir))) -(allow mslgd tmpfs_30_0 (file (ioctl read write create getattr setattr lock append map unlink rename open watch watch_reads))) -(allow mslgd tmpfs_30_0 (lnk_file (read))) -(allow mslgd mslgd_exec (file (ioctl read getattr lock map execute open execute_no_trans entrypoint))) -(allow mslgd mslgd_exec (dir (read getattr add_name remove_name search))) -(allow mslgd mslgd_exec (lnk_file (read getattr))) -(allow mslgd mslgd (process (execmem))) -(allow mslgd mslg_app (unix_dgram_socket (sendto))) -(allow mslgd mslgd (process (setexec execmem))) -(allow mslgd kernel_30_0 (file (getattr))) -(allow mslgd kernel_30_0 (lnk_file (read))) -(allow mslgd platform_app_30_0 (process (signull))) -(allow mslgd su_30_0 (fd (use))) -(allow mslgd su_30_0 (process (transition noatsecure siginh rlimitinh))) -(allow mslgd vendor_init_30_0 (dir (search))) -(allow mslgd vendor_init_30_0 (file (read open))) -(allow mslgd vendor_toolbox_exec_30_0 (file (execute_no_trans))) -(allow mslgd vendor_file_30_0 (file (read))) -(allow mslgd block_device_30_0 (dir (ioctl read getattr lock open watch watch_reads search))) -(allow mslgd loop_device_30_0 (blk_file (ioctl read write getattr lock append map open watch watch_reads))) -(allowx mslgd loop_device_30_0 (ioctl blk_file (0x1261))) -(allowx mslgd loop_device_30_0 (ioctl blk_file (((range 0x4c00 0x4c01)) ((range 0x4c04 0x4c05)) ((range 0x4c08 0x4c0a))))) -(allow kernel_30_0 mslgd (fd (use))) -(allow mslgd vendor_mslg_prop (file (read getattr map open))) -(allow mslgd property_socket_30_0 (sock_file (write))) -(allow mslgd init_30_0 (unix_stream_socket (connectto))) -(allow mslgd vendor_mslg_prop (property_service (set))) -(allow mslgd vendor_mslg_prop (file (read getattr map open))) -(allow kernel_30_0 vendor_file_30_0 (file (read))) -(allow mslgd loop_control_device_30_0 (chr_file (ioctl read write open))) -(allow vendor_init_30_0 vendor_mslg_prop (property_service (set))) -(allow vendor_init_30_0 vendor_mslg_prop (file (read getattr map open))) -(allow vendor_init_30_0 vendor_mslg_prop (file (read getattr map open))) -(allow mslgd hwservicemanager_prop_30_0 (file (read getattr map open))) -(allow hwservicemanager_30_0 mslgd (binder (transfer))) -(allow mslgd hwservicemanager_30_0 (binder (call))) -(allow mslgd hal_mslgkeeper_default (binder (call))) -(allow mslgd hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow platform_app_30_0 hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow platform_app_30_0 hal_mslgkeeper_default (binder (call transfer))) -(allow platform_app_30_0 mslg_rootfs_file (dir (ioctl read getattr lock open watch watch_reads search))) -(allow platform_app_30_0 mslg_rootfs_file (file (ioctl read getattr lock map open watch watch_reads))) -(allow platform_app_30_0 mslg_rootfs_file (sock_file (write))) -(allow system_app_30_0 hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow system_app_30_0 hal_mslgkeeper_default (binder (call))) -(allow system_server_30_0 hal_mslgkeeper_default (binder (call))) -(allow system_server_30_0 hal_mslgkeeper_hwservice (hwservice_manager (find))) -(allow untrusted_app_30 mslg_rootfs_file (dir (ioctl read write getattr lock open watch watch_reads add_name remove_name search))) -(allow untrusted_app_30 mslgd (unix_dgram_socket (sendto))) -(allow untrusted_app_30 mslgd (unix_stream_socket (connectto))) -(allow untrusted_app_30 zygote_30_0 (unix_stream_socket (getopt))) -(allow untrusted_app_30 procfs_memory (file (open))) -(allow untrusted_app_30 mslg_rootfs_file (file (ioctl read write getattr lock append map open watch watch_reads))) -(allow untrusted_app_30 mslg_rootfs_file (sock_file (write create getattr setattr unlink rename))) - -新增行 -(typetransition mslg_app mslg_app anon_inode "[userfaultfd]" mslg_app_userfaultfd) - -新增行 -(typeattribute base_typeattr_729_30_0) -(typeattributeset base_typeattr_729_30_0 ((and (domain) ((not (crash_dump_30_0 runas_app_30_0 simpleperf_30_0 mslg_app)))))) -(typeattribute base_typeattr_728_30_0) -(typeattributeset base_typeattr_728_30_0 ((and (appdomain) ((not (runas_app_30_0 shell_30_0 simpleperf_30_0 mslg_app)))))) -(typeattribute base_typeattr_727_30_0) -(typeattributeset base_typeattr_727_30_0 ((and (mslg_app) ((not (runas_app_30_0 shell_30_0 simpleperf_30_0)))))) -(typeattribute base_typeattr_726_30_0) -(typeattributeset base_typeattr_726_30_0 ((not (mslg_app_userfaultfd)))) -(typeattribute base_typeattr_725_30_0) -(typeattributeset base_typeattr_725_30_0 ((and (domain) ((not (mslg_app)))))) -(typeattribute base_typeattr_724_30_0) -(typeattributeset base_typeattr_724_30_0 ((and (domain) ((not (hal_mslgkeeper_server)))))) -``` - -## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 -先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, -这里的目标是打包成sparse格式的super.img,vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里用卡刷脚本写入到super分区, -常见的情况也有使用zstd工具把super压缩成zst格式,在线刷、卡刷的时候再解压,这种用压缩解压的时间来节省刷机包占用空间大小的做法, -这种的情况就需要专门的脚本和工具了 -由于无wps版由于不需要修改odm、vendor分区,所以理论上其实你可以直接用fastbootd模式刷入mi_ext、system、system_ext、product分区 -dsu包的做法就是直接把mi_ext、system、system_ext、product分区的raw image文件打包成一个zip或者gz文件即可 -解包打包偷懒就找个安卓工具箱,米欧、dna、多幸运之类的,直接一键打包 - -## 关闭avb验证 -可选,修改fstab.qcom去除avb代码 -vendor\etc\fstab.qcom -把system那一行的flags从`,avb_keys=`开始把后面的全删除 - -可选,vendor_boot修改header在最后增加设置宽容的代码 - -刷入vbmeta、vbmeta_system时使用命令关闭avb验证或者在twrp中直接用选项关闭 -```bash -fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img -fastboot --disable-verity --disable-verification flash vbmeta_system vbmeta_system.img -``` From 18ab7f51ecc43b9c64e21e874ea08909fd70f518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sat, 16 Dec 2023 18:16:01 +0800 Subject: [PATCH 17/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A7=BB=E6=A4=8Ddagu?= =?UTF-8?q?=E6=BE=8E=E6=B9=83=E5=BC=80=E5=8F=91=E7=89=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 112 ++++++++++++++++++++++++++++++----------------- 1 file changed, 73 insertions(+), 39 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index e5e976c..e6a7ba3 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,33 +1,31 @@ -# 小米平板5 PRO 移植小米平板6 MAX HyperOS记录 +# 小米平板5 PRO 移植小米平板5 Pro 12.4英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.5.0,移植文件来源于YUDI_OS1.0.2.0 -其中由于我自己开原包,系统设置会无限闪退,目测是平板专区等6max专属功能检测到5Pro的型号不支持,澎湃早期版本有bug小米没写完对老设备的兼容所导致的,可能需要修改apk,没时间,没脑子,搞不定,一旦要改系统apk我就搞不定miui的签名,就必须同时改核心破解 -所以system、system_ext部分直接抄的[柚坛移植包](https://www.uotan.cn/resources/hyperos_1-0-2_for_-5pro.507/)感谢暮间雾大佬 +基于miui_ELISH_V14.0.5.0,移植文件来源于DAGU_OS1.0.23.12.11.DEV 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 由于修改了系统文件,所以avb验证肯定是要关的,而想保证各种app兼容性,所以我选择保持selinux enforce,即不集成pc版wps 如果不集成,就不需要改vendor分区,随便在product分区里精简一点东西,就可以确保刷进机器那8.5G的super分区。 -## mi_ext分区修改,整体上照搬6max,但要注意以下部分 +## mi_ext分区修改,整体上照搬dagu,但要注意以下部分 build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 +把这个东西改掉的好处就是可以屏蔽更新,不会收到移植的那个机型的更新,导致用户误升级变砖 mi_ext\etc\build.prop ``` ro.product.mod_device=elish ``` ## odm分区无修改 这个分区是跟vendor分区配套的,目前无需修改 -## product分区修改,整体上照搬6max,但要注意以下部分 +## product分区修改,整体上照搬dagu,但要注意以下部分 pc版wps相关文件 -访问linux容器的rdp后端MSLgRdp和交互操作的前端WpsLauncher +访问linux容器的rdp后端MSLgRdp,为什么dagu也有PC框架? 不集成pc版wps可以直接删除 product\app\MSLgRdp -product\data-app\WpsLauncher product\app -删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的6max小爱翻译 AiAsstVision +删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的dagu小爱翻译 AiAsstVision 保留5pro小爱翻译 AiAsstVision(MIUI 14内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) (目前12月小米在应用商店全平台推送了4.7.0更新,这个版本据说在开发版上可以启动字幕识别在线模型兼容算力不足老设备,但是我测试的在这个版本澎湃上还是离线模型闪退,所以不更新) -删除无法使用的6max人脸识别解锁 Biometric +删除没有测试能否用的dagu人脸识别解锁 Biometric 保留5pro人脸识别解锁 MiuiBiometric3373 我选择删除两个oat文件 product\app\Biometric\oat\arm64\Biometric.odex @@ -45,14 +43,15 @@ product\app\MSA data-app可卸载的预装app,其中不少app都是可以在应用商店里重新安装的, product\data-app\ 因为平板5pro默认的super分区只有8.5G,而且重新打包必须预留更多空间,所以可以精简这里,把super精简到7.4G以下,越小越好 -不过如果你要塞pc版wps,就一定是扩容了机器的super分区,搞不好空间还有多就没必要精简了 -我个人是觉得没必要只为了一个难用的特别版wps,就去搞极限精简,很多常用自带功能用户到时候又要想办法装回来,挺烦人的 +我个人是觉得没必要搞极限精简,很多常用自带功能用户到时候又要想办法装回来,挺烦人的 +百度输入法小米版 +product\data-app\BaiduIME +讯飞输入法小米版 +product\data-app\com.iflytek.inputmethod.miui 小米创作 product\data-app\Creation 小米商城 product\data-app\MiShop -米兔儿童 -product\data-app\Mitukid 多看阅读 product\data-app\MIUIDuokanReaderPad 电子邮件 @@ -63,41 +62,40 @@ product\data-app\MIUIGameCenterPad product\data-app\MIUIMiDrive 小米社区 product\data-app\MIUIVipAccountPad +小米有品 +product\data-app\MIUIYoupin 米家 product\data-app\SmartHome -设备功能配置文件,本来正常代号要用elish稳定使用的话,删除yudi.xml,照搬elish.xml就好了, -但是如果你要全局改机器代号的话,这里配置文件也要改名成yudi.xml, -所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫yudi.xml,都放进去,这样用哪个代号也不要紧 +设备功能配置文件,本来正常代号要用elish稳定使用的话,删除dagu.xml,照搬elish.xml就好了, +但是如果你要全局改机器代号的话,这里配置文件也要改名成dagu.xml, +所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫dagu.xml,都放进去,这样用哪个代号也不要紧 product\etc\device_features\elish.xml -product\etc\device_features\yudi.xml +product\etc\device_features\dagu.xml 修改屏幕亮度配置文件 -product\etc\displayconfig\display_id_4630946932993367170.xml -目前6max只有一家屏幕供应商,由于没有再之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 +product\etc\displayconfig\display_id_4630946924038420097.xml +目前dagu只有一家屏幕供应商,由于没有测试是否还有之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 5pro屏幕的xml文件为: product\etc\displayconfig\display_id_19260527152667265.xml product\etc\displayconfig\display_id_4630946481717202305.xml product\etc\displayconfig\display_id_4630946545580055169.xml -这三个文件的内容是完全一样的,所以我选择覆盖掉display_id_4630946932993367170.xml,并且保留这四个xml文件,屏幕亮度调节就正常了 +这三个文件的内容是完全一样的,所以我选择覆盖掉display_id_4630946924038420097.xml,并且保留这四个xml文件,屏幕亮度调节就正常了 这里需要注意Overlay里面的AospFrameworkResOverlay.apk要换成5Pro的,否则会遇到自动亮度导致系统软重启的问题 product\overlay\AospFrameworkResOverlay.apk -本来按理说是要反编译这个apk,对比6max的澎湃os与miui14改动,修改到5Pro的文件上的,能力有限,不想努力了 +本来按理说是要反编译这个apk,对比dagu的澎湃os与miui14改动,修改到5Pro的文件上的,能力有限,不想努力了 build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.230804.001/V816.0.2.0.UMHCNXM:user/release-keys +ro.product.build.fingerprint=Xiaomi/elish/missi:14/UKQ1.231003.002/V816.0.23.12.11.DEV:user/release-keys ro.sf.lcd_density=360 persist.miui.density_v2=360 persist.miui.extm.enable=0 - -注释掉这行,因为cust分区格式不是erofs -#ro.miui.cust_erofs=1 ``` overlay保留5pro本身设备的apk DevicesAndroidOverlay主要影响圆角弧率、状态栏高度,aod服务(lcd没有) @@ -107,34 +105,70 @@ product\overlay\DevicesOverlay.apk MiuiFrameworkResOverlay主要影响屏幕hbm背光、hbm亮度曲线、以及一些网络制式的属性 product\overlay\MiuiFrameworkResOverlay.apk -删除6max相机,否则会提示机型不匹配无法使用然后退出, +删除dagu相机,否则会提示机型不匹配无法使用然后退出, 目前澎湃只能用5.0以上版本的相机,老apk无法使用,同样会提示机型不匹配无法使用然后退出, 我所以只能用sevtinge修改相机5.0.230706.0版本,没有机型限制而且解锁更多功能 缺点就是ui不匹配,横屏影像会错位,但由于没的其他选择,只能用谷歌相机、骁龙相机这种第三方相机 product\priv-app\MiuiCamera 并且删除两个oat文件 -## system分区不修改,直接照搬暮间雾大佬的raw image,经对比以下部分为修改文件 -system\system\framework\services.jar -反编译,大致修改为核心破解,但是具体修改内容详询暮间雾大佬 -## system_ext分区不修改,直接照搬暮间雾大佬的raw image,经对比以下部分为修改文件 -system_ext\priv-app\Settings\Settings.apk -反编译,大致修改为找到平板相关新功能的代码,修改平板6系列机型代号为平板5系列机型代号,但是具体修改内容详询暮间雾大佬 - -为什么system、system_ext要照搬暮间雾大佬的raw image呢?因为系统设置闪退,用他的这两个镜像就没有问题,而我自己拆原包替换里面两个文件之后仍然卡第二屏开机动画,目测为拆包打包软件不兼容,二次拆包容易损坏文件系统 +## system分区不修改,直接照搬dagu +## system_ext分区不修改,直接照搬dagu ## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 修复millet ``` +注释掉旧的机型代号 +#ro.product.mod_device=elish +注释掉旧的关闭音频负载代码? +#vendor.audio.offload.track.enable=false 注释掉旧的millet配置 #persist.sys.millet.cgroup1=true -#add millet netlink property -ro.millet.netlink=29 +照搬dagu更新代码 +# fix the drop frame issus +ro.surface_flinger.enable_frame_rate_override=false +ro.build.recovery.version.release=14 +debug.sf.auto_latch_unsignaled=0 +vendor.display.enable_display_extensions=1 +persist.sys.miui.camera.protect_prev_ext=true ``` -`ro.millet.netlink`我看了dagu是加到product分区的build.prop里,但是6max的是在vendor里,所以在这里提一句 +`ro.millet.netlink`我看了dagu是已经加到product分区的build.prop里了,所以vendor里不需要重复添加 可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 +``` +/mnt/vendor/mi_ext /mi_ext none ro,bind wait,nofail +改成 +/mnt/vendor/mi_ext /mi_ext ext4 ro,bind wait,nofail + +添加更多overlay挂载文件夹 +overlay /product/usr overlay ro,lowerdir=/mnt/vendor/mi_ext/product/usr:/product/usr check,nofail +overlay /product/etc/precust_theme overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/precust_theme:/product/etc/precust_theme check,nofail +overlay /product/etc/preferred-apps overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/preferred-apps:/product/etc/preferred-apps check,nofail +overlay /product/etc/security overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/security:/product/etc/security check,nofail +overlay /system_ext/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/system_ext/etc/permissions:/system_ext/etc/permissions check,nofail +``` +vendor\ueventd.rc +``` +删除 +/dev/hw_random 0600 root root +``` +## boot分区 +ramdisk\system\etc\recovery.fstab +``` +/mnt/vendor/mi_ext /mi_ext none ro,bind wait,nofail +改成 +/mnt/vendor/mi_ext /mi_ext ext4 ro,bind wait,nofail +``` +ramdisk\system\etc\ueventd.rc +``` +/dev/hw_random 0440 root system +改成 +/dev/hw_random 0640 root system +``` +## vendor_boot分区 +ramdisk\first_stage_ramdisk\fstab.qcom +照搬vendor\etc\fstab.qcom ## 可选product分区修改,补全小米平板缺失的工具app -我用的k60手机官方澎湃,所以我这里的app是用的手机版补,按理说是要用mix fold3折叠屏的app更好 +提取自k60手机官方澎湃,我看了这几个东西,mix fold3折叠屏的app md5完全一样 悬浮球 product\app\MIUITouchAssistant 小爱建议 From 0c1f1c9d4d4517f036fab1fc0613a525306e563b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sun, 17 Dec 2023 15:05:05 +0800 Subject: [PATCH 18/27] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=AB=98=E7=BA=A7?= =?UTF-8?q?=E6=9D=90=E8=B4=A8=E9=80=89=E9=A1=B9=E4=BB=A5=E5=8F=8A=E5=85=B6?= =?UTF-8?q?=E4=BB=96=E7=8E=84=E5=AD=A6=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 忽然想起来还有三行代码忘了放 --- XIAOMIPAD5PRO.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index e6a7ba3..372a444 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -97,6 +97,14 @@ persist.miui.density_v2=360 persist.miui.extm.enable=0 ``` +想起来还有三行代码忘了放 +``` +#开启高级材质选项 +persist.sys.background_blur_supported=true +#6max多了的两行玄学优化 +persist.sys.support_view_smoothcorner=true +persist.sys.support_window_smoothcorner=true +``` overlay保留5pro本身设备的apk DevicesAndroidOverlay主要影响圆角弧率、状态栏高度,aod服务(lcd没有) product\overlay\DevicesAndroidOverlay.apk From 4a6bdccab79fab23dbb58e0bfdadce08ce370ef0 Mon Sep 17 00:00:00 2001 From: ymdzq <233900743@qq.com> Date: Sat, 24 Feb 2024 14:11:31 +0800 Subject: [PATCH 19/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A7=BB=E6=A4=8D?= =?UTF-8?q?=E5=B0=8F=E7=B1=B3=E5=B9=B3=E6=9D=BF6S=20Pro=E6=BE=8E=E6=B9=83O?= =?UTF-8?q?S1.0.4.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 190 ++++++++++++++++++++++++++++++----------------- 1 file changed, 121 insertions(+), 69 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 372a444..c32e3e6 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,38 +1,37 @@ -# 小米平板5 PRO 移植小米平板5 Pro 12.4英寸 HyperOS记录 +# 小米平板5 PRO 移植小米平板6S Pro 12.4英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.5.0,移植文件来源于DAGU_OS1.0.23.12.11.DEV +基于miui_ELISH_V14.0.5.0,移植文件来源于SHENG_OS1.0.4.0 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 由于修改了系统文件,所以avb验证肯定是要关的,而想保证各种app兼容性,所以我选择保持selinux enforce,即不集成pc版wps 如果不集成,就不需要改vendor分区,随便在product分区里精简一点东西,就可以确保刷进机器那8.5G的super分区。 -## mi_ext分区修改,整体上照搬dagu,但要注意以下部分 +## mi_ext分区修改,整体上照搬6s Pro,但要注意以下部分 build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 把这个东西改掉的好处就是可以屏蔽更新,不会收到移植的那个机型的更新,导致用户误升级变砖 +修改版本号为UKYCNXM mi_ext\etc\build.prop ``` ro.product.mod_device=elish +ro.mi.os.version.incremental=OS1.0.4.0.UKYCNXM ``` +按需精简 +预装画世界Pro,用来绘画的app? +mi_ext\product\data-app\HsjPro\HsjPro.apk ## odm分区无修改 这个分区是跟vendor分区配套的,目前无需修改 -## product分区修改,整体上照搬dagu,但要注意以下部分 +## product分区修改,整体上照搬6s Pro,但要注意以下部分 pc版wps相关文件 -访问linux容器的rdp后端MSLgRdp,为什么dagu也有PC框架? +访问linux容器的rdp后端MSLgRdp,PC 框架?和交互操作的前端WpsLauncher 不集成pc版wps可以直接删除 product\app\MSLgRdp +product\data-app\WpsLauncher product\app -删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的dagu小爱翻译 AiAsstVision +删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的6s Pro小爱翻译 AiAsstVision 保留5pro小爱翻译 AiAsstVision(MIUI 14内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) (目前12月小米在应用商店全平台推送了4.7.0更新,这个版本据说在开发版上可以启动字幕识别在线模型兼容算力不足老设备,但是我测试的在这个版本澎湃上还是离线模型闪退,所以不更新) -删除没有测试能否用的dagu人脸识别解锁 Biometric 保留5pro人脸识别解锁 MiuiBiometric3373 -我选择删除两个oat文件 -product\app\Biometric\oat\arm64\Biometric.odex -product\app\Biometric\oat\arm64\Biometric.vdex -然后直接把MiuiBiometric3373.apk改名成Biometric.apk替换 -以及保留配套的5pro的overlay资源文件 -product\overlay\MiuiBiometricResOverlay.apk 按需精简 快应用服务引擎 @@ -46,12 +45,16 @@ product\data-app\ 我个人是觉得没必要搞极限精简,很多常用自带功能用户到时候又要想办法装回来,挺烦人的 百度输入法小米版 product\data-app\BaiduIME +PC版CAJ阅读器 +product\data-app\CAJLauncher 讯飞输入法小米版 product\data-app\com.iflytek.inputmethod.miui 小米创作 product\data-app\Creation 小米商城 product\data-app\MiShop +米兔儿童 +product\data-app\Mitukid 多看阅读 product\data-app\MIUIDuokanReaderPad 电子邮件 @@ -64,46 +67,73 @@ product\data-app\MIUIMiDrive product\data-app\MIUIVipAccountPad 小米有品 product\data-app\MIUIYoupin +小米汽车拓展屏 +product\data-app\Padapp 米家 product\data-app\SmartHome -设备功能配置文件,本来正常代号要用elish稳定使用的话,删除dagu.xml,照搬elish.xml就好了, -但是如果你要全局改机器代号的话,这里配置文件也要改名成dagu.xml, -所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫dagu.xml,都放进去,这样用哪个代号也不要紧 +设备功能配置文件,本来正常代号要用elish稳定使用的话,删除sheng.xml,照搬elish.xml就好了, +但是如果你要全局改机器代号的话,这里配置文件也要改名成sheng.xml, +所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫sheng.xml,都放进去,这样用哪个代号也不要紧 product\etc\device_features\elish.xml -product\etc\device_features\dagu.xml +product\etc\device_features\sheng.xml 修改屏幕亮度配置文件 -product\etc\displayconfig\display_id_4630946924038420097.xml -目前dagu只有一家屏幕供应商,由于没有测试是否还有之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 +product\etc\displayconfig\display_id_4630947038039379843.xml +目前6s Pro只有一家屏幕供应商,由于没有测试是否还有之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 5pro屏幕的xml文件为: product\etc\displayconfig\display_id_19260527152667265.xml product\etc\displayconfig\display_id_4630946481717202305.xml product\etc\displayconfig\display_id_4630946545580055169.xml -这三个文件的内容是完全一样的,所以我选择覆盖掉display_id_4630946924038420097.xml,并且保留这四个xml文件,屏幕亮度调节就正常了 +这三个文件的内容是完全一样的,所以我选择删掉display_id_4630947038039379843.xml,并且保留这三个xml文件,屏幕亮度调节就正常了 这里需要注意Overlay里面的AospFrameworkResOverlay.apk要换成5Pro的,否则会遇到自动亮度导致系统软重启的问题 product\overlay\AospFrameworkResOverlay.apk -本来按理说是要反编译这个apk,对比dagu的澎湃os与miui14改动,修改到5Pro的文件上的,能力有限,不想努力了 +本来按理说是要反编译这个apk,对比澎湃os与miui14改动,修改到5Pro的文件上的,能力有限,不想努力了 build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/missi:14/UKQ1.231003.002/V816.0.23.12.11.DEV:user/release-keys +ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys +ro.product.build.version.incremental=V816.0.4.0.UKYCNXM -ro.sf.lcd_density=360 persist.miui.density_v2=360 +ro.sf.lcd_density=360 +#默认关闭内存扩展 persist.miui.extm.enable=0 -``` -想起来还有三行代码忘了放 -``` + +#修改ro.miui.cust_erofs改成 +ro.miui.cust_erofs=0 + +#修改ro.millet.netlink改成 +ro.millet.netlink=29 + +#删除ro.config.miui_screen_ratio这一行 +#ro.config.miui_screen_ratio=0.5 + #开启高级材质选项 persist.sys.background_blur_supported=true -#6max多了的两行玄学优化 +persist.sys.background_blur_version=2 + +#6max多了的两行玄学优化,平滑圆角 persist.sys.support_view_smoothcorner=true persist.sys.support_window_smoothcorner=true + +#游戏加载加速? +debug.game.video.speed=true +debug.game.video.support=true + +#加回5Pro本身的玄学优化,性能调度 +persist.sys.miui.sf_cores=4-7 +persist.vendor.display.miui.composer_boost=4-7 +persist.sys.minfree_def=73728,92160,110592,154832,482560,579072 +persist.sys.minfree_6g=73728,92160,110592,258048,663552,903168 +persist.sys.minfree_8g=73728,92160,110592,387072,1105920,1451520 + +#作用未知 +ro.control_privapp_permissions=log ``` overlay保留5pro本身设备的apk DevicesAndroidOverlay主要影响圆角弧率、状态栏高度,aod服务(lcd没有) @@ -113,53 +143,96 @@ product\overlay\DevicesOverlay.apk MiuiFrameworkResOverlay主要影响屏幕hbm背光、hbm亮度曲线、以及一些网络制式的属性 product\overlay\MiuiFrameworkResOverlay.apk -删除dagu相机,否则会提示机型不匹配无法使用然后退出, +删除6s Pro相机,否则会提示机型不匹配无法使用然后退出, 目前澎湃只能用5.0以上版本的相机,老apk无法使用,同样会提示机型不匹配无法使用然后退出, -我所以只能用sevtinge修改相机5.0.230706.0版本,没有机型限制而且解锁更多功能 -缺点就是ui不匹配,横屏影像会错位,但由于没的其他选择,只能用谷歌相机、骁龙相机这种第三方相机 +直接抄暮间雾大佬修改的相机,其他选择只能用谷歌相机、骁龙相机这种第三方相机 product\priv-app\MiuiCamera -并且删除两个oat文件 -## system分区不修改,直接照搬dagu -## system_ext分区不修改,直接照搬dagu +并且删除两个oat文件 +## 可选product分区修改,补全小米平板缺失的工具app +悬浮球 +product\app\MIUITouchAssistant +小米锁屏画报 +product\data-app\MIGalleryLockscreen-MIUI15\MIGalleryLockscreen-MIUI15.apk +指南针 +product\data-app\MIUICompass\MIUICompass.apk +传送门 +product\priv-app\MIUIContentExtension\MIUIContentExtension.apk +添加传送门所需权限 +product\etc\permissions\privapp-permissions-product.xml +``` + + + +``` +## system分区不修改,直接照搬6s Pro +可选修改 +核心破解,如果你需要修改某些系统app,就需要自己修改services.jar文件 +system\system\framework\services.jar +build.prop修改机型代号、版本指纹 +system\system\system_dlkm\etc\build.prop +``` +ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys +ro.system_dlkm.build.version.incremental=V816.0.4.0.UKYCNXM +``` +system\system\build.prop +``` +ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys +ro.system.build.version.incremental=V816.0.4.0.UKYCNXM +ro.build.version.incremental=V816.0.4.0.UKYCNXM +``` +## system_ext分区不修改,直接照搬6s Pro +可选修改 +build.prop修改机型代号、版本指纹 +system_ext\etc\build.prop +``` +ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys +ro.system_ext.build.version.incremental=V816.0.4.0.UKYCNXM +``` ## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 -修复millet ``` -注释掉旧的机型代号 +#注释掉重复定义的机型代号 #ro.product.mod_device=elish -注释掉旧的关闭音频负载代码? +#注释掉旧的关闭音频负载代码? #vendor.audio.offload.track.enable=false -注释掉旧的millet配置 +#注释掉旧的millet配置 #persist.sys.millet.cgroup1=true -照搬dagu更新代码 +#玄学优化代码 # fix the drop frame issus ro.surface_flinger.enable_frame_rate_override=false +persist.vendor.mi_sf.optimize_for_refresh_rate.enable=1 +ro.vendor.mi_sf.ultimate.perf.support=true +ro.surface_flinger.use_content_detection_for_refresh_rate=false +ro.surface_flinger.set_touch_timer_ms=0 +ro.surface_flinger.set_idle_timer_ms=0 +vendor.perf.framepacing.enable=false ro.build.recovery.version.release=14 debug.sf.auto_latch_unsignaled=0 vendor.display.enable_display_extensions=1 -persist.sys.miui.camera.protect_prev_ext=true ``` -`ro.millet.netlink`我看了dagu是已经加到product分区的build.prop里了,所以vendor里不需要重复添加 +`ro.millet.netlink`上面已经加到product分区的build.prop里了,所以vendor里不需要重复添加 可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 ``` /mnt/vendor/mi_ext /mi_ext none ro,bind wait,nofail -改成 +#改成 /mnt/vendor/mi_ext /mi_ext ext4 ro,bind wait,nofail -添加更多overlay挂载文件夹 -overlay /product/usr overlay ro,lowerdir=/mnt/vendor/mi_ext/product/usr:/product/usr check,nofail -overlay /product/etc/precust_theme overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/precust_theme:/product/etc/precust_theme check,nofail -overlay /product/etc/preferred-apps overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/preferred-apps:/product/etc/preferred-apps check,nofail -overlay /product/etc/security overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/security:/product/etc/security check,nofail -overlay /system_ext/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/system_ext/etc/permissions:/system_ext/etc/permissions check,nofail +#添加更多overlay挂载文件夹 +overlay /product/usr overlay ro,lowerdir=/mnt/vendor/mi_ext/product/usr:/product/usr check,nofail +overlay /product/etc/precust_theme overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/precust_theme:/product/etc/precust_theme check,nofail +overlay /product/etc/preferred-apps overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/preferred-apps:/product/etc/preferred-apps check,nofail +overlay /product/etc/security overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/security:/product/etc/security check,nofail +overlay /system_ext/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/system_ext/etc/permissions:/system_ext/etc/permissions check,nofail ``` vendor\ueventd.rc ``` -删除 +#删除 /dev/hw_random 0600 root root ``` ## boot分区 +这个地方主要是影响官方recovery,改不改影响不大 +澎湃OS的mi_ext分区挂载文件系统类型有点改动,原来是none改成ext4,这个地方好像改不改影响不大 ramdisk\system\etc\recovery.fstab ``` /mnt/vendor/mi_ext /mi_ext none ro,bind wait,nofail @@ -175,27 +248,6 @@ ramdisk\system\etc\ueventd.rc ## vendor_boot分区 ramdisk\first_stage_ramdisk\fstab.qcom 照搬vendor\etc\fstab.qcom -## 可选product分区修改,补全小米平板缺失的工具app -提取自k60手机官方澎湃,我看了这几个东西,mix fold3折叠屏的app md5完全一样 -悬浮球 -product\app\MIUITouchAssistant -小爱建议 -product\app\XiaoaiRecommendation -小米运动健康 -product\data-app\Health\Health.apk -小米锁屏画报 -product\data-app\MIGalleryLockscreen-MIUI15\MIGalleryLockscreen-MIUI15.apk -指南针 -product\data-app\MIUICompass\MIUICompass.apk -传送门 -product\priv-app\MIUIContentExtension\MIUIContentExtension.apk -添加传送门所需权限 -product\etc\permissions\privapp-permissions-product.xml -``` - - - -``` ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 然后用lpmake打包成super img From 449dc2f842648f891d83171324ee706155b45024 Mon Sep 17 00:00:00 2001 From: ymdzq <233900743@qq.com> Date: Sat, 24 Feb 2024 15:18:45 +0800 Subject: [PATCH 20/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A7=BB=E6=A4=8D?= =?UTF-8?q?=E7=BA=A2=E7=B1=B3Note11=20Pro=E6=BE=8E=E6=B9=83OS1.0.2.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- REDMI10XPRO.md | 454 +++++++++++++++++++++++++++++++++++-------------- 1 file changed, 328 insertions(+), 126 deletions(-) diff --git a/REDMI10XPRO.md b/REDMI10XPRO.md index 15a2175..b859099 100644 --- a/REDMI10XPRO.md +++ b/REDMI10XPRO.md @@ -1,26 +1,139 @@ -# 红米 10X PRO 移植MIUI 14记录 +# 红米 10X PRO 移植红米Note11 Pro安卓13版本HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_BOMB_V13.0.7.0,移植文件来源于miui_CEZANNE_V14.0.5.0,卡刷包解包就行了, -思路就是对比miui_CEZANNE_V13.0.5.0与miui_CEZANNE_V14.0.5.0,取出变更了的部分,未变化的文件仍然保留10x原本的文件, -由于project treble这个东西,厂商把大部分机器直接硬件相关的文件放进了单独的vendor分区,使得product和system分区在不同机器上有了很大程度的通用性, -再加上MIUI现在很多资源都是集成在一个文件里,通过检测机型代码来切换功能,移植就很方便了 -同处理器同系统版本机型非常相近,但还是有需要修改的部分 +基于miui_BOMB_V13.0.7.0,移植文件来源于miui_PISSARRO_OS1.0.2.0 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 -## product分区修改,整体上照搬k30u,但要注意以下部分 +## mi_ext分区修改,整体上照搬pissarro,但要注意以下部分 +build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 +把这个东西改掉的好处就是可以屏蔽更新,不会收到移植的那个机型的更新,导致用户误升级变砖 +修改版本号为TJLCNXM +mi_ext\etc\build.prop +``` +ro.product.mod_device=bomb +ro.mi.os.version.incremental=OS1.0.2.0.TJLCNXM +``` +## product分区修改,整体上照搬pissarro,但要注意以下部分 +product\app +删除无法使用的人脸识别 MiuiBiometric33148 +目前没有修复办法 -保留10x特有刘海 -product\app\NotchOverlay\NotchOverlay.apk +按需精简 +快应用服务引擎 +product\app\HybridPlatform +智能服务 +product\app\MSA -增加游戏工具箱自动连招开关、动态分区列表和记录分区列表,其中第二部分记录分区为miui14新增,由于内核没有实际升级,所以这段感觉上无效 +data-app可卸载的预装app,其中不少app都是可以在应用商店里重新安装的, +product\data-app\ +百度输入法小米版 +product\data-app\BaiduIME +讯飞输入法小米版 +product\data-app\com.iflytek.inputmethod.miui +小米运动健康 +product\data-app\Health +小米云盘 +product\data-app\MIUIMiDrive +内容中心 +product\data-app\MIUINewHome_Removable +小米社区 +product\data-app\MIUIVipAccount +全球上网 +product\data-app\MIUIVirtualSim +米家 +product\data-app\SmartHome + +一堆有用没用的功能开关、剃刀计划:可卸载系统app名单 product\etc\device_features\bomb.xml ``` + true + + true + + + + com.xiaomi.pass + com.xiaomi.scanner + com.xiaomi.gamecenter + com.miui.weather2 + com.miui.notes + com.miui.compass + com.miui.calculator + com.android.email + com.miui.cleanmaster + com.mi.misupport + com.duokan.reader + com.mfashiongallery.emag + com.miui.personalassistant + com.miui.voip + com.miui.yellowpage + com.xiaomi.midrop + com.android.midrive + com.xiaomi.drivemode + com.miui.smarttravel + com.android.soundrecorder + com.miui.screenrecorder + + + + /system/data-app/XMPass/XMPass.apk + /system/data-app/MIUIScannerGlobal/MIUIScannerGlobal.apk + /system/data-app/GameCenter/GameCenter.apk + /system/data-app/MIUIWeatherGlobal/MIUIWeatherGlobal.apk + /system/data-app/MIUINotes/MIUINotes.apk + /system/data-app/MIUICompassGlobal/MIUICompassGlobal.apk + /system/data-app/MIUICalculatorGlobal/MIUICalculatorGlobal.apk + /system/data-app/Email/Email.apk + /system/data-app/CleanMaster/CleanMaster.apk + /system/data-app/MiSupport/MiSupport.apk + /system/data-app/com.duokan.reader/com.duokan.reader.apk + /system/data-app/MIGalleryLockScreenGlobal/MIGalleryLockScreenGlobal.apk + /system/data-app/PersonalAssistant/PersonalAssistant.apk + /system/data-app/MiuiVoip/MiuiVoip.apk + /system/data-app/YellowPage/YellowPage.apk + /system/data-app/MIDrop/MIDrop.apk + /system/data-app/MiDrive/MiDrive.apk + /system/data-app/MiuiDriveMode/MiuiDriveMode.apk + /system/data-app/SmartTravel/SmartTravel.apk + /system/data-app/MIUISoundRecorderTargetSdk30Global/MIUISoundRecorderTargetSdk30Global.apk + /system/data-app/MIUIScreenRecorderLiteGlobal/MIUIScreenRecorderLiteGlobal.apk + + + + com.xiaomi.scanner + com.miui.weather2 + com.miui.notes + com.miui.compass + com.miui.calculator + com.xiaomi.midrop + com.android.soundrecorder + com.miui.screenrecorder + + + + + ALL + + + true + true + + true + + + true + + true + + true + /system + /system_ext /product /vendor + /mi_ext rescue @@ -30,142 +143,104 @@ product\etc\device_features\bomb.xml crash_history expdb + /dev/block/by-name/ +``` +屏幕亮度曲线? +product\etc\displayconfig\display_id_0.xml +``` + + + + + + + + 0.003421310 + 2.0 + + + 1.0 + 500.0 + + + 3000 + 1000 + + ``` build.prop修改编译日期和指纹、版本号 product\etc\build.prop ``` -ro.product.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.product.build.date.utc=1688559391 -ro.product.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.product.build.version.incremental=V14.0.5.0.SJNCNXM -``` -overlay升级以下apk -product\overlay\AospFrameworkResOverlay.apk -product\overlay\MccMncOverlay.apk +ro.product.product.name=miproduct_bomb_cn +ro.product.build.fingerprint=Xiaomi/miproduct_bomb_cn/missi:13/TP1A.220624.014/V816.0.2.0.TJLCNXM:user/release-keys +ro.product.build.version.incremental=V816.0.2.0.TJLCNXM +#支持存储卡 +ro.build.characteristics=default + +#删除ro.product.ab_ota_partitions=product这一行 +#ro.product.ab_ota_partitions=product + +ro.product.mod_device=bomb +``` overlay保留10x本身设备的apk product\overlay\DevicesAndroidOverlay.apk product\overlay\DevicesOverlay.apk -product\overlay\MiuiBiometricResOverlay.apk +product\overlay\AospFrameworkResOverlay.apk product\overlay\MiuiFrameworkResOverlay.apk -## system分区修改,整体上照搬k30u,但要注意以下部分 +修复息屏显示功能:反编译DevicesAndroidOverlay,修改资源文件strings.xml +把com.miui.aod/com.miui.aod.doze.DozeService改成com.android.systemui/com.android.systemui.doze.DozeService -system\system\app -去除k30u指纹识别 -GFDelmarSetting -保留10x指纹识别 -goodix_sz +product\pangu\system\app\ +删除无法使用的系统自带硬件检测、NFC功能 +MiuiCit +NQNfcNci +目前没有修复办法 +删除配套lib文件 +product\pangu\system\lib\libsensor_cal.so +product\pangu\system\lib\libsensor_calJNI.so +product\pangu\system\lib\vendor.xiaomi.hardware.citsensorservice@1.0.so +product\pangu\system\lib\vendor.xiaomi.hardware.citsensorservice@1.1.so -删除data-app推广应用(番茄免费小说、抖音短视频) -system\system\data-app\com.dragon.read_104 -system\system\data-app\com.ss.android.ugc.aweme_15 - -miui14新增misys服务 -system\system\etc\permissions\vendor.xiaomi.hardware.misys-V4.0-java-permission.xml - -保留10x震动设备相关文件 -system\system\etc\excluded-input-devices.xml - -新增MiSansC字体,照搬note12pro -system\system\etc\fonts.xml -``` - - MiSansC_3.005.ttf - - - - - - MiSansC_3.005.ttf - - - - - - MiSansC_3.005.ttf - - - - - - MiSansC_3.005.ttf - - - - -``` -system\system\fonts\MiSansC_3.005.ttf - -删除system分区里k30u马达、震动服务相关文件 -system\system\framework\vendor.xiaomi.hardware.motor-V1.0-java.jar -system\system\lib\vendor.xiaomi.hardware.motor@1.0.so -system\system\lib\vendor.xiaomi.hardware.vibratorfeature@1.0.so -system\system\lib64\vendor.xiaomi.hardware.motor@1.0.so -system\system\lib64\vendor.xiaomi.hardware.vibratorfeature@1.0.so - -miui14新增misys服务相关文件 -system\system\framework\vendor.xiaomi.hardware.misys-V4.0-java.jar -system\system\lib\vendor.xiaomi.hardware.misys@4.0.so -system\system\lib64\vendor.xiaomi.hardware.misys@4.0.so - -保留10x人脸识别相关lib,MiuiBiometric有通过链接使用到这三个lib -system\system\lib64\libjni_faceunlock.so -system\system\lib64\libjni_stfaceunlock_api.so -system\system\lib64\libstfaceunlockocl.so - -MIUI14默认主题、开机动画、壁纸、图标、资源文件,照搬k30u -system\system\media - -修复默认主题小米视频无分层图标功能,包名com.miui.videoplayer,这里文件夹名莫名少了一个r -system\system\media\theme\miui_mod_icons\dynamic\com.miui.videoplaye -改成 -system\system\media\theme\miui_mod_icons\dynamic\com.miui.videoplayer - -保留10x本身的收音机apk -system\system\system_ext\app\FM +product\pangu\system\lib64\libsensor_cal.so +product\pangu\system\lib64\libsensor_calJNI.so +product\pangu\system\lib64\vendor.xiaomi.hardware.citsensorservice@1.0.so +product\pangu\system\lib64\vendor.xiaomi.hardware.citsensorservice@1.1.so +## system分区修改,整体上照搬pissarro,但要注意以下部分 build.prop修改编译日期和指纹、版本号 system\system\system_ext\etc\build.prop ``` -ro.system_ext.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.system_ext.build.date.utc=1688559391 -ro.system_ext.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.system_ext.build.version.incremental=V14.0.5.0.SJNCNXM +ro.system.build.fingerprint=Xiaomi/missi/missi:13/TP1A.220624.014/V816.0.2.0.TJLCNXM:user/release-keys +ro.system.build.version.incremental=V816.0.2.0.TJLCNXM +ro.build.version.incremental=V816.0.2.0.TJLCNXM +ro.build.description=missi_phoneext4_cn-user 13 TP1A.220624.014 V816.0.2.0.TJLCNXM release-keys ``` -保留10x本身的收音机lib文件 -system\system\system_ext\lib64\libfmjni.so - -键位文件由于还是安卓12整体没变 +键位文件,修复音量键无效问题 system\system\usr\keylayout -去除k30u键位文件 -ACCDET_cen.kl 保留10x键位文件 ACCDET.kl - +mtk-kpd.kl +## system_ext分区修改,整体上照搬pissarro,但要注意以下部分 build.prop修改编译日期和指纹、版本号 +可选修改 system\system\build.prop ``` -ro.system.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.system.build.date.utc=1688559391 -ro.system.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.system.build.version.incremental=V14.0.5.0.SJNCNXM -ro.build.version.incremental=V14.0.5.0.SJNCNXM -ro.build.version.security_patch=2023-07-01 -ro.build.date=Wed Jul 5 20:16:31 CST 2023 -ro.build.date.utc=1688559391 -ro.build.description=bomb-user 12 SP1A.210812.016 V14.0.5.0.SJNCNXM release-keys -ro.miui.ui.version.code=14 -ro.miui.ui.version.name=V140 -ro.vendor.build.software.version=Android12_140 -ro.miui.version.code_time=1688486400 +ro.system_ext.build.fingerprint=Xiaomi/missi/missi:13/TP1A.220624.014/V816.0.2.0.TJLCNXM:user/release-keys +ro.system_ext.build.version.incremental=V816.0.2.0.TJLCNXM ``` ## vendor分区修改,整体上保留10x,但要注意以下部分 +vendor\app +删除Joyose空文件夹 miui14新增misys服务相关文件 vendor\bin\hw\vendor.xiaomi.hardware.misys@4.0-service vendor\etc\init\vendor.xiaomi.hardware.misys@4.0-service.rc +保留10x振动马达相关文件,从底包的system\system\etc\excluded-input-devices.xml复制过来 +vendor\etc\excluded-input-devices.xml + 修改权限设置文件,增加misys服务 以及之前有提到过的miui14新增的记录分区相关权限,由于内核没有实际升级,所以这段感觉上无效 vendor\etc\selinux\vendor_file_contexts @@ -203,6 +278,10 @@ cam_cal_device ebr_device expdb_device fat_device logo_device loop-control_devic (allow hal_misys_default cust_block_device (blk_file (ioctl read getattr lock map open watch watch_reads))) (allow hal_misys_default expdb_block_device (blk_file (ioctl read getattr lock map open watch watch_reads))) ``` +可改可不改,因为sepolicy的大头在找个文件里 +precompiled_sepolicy +这玩意只能从源码编译出来,不能二次编辑,所以上面其实是改了个寂寞 + miui14新增misys服务相关文件 vendor\etc\vintf\manifest\vendor.xiaomi.hardware.misys@4.0.xml vendor\lib\hw\vendor.xiaomi.hardware.misys@4.0-impl.so @@ -210,45 +289,158 @@ vendor\lib\vendor.xiaomi.hardware.misys@4.0.so vendor\lib64\hw\vendor.xiaomi.hardware.misys@4.0-impl.so vendor\lib64\vendor.xiaomi.hardware.misys@4.0.so +相机加速配置文件 +vendor\odm\etc\camera\camerabooster.json +``` +{ + "version": "1.0", + "product": "bomb", + "threshold": { + "lowerAdj_freeMem_threshold": 307200, + "update_state_delay_ms": 5000, + "skip_task":1 + }, + "support": { + "mms_camcpt_enable": true, + "adj_swap_support": true, + "perceptible_support": true + }, + "configs_6Gmem": [ + { + "name": "white_list", + "config": [ + "com.android.camera", + "com.miui.home", + "com.tencent.mm", + "com.tencent.mm:push", + "com.tencent.mobileqq:MSF", + "com.tencent.qqmusic:QQPlayerService", + "com.ss.android.lark.kami:wschannel", + "com.xiaomi.mi_connect_service", + "com.phonetest.application:CameraMemoryWatcher" + ] + } + ], + "threshold_6Gmem": { + "lowerAdj_freeMem_threshold": 307200, + "cam_boost_threshold": 2621440, + "update_state_delay_ms": 5000, + "skip_task_lower":1, + "kill_tag": 7, + "lowAdj_threshold": 0 + } +} +``` build.prop修改编译日期和指纹、版本号 vendor\odm\etc\build.prop ``` +ro.product.odm.cert=M2004J7BC + ro.odm.build.date=Wed Jul 5 20:16:31 CST 2023 ro.odm.build.date.utc=1688559391 -ro.odm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.odm.build.version.incremental=V14.0.5.0.SJNCNXM +ro.odm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJLCNXM:user/release-keys +ro.odm.build.version.incremental=V14.0.5.0.SJLCNXM ``` build.prop修改编译日期和指纹、版本号 vendor\odm_dlkm\etc\build.prop ``` ro.odm_dlkm.build.date=Wed Jul 5 20:16:31 CST 2023 ro.odm_dlkm.build.date.utc=1688559391 -ro.odm_dlkm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.odm_dlkm.build.version.incremental=V14.0.5.0.SJNCNXM +ro.odm_dlkm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJLCNXM:user/release-keys +ro.odm_dlkm.build.version.incremental=V14.0.5.0.SJLCNXM ``` build.prop修改编译日期和指纹、版本号 vendor\vendor_dlkm\etc\build.prop ``` ro.vendor_dlkm.build.date=Wed Jul 5 20:16:31 CST 2023 ro.vendor_dlkm.build.date.utc=1688559391 -ro.vendor_dlkm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.vendor_dlkm.build.version.incremental=V14.0.5.0.SJNCNXM +ro.vendor_dlkm.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJLCNXM:user/release-keys +ro.vendor_dlkm.build.version.incremental=V14.0.5.0.SJLCNXM ``` build.prop修改编译日期和指纹、版本号 vendor\build.prop ``` ro.vendor.build.date=Wed Jul 5 20:16:31 CST 2023 ro.vendor.build.date.utc=1688559391 -ro.vendor.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJNCNXM:user/release-keys -ro.vendor.build.version.incremental=V14.0.5.0.SJNCNXM +ro.vendor.build.fingerprint=Redmi/bomb/bomb:12/SP1A.210812.016/V14.0.5.0.SJLCNXM:user/release-keys +ro.vendor.build.version.incremental=V14.0.5.0.SJLCNXM + +# 机型代号 +ro.product.vendor.cert=M2004J7BC + +# 玄学代码,提高显示流畅性,分辨率调整 +#latch unsignaled buffer to improve display fluency +debug.sf.latch_unsignaled=1 +#disable backpressure to improve display fluency +debug.sf.disable_backpressure=1 +#default resolution and density +persist.sys.miui_resolution=1080,2400,440 + +# 其他属性 +ro.rom.zone=1 +ro.product.mod_device=bomb +ro.vendor.mtk_aod_support=1 + +# 游戏加载加速 +debug.game.video.support=true +debug.game.video.speed=true ``` -## 重新打包system、vendor、product分区 +删除恢复官方recovery功能的相关文件 +vendor\bin\install-recovery.sh +vendor\etc\init\vendor_flash_recovery.rc +vendor\recovery-from-boot.p + +修改fstab,添加mi_ext、system_ext分区,添加overlay相关代码 +vendor\etc\fstab.emmc +vendor\etc\fstab.mt6873 +``` +system_ext /system_ext ext4 ro wait,,logical,first_stage_mount + +mi_ext /mnt/vendor/mi_ext ext4 ro wait,,logical,first_stage_mount,nofail + +/mnt/vendor/mi_ext /mi_ext ext4 ro,bind wait,nofail +overlay /product/overlay overlay ro,lowerdir=/mnt/vendor/mi_ext/product/overlay/:/product/overlay check,nofail +overlay /product/app overlay ro,lowerdir=/mnt/vendor/mi_ext/product/app/:/product/app check,nofail +overlay /product/priv-app overlay ro,lowerdir=/mnt/vendor/mi_ext/product/priv-app/:/product/priv-app check,nofail +overlay /product/lib overlay ro,lowerdir=/mnt/vendor/mi_ext/product/lib/:/product/lib check,nofail +overlay /product/lib64 overlay ro,lowerdir=/mnt/vendor/mi_ext/product/lib64/:/product/lib64 check,nofail +overlay /product/bin overlay ro,lowerdir=/mnt/vendor/mi_ext/product/bin/:/product/bin check,nofail +overlay /product/framework overlay ro,lowerdir=/mnt/vendor/mi_ext/product/framework/:/product/framework check,nofail +overlay /product/media overlay ro,lowerdir=/mnt/vendor/mi_ext/product/media/:/product/media check,nofail +overlay /product/opcust overlay ro,lowerdir=/mnt/vendor/mi_ext/product/opcust/:/product/opcust check,nofail +overlay /product/data-app overlay ro,lowerdir=/mnt/vendor/mi_ext/product/data-app/:/product/data-app check,nofail +overlay /product/etc/sysconfig overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/sysconfig/:/product/etc/sysconfig check,nofail +overlay /product/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/permissions/:/product/etc/permissions check,nofail +overlay /system/app overlay ro,lowerdir=/mnt/vendor/mi_ext/system/app/:/product/pangu/system/app/:/system/app check,nofail +overlay /system/priv-app overlay ro,lowerdir=/mnt/vendor/mi_ext/system/priv-app/:/product/pangu/system/priv-app/:/system/priv-app check,nofail +overlay /system/framework overlay ro,lowerdir=/product/pangu/system/framework/:/system/framework check,nofail +overlay /system/etc/sysconfig overlay ro,lowerdir=/mnt/vendor/mi_ext/system/etc/sysconfig/:/system/etc/sysconfig check,nofail +overlay /system/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/system/etc/permissions/:/product/pangu/system/etc/permissions/:/system/etc/permissions check,nofail +overlay /system/lib overlay ro,lowerdir=/product/pangu/system/lib/:/system/lib check,nofail +overlay /system/lib64 overlay ro,lowerdir=/product/pangu/system/lib64/:/system/lib64 check,nofail +overlay /product/usr overlay ro,lowerdir=/mnt/vendor/mi_ext/product/usr:/product/usr check,nofail +overlay /product/etc/precust_theme overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/precust_theme:/product/etc/precust_theme check,nofail +overlay /product/etc/preferred-apps overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/preferred-apps:/product/etc/preferred-apps check,nofail +overlay /product/etc/security overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/security:/product/etc/security check,nofail +overlay /system_ext/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/system_ext/etc/permissions:/system_ext/etc/permissions check,nofail +``` +可选关闭avb验证,修改fstab文件去除avb代码 +vendor\etc\fstab.emmc +vendor\etc\ffstab.mt6873 +把system那一行的flags从`,avb_keys=`开始把后面的内容全删除,所有`,avb=vbmeta_system`删除,所有`,avb=vbmeta`删除,所有`,avb`删除 +## boot分区 +ramdisk\fstab.emmc +ramdisk\fstab.mt6873 +照搬vendor\etc\fstab.emmc和fstab.mt6873 + +使用https://github.com/R0rt1z2/mtk-bpf-patcher 工具,修补kernel文件,修复bpf问题导致的无法开机 +## 重新打包mi_ext、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 使用img2simg工具把raw image转换为sparse image, 使用img2sdat把sparse image转换为dat格式, 使用brotli把dat格式转换为new.dat.br格式, 就可以替换进zip卡刷包里了 -解包打包偷懒就找个安卓工具箱,dna、多幸运之类的,直接一键打包成br +解包打包偷懒就找个安卓工具箱,米欧、dna、多幸运之类的,直接一键打包 ## 动态分区配置列表 刷入卡刷包的时候会根据这个文件调整手机里动态分区的实际分布,根据上面打包得到的raw image文件大小,修改文件里对应的rawimg字节大小 @@ -260,6 +452,16 @@ resize system rawimg字节大小 resize vendor rawimg字节大小 # Grow partition product from 0 to rawimg字节大小 resize product rawimg字节大小 + +#加上mi_ext、system_ext分区 +add mi_ext main +# Add partition system_ext to group main +add system_ext main + +# Grow partition mi_ext from 0 to rawimg字节大小 +resize mi_ext rawimg字节大小 +# Grow partition system_ext from 0 to rawimg字节大小 +resize system_ext rawimg字节大小 ``` ## avb验证文件,直接替换成关闭avb的文件 vbmeta.img From 7720a03f626bd8ef4c1af87edb5109939c4f5888 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Thu, 29 Feb 2024 22:14:14 +0800 Subject: [PATCH 21/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=BA=95=E5=8C=85?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E4=B8=BAELISH=5FOS1.0.1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 提一嘴有关平板管家桌面图标的问题 替换小爱翻译版本 修改机型配置文件里的预装app列表 调整AospFrameworkResOverlay.apk的描述 替换默认开机动画 --- XIAOMIPAD5PRO.md | 84 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 78 insertions(+), 6 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index c32e3e6..5dbd06b 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6S Pro 12.4英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于miui_ELISH_V14.0.5.0,移植文件来源于SHENG_OS1.0.4.0 +基于ELISH_OS1.0.1.0,移植文件来源于SHENG_OS1.0.4.0 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 @@ -17,7 +17,15 @@ ro.mi.os.version.incremental=OS1.0.4.0.UKYCNXM ``` 按需精简 预装画世界Pro,用来绘画的app? -mi_ext\product\data-app\HsjPro\HsjPro.apk +mi_ext\product\data-app\HsjPro\HsjPro.apk + +这里提一句,比较新的机型的剃刀计划版本也比较新,支持卸载平板/手机管家,而版本不兼容就导致了部分机型移植完桌面没有平板/手机管家的图标,这里把有相关影响的内容列出来 +mi_ext\etc\build.prop里面有一行`ro.miui.support.system.app.uninstall.v2=true` +mi_ext\product\etc\permissions\platform-miui-uninstall.xml +mi_ext\product\framework\miui-uninstall-empty.jar +mi_ext\product\overlay\signed_PLATFORM_cf766d1e91_app_sec_overlay-release-unsigned.apk + +product\data-app\MIUISecurityManager\MIUISecurityManager.apk ## odm分区无修改 这个分区是跟vendor分区配套的,目前无需修改 ## product分区修改,整体上照搬6s Pro,但要注意以下部分 @@ -28,9 +36,8 @@ product\app\MSLgRdp product\data-app\WpsLauncher product\app -删除骁龙870算力不够导致离线字幕识别功能闪退,无法使用的6s Pro小爱翻译 AiAsstVision -保留5pro小爱翻译 AiAsstVision(MIUI 14内置的版本号是3.2.7,目前可以用在线字幕识别的8月最新版是3.3.3) -(目前12月小米在应用商店全平台推送了4.7.0更新,这个版本据说在开发版上可以启动字幕识别在线模型兼容算力不足老设备,但是我测试的在这个版本澎湃上还是离线模型闪退,所以不更新) +保留5pro小爱翻译 AiAsstVision +(a13澎湃内置的版本号是4.6.0,应用商店更新后可以正常使用实时字幕) 保留5pro人脸识别解锁 MiuiBiometric3373 按需精简 @@ -77,7 +84,69 @@ product\data-app\SmartHome 所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫sheng.xml,都放进去,这样用哪个代号也不要紧 product\etc\device_features\elish.xml product\etc\device_features\sheng.xml +修改预装app列表(剃刀计划) +``` + + + com.xiaomi.pass + com.xiaomi.scanner + com.xiaomi.gamecenter + com.miui.weather2 + com.miui.notes + com.miui.compass + com.miui.calculator + com.android.email + com.miui.cleanmaster + com.mi.misupport + com.duokan.reader + com.mfashiongallery.emag + com.miui.personalassistant + com.miui.voip + com.miui.yellowpage + com.xiaomi.midrop + com.android.midrive + com.xiaomi.drivemode + com.miui.smarttravel + com.android.soundrecorder + com.miui.screenrecorder + + + + /system/data-app/XMPass/XMPass.apk + /system/data-app/MIUIScannerGlobal/MIUIScannerGlobal.apk + /system/data-app/GameCenter/GameCenter.apk + /system/data-app/MIUIWeatherGlobal/MIUIWeatherGlobal.apk + /system/data-app/MIUINotes/MIUINotes.apk + /system/data-app/MIUICompassGlobal/MIUICompassGlobal.apk + /system/data-app/MIUICalculatorGlobal/MIUICalculatorGlobal.apk + /system/data-app/Email/Email.apk + /system/data-app/CleanMaster/CleanMaster.apk + /system/data-app/MiSupport/MiSupport.apk + /system/data-app/com.duokan.reader/com.duokan.reader.apk + /system/data-app/MiGalleryLockscreen/MiGalleryLockscreen.apk + /system/data-app/PersonalAssistant/PersonalAssistant.apk + /system/data-app/MiuiVoip/MiuiVoip.apk + /system/data-app/YellowPage/YellowPage.apk + /system/data-app/MIDrop/MIDrop.apk + /system/data-app/MiDrive/MiDrive.apk + /system/data-app/MiuiDriveMode/MiuiDriveMode.apk + /system/data-app/SmartTravel/SmartTravel.apk + /system/data-app/MIUISoundRecorderTargetSdk30Global/MIUISoundRecorderTargetSdk30Global.apk + /system/data-app/MIUIScreenRecorderLiteGlobal/MIUIScreenRecorderLiteGlobal.apk + + + + com.xiaomi.scanner + com.miui.weather2 + com.miui.notes + com.miui.compass + com.miui.calculator + com.xiaomi.midrop + com.android.soundrecorder + com.miui.screenrecorder + +``` 修改屏幕亮度配置文件 product\etc\displayconfig\display_id_4630947038039379843.xml 目前6s Pro只有一家屏幕供应商,由于没有测试是否还有之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 @@ -89,7 +158,7 @@ product\etc\displayconfig\display_id_4630946545580055169.xml 这三个文件的内容是完全一样的,所以我选择删掉display_id_4630947038039379843.xml,并且保留这三个xml文件,屏幕亮度调节就正常了 这里需要注意Overlay里面的AospFrameworkResOverlay.apk要换成5Pro的,否则会遇到自动亮度导致系统软重启的问题 product\overlay\AospFrameworkResOverlay.apk -本来按理说是要反编译这个apk,对比澎湃os与miui14改动,修改到5Pro的文件上的,能力有限,不想努力了 +照搬官方澎湃,不用修改,好耶 build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 product\etc\build.prop @@ -135,6 +204,9 @@ persist.sys.minfree_8g=73728,92160,110592,387072,1105920,1451520 #作用未知 ro.control_privapp_permissions=log ``` +保留5pro本身开机动画(分辨率匹配屏幕) +product\media\bootanimation.zip + overlay保留5pro本身设备的apk DevicesAndroidOverlay主要影响圆角弧率、状态栏高度,aod服务(lcd没有) product\overlay\DevicesAndroidOverlay.apk From 7130ecbe82313a93521c6b8b04021f49e07621ab Mon Sep 17 00:00:00 2001 From: ymdzq <233900743@qq.com> Date: Sat, 9 Mar 2024 16:55:27 +0800 Subject: [PATCH 22/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A7=BB=E6=A4=8D?= =?UTF-8?q?=E5=B0=8F=E7=B1=B3=E5=B9=B3=E6=9D=BF6S=20Pro=E6=BE=8E=E6=B9=83O?= =?UTF-8?q?S1.0.5.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 替换音质音效app 调整屏幕刷新率设置界面 --- XIAOMIPAD5PRO.md | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 5dbd06b..af3908f 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6S Pro 12.4英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于ELISH_OS1.0.1.0,移植文件来源于SHENG_OS1.0.4.0 +基于ELISH_OS1.0.1.0,移植文件来源于SHENG_OS1.0.5.0 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 @@ -13,7 +13,7 @@ build.prop修改机型代号,这里这个代号是miui ota更新服务器用 mi_ext\etc\build.prop ``` ro.product.mod_device=elish -ro.mi.os.version.incremental=OS1.0.4.0.UKYCNXM +ro.mi.os.version.incremental=OS1.0.5.0.UKYCNXM ``` 按需精简 预装画世界Pro,用来绘画的app? @@ -38,6 +38,8 @@ product\data-app\WpsLauncher product\app 保留5pro小爱翻译 AiAsstVision (a13澎湃内置的版本号是4.6.0,应用商店更新后可以正常使用实时字幕) +保留5pro音质音效 MiSound +(今天看迷宫饭第10集的时候人声有点怪,怀疑是这个东西的问题) 保留5pro人脸识别解锁 MiuiBiometric3373 按需精简 @@ -146,6 +148,10 @@ product\etc\device_features\sheng.xml com.miui.screenrecorder + + true + + 120 ``` 修改屏幕亮度配置文件 product\etc\displayconfig\display_id_4630947038039379843.xml @@ -164,8 +170,8 @@ build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys -ro.product.build.version.incremental=V816.0.4.0.UKYCNXM +ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys +ro.product.build.version.incremental=V816.0.5.0.UKYCNXM persist.miui.density_v2=360 ro.sf.lcd_density=360 @@ -243,22 +249,22 @@ system\system\framework\services.jar build.prop修改机型代号、版本指纹 system\system\system_dlkm\etc\build.prop ``` -ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys -ro.system_dlkm.build.version.incremental=V816.0.4.0.UKYCNXM +ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys +ro.system_dlkm.build.version.incremental=V816.0.5.0.UKYCNXM ``` system\system\build.prop ``` -ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys -ro.system.build.version.incremental=V816.0.4.0.UKYCNXM -ro.build.version.incremental=V816.0.4.0.UKYCNXM +ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys +ro.system.build.version.incremental=V816.0.5.0.UKYCNXM +ro.build.version.incremental=V816.0.5.0.UKYCNXM ``` ## system_ext分区不修改,直接照搬6s Pro 可选修改 build.prop修改机型代号、版本指纹 system_ext\etc\build.prop ``` -ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.4.0.UKYCNXM:user/release-keys -ro.system_ext.build.version.incremental=V816.0.4.0.UKYCNXM +ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys +ro.system_ext.build.version.incremental=V816.0.5.0.UKYCNXM ``` ## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 From ebd09b8905352954f7b30ba212296054842c837f Mon Sep 17 00:00:00 2001 From: ymdzq <233900743@qq.com> Date: Sat, 9 Mar 2024 22:16:21 +0800 Subject: [PATCH 23/27] =?UTF-8?q?=E5=8F=96=E6=B6=88=E6=9B=BF=E6=8D=A2?= =?UTF-8?q?=E9=9F=B3=E8=B4=A8=E9=9F=B3=E6=95=88app?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增高级材质玄学代码开启小米阴影 去除vendor部分代码修改 --- XIAOMIPAD5PRO.md | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index af3908f..d634d31 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -38,8 +38,6 @@ product\data-app\WpsLauncher product\app 保留5pro小爱翻译 AiAsstVision (a13澎湃内置的版本号是4.6.0,应用商店更新后可以正常使用实时字幕) -保留5pro音质音效 MiSound -(今天看迷宫饭第10集的时候人声有点怪,怀疑是这个东西的问题) 保留5pro人脸识别解锁 MiuiBiometric3373 按需精简 @@ -191,6 +189,7 @@ ro.millet.netlink=29 #开启高级材质选项 persist.sys.background_blur_supported=true persist.sys.background_blur_version=2 +persist.sys.mi_shadow_supported=true #6max多了的两行玄学优化,平滑圆角 persist.sys.support_view_smoothcorner=true @@ -269,13 +268,6 @@ ro.system_ext.build.version.incremental=V816.0.5.0.UKYCNXM ## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 ``` -#注释掉重复定义的机型代号 -#ro.product.mod_device=elish -#注释掉旧的关闭音频负载代码? -#vendor.audio.offload.track.enable=false -#注释掉旧的millet配置 -#persist.sys.millet.cgroup1=true - #玄学优化代码 # fix the drop frame issus ro.surface_flinger.enable_frame_rate_override=false @@ -284,7 +276,6 @@ ro.vendor.mi_sf.ultimate.perf.support=true ro.surface_flinger.use_content_detection_for_refresh_rate=false ro.surface_flinger.set_touch_timer_ms=0 ro.surface_flinger.set_idle_timer_ms=0 -vendor.perf.framepacing.enable=false ro.build.recovery.version.release=14 debug.sf.auto_latch_unsignaled=0 vendor.display.enable_display_extensions=1 From a6b13b9bf5ceec2d80abeb1ef9ba1b16e89833cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Fri, 22 Mar 2024 21:14:46 +0800 Subject: [PATCH 24/27] =?UTF-8?q?=E6=94=B9=E6=AD=A3=E6=8D=A2=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XIAOMIPAD5PRO.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index d634d31..cc6177b 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -244,7 +244,7 @@ product\etc\permissions\privapp-permissions-product.xml ## system分区不修改,直接照搬6s Pro 可选修改 核心破解,如果你需要修改某些系统app,就需要自己修改services.jar文件 -system\system\framework\services.jar +system\system\framework\services.jar build.prop修改机型代号、版本指纹 system\system\system_dlkm\etc\build.prop ``` From 96b950892ca6639b3592085b7ec002558e05605d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Fri, 22 Mar 2024 21:56:54 +0800 Subject: [PATCH 25/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A7=BB=E6=A4=8D?= =?UTF-8?q?=E5=B0=8F=E7=B1=B3=E5=B9=B3=E6=9D=BF6S=20Pro=E6=BE=8E=E6=B9=83O?= =?UTF-8?q?S1.0.7.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新小爱翻译版本 加入背景模糊代码? 更新传送门版本 加入签名破解 加入白羊唐黎明的状态栏歌词 --- XIAOMIPAD5PRO.md | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index cc6177b..069c6e4 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6S Pro 12.4英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于ELISH_OS1.0.1.0,移植文件来源于SHENG_OS1.0.5.0 +基于ELISH_OS1.0.1.0,移植文件来源于SHENG_OS1.0.7.0 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 @@ -13,10 +13,10 @@ build.prop修改机型代号,这里这个代号是miui ota更新服务器用 mi_ext\etc\build.prop ``` ro.product.mod_device=elish -ro.mi.os.version.incremental=OS1.0.5.0.UKYCNXM +ro.mi.os.version.incremental=OS1.0.7.0.UKYCNXM ``` 按需精简 -预装画世界Pro,用来绘画的app? +预装画世界Pro,用来绘画的app? mi_ext\product\data-app\HsjPro\HsjPro.apk 这里提一句,比较新的机型的剃刀计划版本也比较新,支持卸载平板/手机管家,而版本不兼容就导致了部分机型移植完桌面没有平板/手机管家的图标,这里把有相关影响的内容列出来 @@ -37,7 +37,7 @@ product\data-app\WpsLauncher product\app 保留5pro小爱翻译 AiAsstVision -(a13澎湃内置的版本号是4.6.0,应用商店更新后可以正常使用实时字幕) +(a13澎湃内置的版本号是4.6.0,更新为应用商店4.9.0在线字幕版本,可能需要使用模块解锁实时字幕功能) 保留5pro人脸识别解锁 MiuiBiometric3373 按需精简 @@ -190,6 +190,7 @@ ro.millet.netlink=29 persist.sys.background_blur_supported=true persist.sys.background_blur_version=2 persist.sys.mi_shadow_supported=true +persist.sys.background_blur_mode=0 #6max多了的两行玄学优化,平滑圆角 persist.sys.support_view_smoothcorner=true @@ -232,7 +233,7 @@ product\app\MIUITouchAssistant product\data-app\MIGalleryLockscreen-MIUI15\MIGalleryLockscreen-MIUI15.apk 指南针 product\data-app\MIUICompass\MIUICompass.apk -传送门 +传送门(更新为网络来源3.2.5版本,支持横屏触发) product\priv-app\MIUIContentExtension\MIUIContentExtension.apk 添加传送门所需权限 product\etc\permissions\privapp-permissions-product.xml @@ -243,7 +244,7 @@ product\etc\permissions\privapp-permissions-product.xml ``` ## system分区不修改,直接照搬6s Pro 可选修改 -核心破解,如果你需要修改某些系统app,就需要自己修改services.jar文件 +签名破解,要修改系统app,就需要修改services.jar文件,我这里使用的SYT_ROM工具提供的插件自动修改 system\system\framework\services.jar build.prop修改机型代号、版本指纹 system\system\system_dlkm\etc\build.prop @@ -259,6 +260,13 @@ ro.build.version.incremental=V816.0.5.0.UKYCNXM ``` ## system_ext分区不修改,直接照搬6s Pro 可选修改 +状态栏歌词(作者来自酷安 白羊唐黎明) +system_ext\priv-app\MiuiSystemUI +反编译MiuiSystemUI.apk,修改完成后替换,并删除两个oat文件 +system_ext\priv-app\Settings +反编译Settings.apk,修改完成后替换,并删除两个oat文件 +我这里使用的方法是先把两个apk复制到新建文件夹,然后使用[APKEditor](https://github.com/REAndroid/APKEditor) 反编译,得到MiuiSystemUI_decompile_xml和Settings_decompile_xml文件夹,按照酷安教程修改,他原教程是使用手机修改的,用电脑修改会稍微有点区别,具体修改内容可以参考我上传的[pad6sp_statusbar_lyric](https://github.com/ymdzq/pad6sp_statusbar_lyric/)仓库,如果你git玩得溜可以git format-patch fa8db76..7b9100b输出我的修改为补丁文件,按照你反编译得到的NotificationMediaManager$1.smali实际文件内容,修改补丁中go/retraceme后面的那一串代码,然后git apply命令一键应用补丁完成修改 + build.prop修改机型代号、版本指纹 system_ext\etc\build.prop ``` From 615cc77b93255386338d16e62ae9c85b961dce20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sat, 25 May 2024 11:14:12 +0800 Subject: [PATCH 26/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=BA=95=E5=8C=85?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E4=B8=BAELISH=5FOS1.0.2.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更改odm、boot、vendor_boot描述, 内置小爱翻译不升级,避免闪退, 修正所有版本指纹, 调整玄学优化代码, 内置完美横屏计划、完美图标计划文件, 开启通信共享, 更换相机apk,仅版本号提升, 状态栏歌词更新3.2.0 更新gpu驱动为762.10O --- XIAOMIPAD5PRO.md | 95 +++++++++++++++++++++--------------------------- 1 file changed, 42 insertions(+), 53 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 069c6e4..3424ba5 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,6 +1,6 @@ # 小米平板5 PRO 移植小米平板6S Pro 12.4英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于ELISH_OS1.0.1.0,移植文件来源于SHENG_OS1.0.7.0 +基于ELISH_OS1.0.2.0,移植文件来源于SHENG_OS1.0.7.0 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 @@ -26,7 +26,7 @@ mi_ext\product\framework\miui-uninstall-empty.jar mi_ext\product\overlay\signed_PLATFORM_cf766d1e91_app_sec_overlay-release-unsigned.apk product\data-app\MIUISecurityManager\MIUISecurityManager.apk -## odm分区无修改 +## odm分区,用5pro的,不用改 这个分区是跟vendor分区配套的,目前无需修改 ## product分区修改,整体上照搬6s Pro,但要注意以下部分 pc版wps相关文件 @@ -37,8 +37,9 @@ product\data-app\WpsLauncher product\app 保留5pro小爱翻译 AiAsstVision -(a13澎湃内置的版本号是4.6.0,更新为应用商店4.9.0在线字幕版本,可能需要使用模块解锁实时字幕功能) +(a13澎湃内置的版本号是4.6.0,可能需要使用模块解锁实时字幕功能) 保留5pro人脸识别解锁 MiuiBiometric3373 +替换AnalyticsCore(来自白羊唐黎明) 按需精简 快应用服务引擎 @@ -147,9 +148,14 @@ product\etc\device_features\sheng.xml + true 120 + + 120 + 60 + ``` 修改屏幕亮度配置文件 product\etc\displayconfig\display_id_4630947038039379843.xml @@ -168,8 +174,8 @@ build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys -ro.product.build.version.incremental=V816.0.5.0.UKYCNXM +ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys +ro.product.build.version.incremental=V816.0.7.0.UKYCNXM persist.miui.density_v2=360 ro.sf.lcd_density=360 @@ -190,7 +196,6 @@ ro.millet.netlink=29 persist.sys.background_blur_supported=true persist.sys.background_blur_version=2 persist.sys.mi_shadow_supported=true -persist.sys.background_blur_mode=0 #6max多了的两行玄学优化,平滑圆角 persist.sys.support_view_smoothcorner=true @@ -208,8 +213,21 @@ persist.sys.minfree_6g=73728,92160,110592,258048,663552,903168 persist.sys.minfree_8g=73728,92160,110592,387072,1105920,1451520 #作用未知 -ro.control_privapp_permissions=log +ro.audio.3d_play=true ``` +内置完美横屏计划 +product\etc\autoui_list.xml +product\etc\embedded_rules_list.xml +product\etc\fixed_orientation_list.xml + +内置完美图标计划 +product\media\theme\default\dynamicicons +product\media\theme\default\icons +product\media\theme\default\miui_mod_icons\ + +默认开启通信共享 +product\media\theme\default\framework-miui-res + 保留5pro本身开机动画(分辨率匹配屏幕) product\media\bootanimation.zip @@ -220,10 +238,12 @@ DevicesOverlay主要影响导航栏(小白条)布局以及圆角,充电动 product\overlay\DevicesOverlay.apk MiuiFrameworkResOverlay主要影响屏幕hbm背光、hbm亮度曲线、以及一些网络制式的属性 product\overlay\MiuiFrameworkResOverlay.apk +MiuiBiometricResOverlay人脸识别资源文件空包 +product\overlay\MiuiBiometricResOverlay.apk 删除6s Pro相机,否则会提示机型不匹配无法使用然后退出, 目前澎湃只能用5.0以上版本的相机,老apk无法使用,同样会提示机型不匹配无法使用然后退出, -直接抄暮间雾大佬修改的相机,其他选择只能用谷歌相机、骁龙相机这种第三方相机 +直接抄闪电flasshh的5.1通用相机,其他选择只能用谷歌相机、骁龙相机这种第三方相机 product\priv-app\MiuiCamera 并且删除两个oat文件 ## 可选product分区修改,补全小米平板缺失的工具app @@ -249,14 +269,14 @@ system\system\framework\services.jar build.prop修改机型代号、版本指纹 system\system\system_dlkm\etc\build.prop ``` -ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys -ro.system_dlkm.build.version.incremental=V816.0.5.0.UKYCNXM +ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys +ro.system_dlkm.build.version.incremental=V816.0.7.0.UKYCNXM ``` system\system\build.prop ``` -ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys -ro.system.build.version.incremental=V816.0.5.0.UKYCNXM -ro.build.version.incremental=V816.0.5.0.UKYCNXM +ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys +ro.system.build.version.incremental=V816.0.7.0.UKYCNXM +ro.build.version.incremental=V816.0.7.0.UKYCNXM ``` ## system_ext分区不修改,直接照搬6s Pro 可选修改 @@ -265,13 +285,13 @@ system_ext\priv-app\MiuiSystemUI 反编译MiuiSystemUI.apk,修改完成后替换,并删除两个oat文件 system_ext\priv-app\Settings 反编译Settings.apk,修改完成后替换,并删除两个oat文件 -我这里使用的方法是先把两个apk复制到新建文件夹,然后使用[APKEditor](https://github.com/REAndroid/APKEditor) 反编译,得到MiuiSystemUI_decompile_xml和Settings_decompile_xml文件夹,按照酷安教程修改,他原教程是使用手机修改的,用电脑修改会稍微有点区别,具体修改内容可以参考我上传的[pad6sp_statusbar_lyric](https://github.com/ymdzq/pad6sp_statusbar_lyric/)仓库,如果你git玩得溜可以git format-patch fa8db76..7b9100b输出我的修改为补丁文件,按照你反编译得到的NotificationMediaManager$1.smali实际文件内容,修改补丁中go/retraceme后面的那一串代码,然后git apply命令一键应用补丁完成修改 +我这里使用的方法是先把两个apk复制到新建文件夹,然后使用[APKEditor](https://github.com/REAndroid/APKEditor) 反编译,得到MiuiSystemUI_decompile_xml和Settings_decompile_xml文件夹,按照酷安教程修改,他原教程是使用手机修改的,用电脑修改会稍微有点区别,具体修改内容可以参考我上传的[pad6sp_statusbar_lyric](https://github.com/ymdzq/pad6sp_statusbar_lyric/)仓库,他附件提供的有一个xml是加密xml,电脑上处理不了,所以那个xml我是直接从他的米13官改包里反编译拿的 build.prop修改机型代号、版本指纹 system_ext\etc\build.prop ``` -ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.5.0.UKYCNXM:user/release-keys -ro.system_ext.build.version.incremental=V816.0.5.0.UKYCNXM +ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys +ro.system_ext.build.version.incremental=V816.0.7.0.UKYCNXM ``` ## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 @@ -286,45 +306,14 @@ ro.surface_flinger.set_touch_timer_ms=0 ro.surface_flinger.set_idle_timer_ms=0 ro.build.recovery.version.release=14 debug.sf.auto_latch_unsignaled=0 -vendor.display.enable_display_extensions=1 ``` `ro.millet.netlink`上面已经加到product分区的build.prop里了,所以vendor里不需要重复添加 -可选修改fstab.qcom:是否更新mi_ext分区相关内容,另外不推荐动userdata,一个搞不好就用户数据火葬场 -``` -/mnt/vendor/mi_ext /mi_ext none ro,bind wait,nofail -#改成 -/mnt/vendor/mi_ext /mi_ext ext4 ro,bind wait,nofail -#添加更多overlay挂载文件夹 -overlay /product/usr overlay ro,lowerdir=/mnt/vendor/mi_ext/product/usr:/product/usr check,nofail -overlay /product/etc/precust_theme overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/precust_theme:/product/etc/precust_theme check,nofail -overlay /product/etc/preferred-apps overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/preferred-apps:/product/etc/preferred-apps check,nofail -overlay /product/etc/security overlay ro,lowerdir=/mnt/vendor/mi_ext/product/etc/security:/product/etc/security check,nofail -overlay /system_ext/etc/permissions overlay ro,lowerdir=/mnt/vendor/mi_ext/system_ext/etc/permissions:/system_ext/etc/permissions check,nofail -``` -vendor\ueventd.rc -``` -#删除 -/dev/hw_random 0600 root root -``` -## boot分区 -这个地方主要是影响官方recovery,改不改影响不大 -澎湃OS的mi_ext分区挂载文件系统类型有点改动,原来是none改成ext4,这个地方好像改不改影响不大 -ramdisk\system\etc\recovery.fstab -``` -/mnt/vendor/mi_ext /mi_ext none ro,bind wait,nofail -改成 -/mnt/vendor/mi_ext /mi_ext ext4 ro,bind wait,nofail -``` -ramdisk\system\etc\ueventd.rc -``` -/dev/hw_random 0440 root system -改成 -/dev/hw_random 0640 root system -``` -## vendor_boot分区 -ramdisk\first_stage_ramdisk\fstab.qcom -照搬vendor\etc\fstab.qcom +骁龙GPU驱动更新(来自酷安 诺蓝) +vendor\lib +vendor\lib64 +## boot分区,用5pro的,不用改 +## vendor_boot分区,用5pro的,不用改 ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区 先用make_ext4fs或者e2fsdroid+mke2fs打包为raw image, 然后用lpmake打包成super img @@ -333,7 +322,7 @@ vab机器一般是线刷用fastboot刷进super分区,卡刷是在recovery里 这种的情况就需要专门的脚本和工具了 由于无wps版由于不需要修改odm、vendor分区,所以理论上其实你可以直接用fastbootd模式刷入mi_ext、system、system_ext、product分区 dsu包的做法就是直接把mi_ext、system、system_ext、product分区的raw image文件打包成一个zip或者gz文件即可 -解包打包偷懒就找个安卓工具箱,米欧、dna、多幸运之类的,直接一键打包 +解包打包偷懒就找个安卓工具箱,SYT、米欧、dna、多幸运之类的,直接一键打包 ## 关闭avb验证 可选,修改fstab.qcom去除avb代码 vendor\etc\fstab.qcom From c0a4216fb2f70cd11b4eb777715e76d3f6e34ef7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=81=E9=97=B7=E5=BE=97=E6=92=9E=E5=A2=99?= <233900743@qq.com> Date: Sun, 3 Nov 2024 23:49:44 +0800 Subject: [PATCH 27/27] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A7=BB=E6=A4=8D?= =?UTF-8?q?=E5=B0=8F=E7=B1=B3=E5=B9=B3=E6=9D=BF6=20Pro=E6=BE=8E=E6=B9=83OS?= =?UTF-8?q?1.0.12.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充关于平板管家相关文件的来源说明 补充需要删除Biometric,否则可能存在人脸解锁失败的问题 需要从pad6(pipa)的rom里提取部分文件,减少移植bug 增加了一段zram配置代码,同样参考了pad6(pipa)的rom 删除了多余的vendor代码,修复了可能导致桌面卡顿的问题 不再更新gpu驱动 --- XIAOMIPAD5PRO.md | 120 +++++++++++++++++++++++++---------------------- 1 file changed, 65 insertions(+), 55 deletions(-) diff --git a/XIAOMIPAD5PRO.md b/XIAOMIPAD5PRO.md index 3424ba5..121b389 100644 --- a/XIAOMIPAD5PRO.md +++ b/XIAOMIPAD5PRO.md @@ -1,25 +1,23 @@ -# 小米平板5 PRO 移植小米平板6S Pro 12.4英寸 HyperOS记录 +# 小米平板5 PRO 移植小米平板6 Pro英寸 HyperOS记录 资源来源于网络,仅供交流学习,不得用做任何商业用途,不提供任何技术支持,请在下载后24小时内删除 -基于ELISH_OS1.0.2.0,移植文件来源于SHENG_OS1.0.7.0 +基于ELISH_OS1.0.2.0,移植文件来源于LIUQIN_OS1.0.12.0 这里推荐一下隔壁大佬的[HyperOS 移植项目](https://github.com/toraidl/hyperos_port),有很多移植澎湃的经验、修改启发 本文仅记录一下修改内容,具体修改行以及内容以实际文件对比结果为准 由于修改了系统文件,所以avb验证肯定是要关的,而想保证各种app兼容性,所以我选择保持selinux enforce,即不集成pc版wps 如果不集成,就不需要改vendor分区,随便在product分区里精简一点东西,就可以确保刷进机器那8.5G的super分区。 -## mi_ext分区修改,整体上照搬6s Pro,但要注意以下部分 +## mi_ext分区修改,合并6Pro、5Pro的所有文件 build.prop修改机型代号,这里这个代号是miui ota更新服务器用来识别推送更新用的,你都刷第三方rom了这个就不重要了,除非你能用到那个服务器推送更新 把这个东西改掉的好处就是可以屏蔽更新,不会收到移植的那个机型的更新,导致用户误升级变砖 修改版本号为UKYCNXM mi_ext\etc\build.prop ``` ro.product.mod_device=elish -ro.mi.os.version.incremental=OS1.0.7.0.UKYCNXM +ro.mi.os.version.publish=true +ro.mi.os.version.incremental=OS1.0.12.0.UKYCNXM ``` -按需精简 -预装画世界Pro,用来绘画的app? -mi_ext\product\data-app\HsjPro\HsjPro.apk -这里提一句,比较新的机型的剃刀计划版本也比较新,支持卸载平板/手机管家,而版本不兼容就导致了部分机型移植完桌面没有平板/手机管家的图标,这里把有相关影响的内容列出来 +这里提一句,比较新的机型的剃刀计划版本也比较新,支持卸载平板/手机管家,而版本不兼容就导致了部分机型移植完桌面没有平板/手机管家的图标,这里把有相关影响的内容列出来,这个部分提到的文件既不在6Pro的rom里也不在5Pro的rom里,需要从6Max(yudi)的rom中提取 mi_ext\etc\build.prop里面有一行`ro.miui.support.system.app.uninstall.v2=true` mi_ext\product\etc\permissions\platform-miui-uninstall.xml mi_ext\product\framework\miui-uninstall-empty.jar @@ -28,7 +26,7 @@ mi_ext\product\overlay\signed_PLATFORM_cf766d1e91_app_sec_overlay-release-unsign product\data-app\MIUISecurityManager\MIUISecurityManager.apk ## odm分区,用5pro的,不用改 这个分区是跟vendor分区配套的,目前无需修改 -## product分区修改,整体上照搬6s Pro,但要注意以下部分 +## product分区修改,整体上照搬6Pro,但要注意以下部分 pc版wps相关文件 访问linux容器的rdp后端MSLgRdp,PC 框架?和交互操作的前端WpsLauncher 不集成pc版wps可以直接删除 @@ -38,6 +36,7 @@ product\data-app\WpsLauncher product\app 保留5pro小爱翻译 AiAsstVision (a13澎湃内置的版本号是4.6.0,可能需要使用模块解锁实时字幕功能) +删除6pro人脸识别解锁 Biometric 保留5pro人脸识别解锁 MiuiBiometric3373 替换AnalyticsCore(来自白羊唐黎明) @@ -80,11 +79,11 @@ product\data-app\Padapp 米家 product\data-app\SmartHome -设备功能配置文件,本来正常代号要用elish稳定使用的话,删除sheng.xml,照搬elish.xml就好了, -但是如果你要全局改机器代号的话,这里配置文件也要改名成sheng.xml, -所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫sheng.xml,都放进去,这样用哪个代号也不要紧 +设备功能配置文件,本来正常代号要用elish稳定使用的话,删除liuqin.xml,照搬elish.xml就好了, +但是如果你要全局改机器代号的话,这里配置文件也要改名成liuqin.xml, +所以我是建议干脆把elish.xml复制两份一个叫elish.xml一个叫liuqin.xml,都放进去,这样用哪个代号也不要紧 product\etc\device_features\elish.xml -product\etc\device_features\sheng.xml +product\etc\device_features\liuqin.xml 修改预装app列表(剃刀计划) ``` @@ -158,24 +157,29 @@ product\etc\device_features\sheng.xml ``` 修改屏幕亮度配置文件 -product\etc\displayconfig\display_id_4630947038039379843.xml -目前6s Pro只有一家屏幕供应商,由于没有测试是否还有之前版本出现的`*** FATAL EXCEPTION IN SYSTEM PROCESS: android.display`报错无法开机的问题 +product\etc\displayconfig\display_id_4630947141052476290.xml +product\etc\displayconfig\display_id_4630947200012256898.xml 5pro屏幕的xml文件为: product\etc\displayconfig\display_id_19260527152667265.xml product\etc\displayconfig\display_id_4630946481717202305.xml product\etc\displayconfig\display_id_4630946545580055169.xml -这三个文件的内容是完全一样的,所以我选择删掉display_id_4630947038039379843.xml,并且保留这三个xml文件,屏幕亮度调节就正常了 +这三个文件的内容是完全一样的,所以我选择删掉display_id_4630947141052476290.xml和display_id_4630947200012256898.xml,并且保留这三个xml文件,屏幕亮度调节就正常了 这里需要注意Overlay里面的AospFrameworkResOverlay.apk要换成5Pro的,否则会遇到自动亮度导致系统软重启的问题 product\overlay\AospFrameworkResOverlay.apk 照搬官方澎湃,不用修改,好耶 +有几个东西我需要从pipa的rom里复制过来(因为都是骁龙870,比较接近) +product\etc\android_dm_table_a +product\etc\android_dm_table_b +product\etc\build.prop + build.prop修改机型代号、版本指纹,设置默认屏幕密度,关闭内存扩展 product\etc\build.prop ``` ro.product.product.name=elish -ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys -ro.product.build.version.incremental=V816.0.7.0.UKYCNXM +ro.product.build.fingerprint=Xiaomi/elish/miproduct:14/UKQ1.230804.001/V816.0.12.0.UKYCNXM:user/release-keys +ro.product.build.version.incremental=V816.0.12.0.UKYCNXM persist.miui.density_v2=360 ro.sf.lcd_density=360 @@ -183,15 +187,6 @@ ro.sf.lcd_density=360 #默认关闭内存扩展 persist.miui.extm.enable=0 -#修改ro.miui.cust_erofs改成 -ro.miui.cust_erofs=0 - -#修改ro.millet.netlink改成 -ro.millet.netlink=29 - -#删除ro.config.miui_screen_ratio这一行 -#ro.config.miui_screen_ratio=0.5 - #开启高级材质选项 persist.sys.background_blur_supported=true persist.sys.background_blur_version=2 @@ -201,17 +196,13 @@ persist.sys.mi_shadow_supported=true persist.sys.support_view_smoothcorner=true persist.sys.support_window_smoothcorner=true +#开启布局优化 +persist.miui.auto_ui_enable=true + #游戏加载加速? debug.game.video.speed=true debug.game.video.support=true -#加回5Pro本身的玄学优化,性能调度 -persist.sys.miui.sf_cores=4-7 -persist.vendor.display.miui.composer_boost=4-7 -persist.sys.minfree_def=73728,92160,110592,154832,482560,579072 -persist.sys.minfree_6g=73728,92160,110592,258048,663552,903168 -persist.sys.minfree_8g=73728,92160,110592,387072,1105920,1451520 - #作用未知 ro.audio.3d_play=true ``` @@ -241,7 +232,7 @@ product\overlay\MiuiFrameworkResOverlay.apk MiuiBiometricResOverlay人脸识别资源文件空包 product\overlay\MiuiBiometricResOverlay.apk -删除6s Pro相机,否则会提示机型不匹配无法使用然后退出, +删除6Pro相机,否则会提示机型不匹配无法使用然后退出, 目前澎湃只能用5.0以上版本的相机,老apk无法使用,同样会提示机型不匹配无法使用然后退出, 直接抄闪电flasshh的5.1通用相机,其他选择只能用谷歌相机、骁龙相机这种第三方相机 product\priv-app\MiuiCamera @@ -262,23 +253,27 @@ product\etc\permissions\privapp-permissions-product.xml ``` -## system分区不修改,直接照搬6s Pro +## system分区不修改,直接照搬6Pro 可选修改 +从pipa的rom里复制过来一些调度文件 +system\system\etc\cgroups_8250_u_stune.json +system\system\etc\task_profiles_8250_u_stune.json + 签名破解,要修改系统app,就需要修改services.jar文件,我这里使用的SYT_ROM工具提供的插件自动修改 system\system\framework\services.jar build.prop修改机型代号、版本指纹 system\system\system_dlkm\etc\build.prop ``` -ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys -ro.system_dlkm.build.version.incremental=V816.0.7.0.UKYCNXM +ro.system_dlkm.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.230804.001/V816.0.12.0.UKYCNXM:user/release-keys +ro.system_dlkm.build.version.incremental=V816.0.12.0.UKYCNXM ``` system\system\build.prop ``` -ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys -ro.system.build.version.incremental=V816.0.7.0.UKYCNXM -ro.build.version.incremental=V816.0.7.0.UKYCNXM +ro.system.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.230804.001/V816.0.12.0.UKYCNXM:user/release-keys +ro.system.build.version.incremental=V816.0.12.0.UKYCNXM +ro.build.version.incremental=V816.0.12.0.UKYCNXM ``` -## system_ext分区不修改,直接照搬6s Pro +## system_ext分区不修改,直接照搬6Pro 可选修改 状态栏歌词(作者来自酷安 白羊唐黎明) system_ext\priv-app\MiuiSystemUI @@ -290,28 +285,43 @@ system_ext\priv-app\Settings build.prop修改机型代号、版本指纹 system_ext\etc\build.prop ``` -ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.231003.002/V816.0.7.0.UKYCNXM:user/release-keys -ro.system_ext.build.version.incremental=V816.0.7.0.UKYCNXM +ro.system_ext.build.fingerprint=Android/missi_pad_cn/missi:14/UKQ1.230804.001/V816.0.12.0.UKYCNXM:user/release-keys +ro.system_ext.build.version.incremental=V816.0.12.0.UKYCNXM +``` +zram配置文件,改末尾 +system_ext\etc\perfinit_bdsize_zram.conf +``` + "product_name": ["houji"], + "zram_size": { + "8":8192 + } + } +``` +改成 +``` + "product_name": ["houji"], + "zram_size": { + "8":8192 + } + }, + { + "product_name": ["elish"], + "zram_size": { + "6":6144 + } + } ``` ## vendor分区修改,整体上用5pro的,但要注意以下部分 vendor/build.prop加入代码 ``` +vendor.audio.offload.track.enable=true + #玄学优化代码 # fix the drop frame issus ro.surface_flinger.enable_frame_rate_override=false -persist.vendor.mi_sf.optimize_for_refresh_rate.enable=1 -ro.vendor.mi_sf.ultimate.perf.support=true -ro.surface_flinger.use_content_detection_for_refresh_rate=false -ro.surface_flinger.set_touch_timer_ms=0 -ro.surface_flinger.set_idle_timer_ms=0 -ro.build.recovery.version.release=14 debug.sf.auto_latch_unsignaled=0 +vendor.display.enable_display_extensions=1 ``` -`ro.millet.netlink`上面已经加到product分区的build.prop里了,所以vendor里不需要重复添加 - -骁龙GPU驱动更新(来自酷安 诺蓝) -vendor\lib -vendor\lib64 ## boot分区,用5pro的,不用改 ## vendor_boot分区,用5pro的,不用改 ## 重新打包mi_ext、odm、system、system_ext、vendor、product分区