提示:此文章是有关android系统动态分区BOARD_SUPER_PARTITION_SIZE 和BOARD_EXAMPLE_DYNAMIC_PARTITIONS_SIZE
前言
有时候在某分区中内置一些资源的时候,可能会意外发生编译报错问题,比如如下字眼:
RuntimeError: sum of sizes of [‘qti_dynamic_partitions’] is
greater than BOARD_SUPER_PARTITION_SIZE / 2:
6438256640 == 6438256640 > 3221225472 == 3221225472
如果发生此类错误就跟动态分区问题有关。
一、动态分区是什么?
动态分区是 Android 的用户空间分区系统。使用此分区系统,您可以在无线下载 (OTA) 更新期间创建、销毁分区或者调整分区大小。借助动态分区,供应商无需担心各个分区(例如 system、vendor 和 product)的大小。取而代之的是,设备分配一个 super 分区,其中的子分区可动态地调整大小。单个分区映像不再需要为将来的 OTA 预留空间。相反,super 中剩余的可用空间还可用于所有动态分区。
二、实现动态分区
1.设备配置开关更改
如需启用动态分区,请在 device.mk 中添加以下标记:
PRODUCT_USE_DYNAMIC
本文介绍了Android系统动态分区的概念,解决编译报错问题。动态分区允许在OTA更新时动态调整分区大小,免去预估分区空间需求。实现动态分区需在device.mk中启用标志并正确设置BOARD_SUPER_PARTITION_SIZE和BOARD_QTI_DYNAMIC_PARTITIONS_SIZE,同时注意不同启动类型的分区大小限制和开销计算。
订阅专栏 解锁全文
3316






