Chromium 浏览器引擎移植到 OHOS 平台
Chromium 浏览器引擎移植到 OHOS(OpenHarmony/HarmonyOS) 平台
·
Chromium 114 CEF Qt for OHOS
原文地址:https://devcloud.cn-north-4.huaweicloud.com/codehub/project/b19f5ea8ffd4492ea8c06ca2ebf3f858/codehub/2843951/home?ref=hw%2Fchromium%2Fohos%2F114.0.5735.248-cef-qt-dev&filePath=README.md&isFile=true
基于 Chromium 114.0.5735.248 版本,集成 CEF (Chromium Embedded Framework) 和 Qt,适配 OHOS (鸿蒙) 平台的浏览器引擎项目。
项目概述
本项目将 Chromium 浏览器引擎移植到 OHOS 平台,提供:
- CEF 集成:支持嵌入式浏览器控件开发
- Qt 支持:可选的 Qt 集成方案
- OHOS 适配:针对鸿蒙系统的原生适配
目录结构
.
├── src/ # Chromium 源代码目录
│ ├── cef/ # CEF 源代码
│ └── ...
├── patch/ # 补丁目录(按日期组织)
│ ├── 24_10_18/
│ ├── 24_10_25/
│ └── ...
├── build/ # 构建配置
│ ├── config/ # 构建配置文件
│ │ ├── default.json
│ │ └── ohos.json
│ └── config_to_gn.py
├── build.sh # 主构建脚本
├── get_chromium_114.sh # Chromium 源码获取脚本
├── app_define.json # 应用定义配置
└── VersionSet.xml # 版本配置
环境要求
- OHOS SDK
- BiSheng 编译器(用于 PGO 优化构建)
- depot_tools(Chromium 构建工具)
- ninja 构建系统
- ccache(可选,加速编译)
获取源码
./get_chromium_114.sh
该脚本将:
- 使用
fetch获取 Chromium 源码 - 切换到 114.0.5735.248 版本
- 同步依赖
构建说明
基本构建
# 构建 CEF(默认)
./build.sh musl_64
# 构建 Content Shell
./build.sh musl_64 -t c
# 构建 Chrome
./build.sh musl_64 -t b
支持的目标平台
| 参数 | 说明 |
|---|---|
musl_64 |
ARM64 架构,使用 musl C 库 |
构建选项
./build.sh [OPTIONS] [PRODUCT]
OPTIONS:
-j N 指定并行编译任务数
-ccache 启用 ccache 加速编译
-t <target> 构建目标: c(content_shell) / b(chrome)
-o <output_dir> 指定输出目录
-asan 启用 AddressSanitizer
-d Debug 模式构建
-isl 启用渲染进程沙箱隔离
-h 显示帮助信息
PGO 选项:
no_pgo 禁用 PGO
pgo_instrumentation_phase PGO 数据采集阶段
pgo_optimization_phase PGO 优化阶段(默认)
构建示例
# 使用 32 核并行编译,启用 ccache
./build.sh musl_64 -j 32 -ccache
# Debug 模式构建
./build.sh musl_64 -d
# 指定输出目录
./build.sh musl_64 -o my_build
构建输出
编译产物位于 src/out/<target>/ 目录:
musl_64:src/out/musl_64/
补丁管理
补丁按日期组织在 patch/ 目录下,每个子目录包含:
chromium_YY_MM_DD.patch- 主补丁文件chromium_YY_MM_DD.patch.hwlog- OHOS 日志相关补丁*.rejfile- 补丁冲突记录*.apply- 补丁应用记录
配置文件
build/config/default.json
默认构建配置,包含 OHOS NWEB 扩展相关设置。
build/config/ohos.json
OHOS 平台特有配置,如拖拽功能等。
许可证
本项目遵循 BSD 风格许可证,详见 LICENSE 文件。
文档
- CEF 嵌入 QT 工程说明文档 - CEF 在 OHOS 平台上与 Qt 集成的详细说明文档
- CEF 离屏渲染指导文档 - Qt + CEF 离屏渲染(OSR)接入指南与Demo解析
- CEF Qt 框架日志说明 - CEF 在 OHOS 平台上的日志查看与分析指南
相关链接
API 文档
完整的 CEF 114 在 OHOS 平台上的 API 文档:
更多推荐
所有评论(0)