12345下一页
查看: 581|回复: 48

[安卓] 鸿易通:HOA Harmony on Android 26.6.13.1

[复制链接]

545

主题

0

回帖

906

积分

UID
4
贡献
9 点
钻石
99 个
C币
8 个
发表于 2026-6-23 21:54:00 | 显示全部楼层 |阅读模式
在 Android 设备上运行 OpenHarmony / HarmonyOS HAP 应用。

一个正在开发中的实验性项目,目标是让 HarmonyOS 的 HAP 应用包无需修改即可在 Android 设备上运行。目前已完成核心运行时搭建,ArkTS 页面渲染和原生 .so 加载均已验证通过,但大量系统 API 尚未实现,兼容性有限。

百度网盘

https://pan.baidu.com/s/1EdSSnL7SVIjmevyqFM3bHQ?pwd=rcew

支持到什么程度

能力
状态
说明

ArkTS 页面渲染
支持
SurfaceView + Skia,SDK 5.0/6.0 ABC 格式兼容

HAP 安装与启动
支持
ZIP 解析、流式解压、多进程槽位管理(5 槽)

resources.index 解析
支持
V1(OHOS 5.0)和 V2(SDK 6.0)双版本

原生 .so 加载
支持
无 RUNPATH 的闭源 .so 拓扑依赖加载 + musl ABI bridge(libb.so)

C++ STL(libc++_shared)
支持
std::string/vector/map/thread/exception/RTTI 等全部通过

HDC 协议
支持
TCP 8710,支持 install/uninstall/shell/file send,DevEco Studio 可识别为设备

权限映射
部分
普通权限自动映射(INTERNET 等),危险权限需手动处理

生命周期
部分
onCreate/onResume/onPause/onDestroy 已对接,部分中间状态未实现

HDS 组件
部分
70+ 导出 mock,功能正确但视觉与原版差异较大

完整 Bundle Manager
不支持
未实现,bundleInfo_ is nullptr 日志警告

后台能力 / Service
不支持
未实现

分布式 / 多设备
不支持
未实现

已知限制
HOA 仍在早期开发阶段,以下为已知限制:

  • HAP 兼容性:目前只有部分 HAP 能正常运行。依赖未实现系统 API 的 HAP 会白屏或崩溃。

  • 性能:ArkUI-X 渲染管线未经优化,复杂页面可能卡顿。

  • 内存:每个 HAP 启动一个独立进程,多 HAP 同时运行内存压力较大。

  • 稳定性:长时间运行可能出现资源泄漏,建议测试后重启 app。

  • 安全性:HDC daemon 无认证机制(默认 8710 端口),仅适合开发调试,不要在生产环境使用。

    原理
    HOA 基于 ArkUI-X 的 Android 构建体系,通过多个仓库的定向适配使运行时能够加载并执行 OHOS 原生格式的 HAP:

  • ArkTS 渲染:ETS VM 执行 modules.abc 字节码,ACE 引擎将 UI 树渲染到 Android SurfaceView

  • 原生 .so 支持:通过 libb.so(musl ABI bridge)在 Android bionic 上运行 OHOS 闭源 .so;ELF patch 将 DT_NEEDED libc.so 替换为 libb.so;elf_load_with_deps 对无 RUNPATH 的 .so 做拓扑依赖加载

  • HDC 协议:实现 OHOS HDC daemon,支持 DevEco Studio 设备识别与一键部署
  • 温馨提示:
    1、在论坛里发表的文章仅代表作者本人的观点,与本网站立场无关。
    2、论坛的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
    3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
    4、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
    5、注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
    6、网络世界也请遵守我国的法律法规!一旦发现违法行为,将立即封存相关信息并报警处理!
    回复

    使用道具 举报

    0

    主题

    372

    回帖

    38

    积分

    UID
    532405
    贡献
    0 点
    钻石
    0 个
    C币
    2 个
    发表于 2026-6-26 13:30:50 | 显示全部楼层
    整体框架挺好,细节上还能再展开。
    回复

    使用道具 举报

    0

    主题

    396

    回帖

    45

    积分

    UID
    621140
    贡献
    0 点
    钻石
    0 个
    C币
    1 个
    发表于 2026-6-28 01:22:09 | 显示全部楼层
    内容挺扎实的,不是那种拼凑出来的。有遇到类似情况的吗?想听听别人的做法。
    回复

    使用道具 举报

    0

    主题

    352

    回帖

    0

    积分

    UID
    422988
    贡献
    0 点
    钻石
    0 个
    C币
    0 个
    发表于 2026-6-29 05:21:14 | 显示全部楼层
    写得挺细致的,能看出是实操过的。
    回复

    使用道具 举报

    0

    主题

    383

    回帖

    0

    积分

    UID
    382547
    贡献
    0 点
    钻石
    0 个
    C币
    0 个
    发表于 2026-6-30 11:31:29 | 显示全部楼层
    分析得挺到位,把关键因素都点出来了。(补充第1点)
    回复

    使用道具 举报

    0

    主题

    365

    回帖

    43

    积分

    UID
    781933
    贡献
    0 点
    钻石
    0 个
    C币
    1 个
    发表于 2026-7-2 05:56:20 | 显示全部楼层
    分析得挺到位,把关键因素都点出来了。
    回复

    使用道具 举报

    0

    主题

    389

    回帖

    46

    积分

    UID
    918875
    贡献
    0 点
    钻石
    0 个
    C币
    0 个
    发表于 2026-7-4 05:36:01 | 显示全部楼层
    这个角度之前没想过,记下来了。
    回复

    使用道具 举报

    0

    主题

    382

    回帖

    53

    积分

    UID
    145352
    贡献
    0 点
    钻石
    0 个
    C币
    0 个
    发表于 2026-7-6 11:23:00 | 显示全部楼层
    感谢整理,这类总结省了别人很多时间。希望能再展开讲讲某个细节。
    回复

    使用道具 举报

    0

    主题

    347

    回帖

    347

    积分

    UID
    211581
    贡献
    0 点
    钻石
    0 个
    C币
    1 个
    发表于 2026-7-8 22:24:49 | 显示全部楼层
    感谢整理,这类总结省了别人很多时间。
    回复

    使用道具 举报

    0

    主题

    363

    回帖

    0

    积分

    UID
    478699
    贡献
    0 点
    钻石
    0 个
    C币
    0 个
    发表于 2026-7-11 06:49:13 | 显示全部楼层
    这种一手经验的分享比二手转述有价值多了。期待后续的补充。
    回复

    使用道具 举报

    温馨提示:
    1、在论坛里发表的文章仅代表作者本人的观点,与本网站立场无关。
    2、论坛的所有内容都不保证其准确性,有效性,时间性。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
    3、当政府机关依照法定程序要求披露信息时,论坛均得免责。
    4、若因线路及非本站所能控制范围的故障导致暂停服务期间造成的一切不便与损失,论坛不负任何责任。
    5、注册会员通过任何手段和方法针对论坛进行破坏,我们有权对其行为作出处理。并保留进一步追究其责任的权利。
    6、网络世界也请遵守我国的法律法规!一旦发现违法行为,将立即封存相关信息并报警处理!
    12345下一页
    您需要登录后才可以回帖 登录 | 立即加入

    本版积分规则

    QQ客服返回顶部