You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

移植LineageOS 18.1至Tecno KD7出现APEX/boringssl相关启动循环故障

Tecno KD7 移植 LineageOS 18.1 启动循环故障分析

直接故障原因

本次启动循环的直接触发源为 boringssl-self-check-failed 逻辑:LineageOS 18.1 对应 Android 11 版本,系统默认内置 BoringSSL 自检流程,校验不通过时 init 进程会主动触发强制重启,最终形成启动循环。
日志中输出的 apexd: This device does not support updatable APEX. Exiting 为正常提示信息,仅说明设备配置为不支持可更新 APEX,不是故障直接诱因,无需优先排查。

根因定位方向

  • 分区库版本不匹配:如果移植时沿用了 Tecno KD7 原厂 Android 版本低于 11 的 vendor 分区,vendor 下自带的 libcrypto.so(BoringSSL 核心库)和你编译生成的 system 分区下的 libcrypto.so 编译配置、版本不兼容,就会触发自检失败。
  • 签名校验不通过:如果你编译时没有关闭 APEX 包签名校验,且预置的 APEX 包签名和系统预设签名不一致,会间接触发 BoringSSL 校验流程失败。
  • 挂载配置错误:设备树 fstab 中 system、system_ext、product、vendor 四个分区的挂载标签、SELinux 上下文配置错误,导致 BoringSSL 自检时无法读取预期的校验文件,也会触发该故障。

修复指引

  • 临时验证:可在设备树 init 配置中添加 setenforce 0 临时关闭 SELinux 后刷入测试,如果不再重启,说明是 SELinux 权限限制导致自检流程读取文件失败,后续补全相关 SELinux 规则即可。
  • 跳过自检验证:仅做功能验证的前提下,可在设备编译配置中添加 PRODUCT_BORINGSSL_SELF_CHECK := false 关闭 BoringSSL 自检,先验证其他系统功能是否正常。
  • 适配 vendor 接口:如果使用的是低于 Android 11 版本的原厂 vendor,需将编译生成的 libcrypto.so 同步替换到 vendor 分区对应路径,或开启 VNDK 兼容配置解决库版本差异问题。

内容的提问来源于stack exchange,提问作者Bret Joseph

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 23:24:03