DSH‑Go 修复|解决鸿蒙+卓易通环境引擎启动异常

1 项目简介

本项目为修复构建版本,基于上游 DSH‑Go v1.0.16,专门解决 HarmonyOS 设备运行卓易通(DroiTong)容器环境下本地引擎启动失败问题。

GitHub项目地址: https://github.com/QQZping/dsh-go-huawei-droitong

修复问题清单

在鸿蒙系统的卓易通容器中,原版 DSH‑Go 本地引擎会出现以下故障:

  1. PRoot 初始化启动失败,引擎无法正常拉起;
  2. getcwd系统调用返回异常,工作目录获取出错;
  3. clone3线程创建系统调用报错,进程线程创建逻辑异常。

本构建针对性修复上述三点,让 DSH‑Go 的本地引擎可以正常在 HarmonyOS + DroiTong 组合环境运行。

⚠️ 重要声明:

  • 这不是官方版本,属于社区非官方补丁构建;
  • 仅针对鸿蒙卓易通容器场景做适配,其他Android设备可酌情测试;

2 下载方式

  1. 打开项目GitHub主页:https://github.com/QQZping/dsh-go-huawei-droitong
  2. 找到Releases,打开最新版本;
  3. 在Assets列表下载对应APK,同时附带SHA256SUMS校验文件,建议校验文件完整性,防止下载损坏;
  4. source.zip为构建源码包,RELEASE‑NOTES.md为版本更新日志。

下载直达:Releases页面

3 环境说明

  • 基础上游版本:DSH‑Go v1.0.16
  • 目标运行环境:HarmonyOS,卓易通(DroiTong)容器
  • 架构:arm64
  • 产物:Android APK安装包

4 简单分析

卓易通容器基于容器沙盒机制运行Linux环境,鸿蒙内核对部分Linux系统调用行为和原版Android存在差异:

  1. PRoot依赖底层系统调用实现chroot沙盒,容器环境下部分调用行为发生变化,导致初始化直接卡住失败;
  2. 容器内路径隔离机制,造成getcwd获取当前工作目录返回异常值;
  3. 新版clone3系统调用在容器沙盒下权限/参数校验严格,原版逻辑直接调用会创建线程失败。

本修复版本针对以上三点做兼容调整,不改动上游主体业务逻辑。

后续更新版本会直接在该仓库新建Release,不会新建仓库,大家可以点Star不迷路哦>_<。

5 >_<

主要为解决鸿蒙设备使用卓易通容器时DSH‑Go无法启动本地引擎痛点。
欢迎测试反馈bug,也欢迎感兴趣同学Fork进行二次修改构建。

Logo

作为“人工智能6S店”的官方数字引擎,为AI开发者与企业提供一个覆盖软硬件全栈、一站式门户。

更多推荐