Android14 OTA升级速度过慢问题解决方案

软件版本:Android14

硬件平台:QCS6115

问题:OTA整包升级接近20min,太长无法忍受。

该问题为Android高版本的虚拟AB分区压缩技术所致,其实就是时间换空间,个人推测AB分区压缩会节约硬件存储空间,但是升级过程中会涉及解压缩再升级的耗时过程,取舍之间,我们计划关闭该配置,还有一个就是升级服务的进程用户组配置,这个大概提升五六分钟左右,两者结合起来,升级时长从20min缩减到五六分钟,达标!

改动如下:

1、分区压缩选项关闭:

bash 复制代码
diff --git a/target/product/virtual_ab_ota/android_t_baseline.mk b/target/product/virtual_ab_ota/android_t_baseline.mk
index 18e08e4e8e..2225a1dfbc 100644
--- a/target/product/virtual_ab_ota/android_t_baseline.mk
+++ b/target/product/virtual_ab_ota/android_t_baseline.mk
@@ -28,12 +28,12 @@ PRODUCT_VIRTUAL_AB_OTA := true
 
 PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.enabled=true
 
-PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.compression.enabled=true
+PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.compression.enabled=false
 PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.userspace.snapshots.enabled=true
 PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.io_uring.enabled=true
-PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.compression.xor.enabled=true
+PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.compression.xor.enabled=false
 
-PRODUCT_VIRTUAL_AB_COMPRESSION := true
+PRODUCT_VIRTUAL_AB_COMPRESSION := false
 PRODUCT_VIRTUAL_AB_COMPRESSION_METHOD ?= none
 PRODUCT_PACKAGES += \
     snapuserd \

2、配置进程用户组:

bash 复制代码
diff --git a/update_engine.rc b/update_engine.rc
index bc6447b2..d7a376d1 100644
--- a/update_engine.rc
+++ b/update_engine.rc
@@ -2,7 +2,7 @@ service update_engine /system/bin/update_engine --logtostderr --logtofile --fore
     class late_start
     user root
     group root system wakelock inet cache media_rw
-    task_profiles OtaProfiles
+    task_profiles CPUSET_SP_FOREGROUND
     disabled
 
 on property:ro.boot.slot_suffix=*

Mark it.

相关推荐
小阳睡不醒1 小时前
小白成长之路-部署Zabbix7(二)
android·运维
mmoyula2 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
你过来啊你5 小时前
Android用户鉴权实现方案深度分析
android·鉴权
kerli7 小时前
Android 嵌套滑动设计思想
android·客户端
恣艺8 小时前
LeetCode 854:相似度为 K 的字符串
android·算法·leetcode
阿华的代码王国9 小时前
【Android】相对布局应用-登录界面
android·xml·java
用户207038619499 小时前
StateFlow与SharedFlow如何取舍?
android
QmDeve9 小时前
原生Android Java调用系统指纹识别方法
android