前言

第 1 篇讲完了鸿蒙版 Flutter 的背景(三层架构、三个接缝、七层适配工作)、两个分叉仓库的版本线,以及路径 A:用 fvm fork 安装分支版本。同时留了一个边界:fvm 只认分支,装不了以 git tag 发布的版本——而 oh-flutter 仓库的 3.41+ / 3.47+ 线全部是 tag 发布。

本篇就是路径 B 的完整实录:当目标版本只有一个 tag(本文实例为 3.47.5-ohos-1.0.0),如何手动把完整 SDK 装进 fvm 缓存目录、跑通首次初始化、逐层核验装对了没有。所有命令与输出均取自真实环境(macOS arm64 + fvm 4.3.1,2026-10 记录)。

版本口径(2026-10 更新):本文以 3.47.5-ohos-1.0.0 为实录实例;当前安装请将版本号替换为 3.47.8-ohos-1.0.0,tag clone、初始化与核验步骤完全一致。配套 DevEco Studio 26.0.0 Release + OpenHarmony SDK/API 26,环境搭建见 OpenHarmony-flutter 环境搭建指导。

本篇的场景起点是一个真实的版本墙:第三方包要求 Flutter ≥ 3.41,本机只有 3.44.9 线——装 tag 版本不是「想尝鲜」,是被迫的。

背景提示:ohos Flutter 是社区分叉,tag 是 oh-flutter 仓库的发布形式,
版本命名规则(<上游版本>-ohos-<补丁号>)与 flutter.version.json 的字段含义,见第 1 篇第二、三章,本篇不再展开。

一、从版本墙到 tag:什么时候必须手动 bootstrap

1.1 场景回顾:版本墙长什么样

flutter pub get 失败,报错(真实记录,包名脱敏):

The current Flutter SDK version is 3.44.9+ohos-0.0.1-canary1.
Because <package> depends on <dep> which requires SDK version >= 3.41.0,
version solving failed.
* Try using the Flutter SDK version: 3.47.6.

这个报错里有个陷阱(第 1 篇第八章详述过,这里一句话带过):建议的 3.47.6 是上游官方版本号,本机根本装不了。正确动作是升到满足约束的 ohos 分叉版本——查 tag 列表,锁定 3.47.5-ohos-1.0.0(框架功能对应上游 3.47.x,Dart 3.13.4,实测 pub 可解析)。

1.2 手动 bootstrap 的本质:三步走

手动 bootstrap 听起来玄,本质只做一件事:把一个完整可用的 SDK 放进 fvm 的扫描目录,让 fvm 把它当成一个「已安装的版本」。拆成三步:

  1. 探测 tag:确认目标 tag 存在于仓库(用 git 协议,不要用网页);
  2. 浅克隆:git clone --depth 1 --branch <tag> 到 ~/fvm/versions/ohos/<自己起的名字>;
  3. 首次初始化:跑一次 bin/flutter --version,触发 flutter_tools 构建与定制 Dart SDK 下载。

两条安装路径的总决策图(本篇覆盖右侧蓝色路径 B):

在这里插入图片描述

上图与第 1 篇同一张决策图:先判断发布形态,分支走左侧 fvm fork,tag 走右侧手动 bootstrap;装完统一做三步自检。

1.3 两条路径放一起看

虽然入口不同,两条路径最终都落在 ~/fvm/versions/ohos/ 下,装完之后的使用方式(fvm use、.fvmrc、三层核验)完全一致——区别只在「SDK 怎么放进去」:

维度路径 A(fvm fork)路径 B(手动 bootstrap)
触发条件版本以分支发布(CPF-Flutter 3.44 及更早历史线)版本只有 tag(oh-flutter 3.41+/3.47 线)
核心命令fvm fork add + fvm install <别名>/<分支>git clone --depth 1 --branch <tag> + bin/flutter --version
SDK 落地目录~/fvm/versions/ohos/<分支名>(仓库定名)~/fvm/versions/ohos/<自己起的名字>(建议 oh-x.y.z-release 风格)
必经步骤注册 fork → 安装 → fvm use → 自检探测 tag → 浅克隆 → 首次初始化(可能需修 SSH 依赖)→ fvm 接入
高频坑镜像没切下载慢;分支名 ≠ 实际版本号release 页 SPA 挂起;SSH 依赖 URL;中断留半成品

下面进入路径 B 实操。

二、手动 bootstrap 实操:完整五步

2.1 第一步:确认 tag 存在

用 git 协议探测仓库的 tag 线(完整版本线从 3.7.12-ohos-1.0.x 一直到 3.47.5-ohos-*):

git ls-remote --tags https://atomgit.com/oh-flutter/flutter_flutter.git

输出很长,只看 3.40+ 系列可以加过滤:

git ls-remote --tags https://atomgit.com/oh-flutter/flutter_flutter.git \
  | grep -E "3\.4[0-9]\.|3\.5" | grep -v "\^{}"

确认存在 3.47.5-ohos-1.0.0 这一行,才能进入下一步(tag 线片段见第 1 篇 4.3 节)。

这里先排掉两个会让「确认 tag」这一步卡死的坑:

坑 CP1:不要用 curl 抓 release 页面找下载链接。
AtomGit 的 release 页面是 JS 渲染的 SPA,直接抓 HTML 拿不到资源链接,curl 会一直挂起。
要探测版本就用 git ls-remote --tags,要下载源码就直接 git clone --branch <tag>。

坑 CP2:macOS 没有 timeout 命令。
想给 git ls-remote 限时(防挂起),timeout 40 git ls-remote ... 会报 command not found。
用「后台进程 + sleep + kill」手工限时:

git ls-remote --tags https://atomgit.com/oh-flutter/flutter_flutter.git 2>&1 | tail -20 &
GITPID=$!
sleep 35
if kill -0 $GITPID 2>/dev/null; then
  echo "still running, killing"; kill $GITPID
fi
wait $GITPID 2>/dev/null

2.2 第二步:浅克隆到 fvm 缓存目录

fvm 会扫描 ~/fvm/versions/<子目录> 作为已安装 SDK,所以 clone 的目标目录要起成 fvm 认识的版本名:

mkdir -p ~/fvm/versions/ohos

git clone --depth 1 --branch 3.47.5-ohos-1.0.0 \
  https://atomgit.com/oh-flutter/flutter_flutter.git \
  ~/fvm/versions/ohos/oh-3.47.5-release

四个要点:

  • --depth 1 浅克隆:仓库很大(含引擎源码与历史),全量历史对「装 SDK」毫无必要;
  • --branch 参数必须写 tag 名(fvm 装不了 tag,git 可以按 tag 浅克隆);
  • 目标目录名 oh-3.47.5-release 是自己起的,与 CPF-Flutter 的分支命名法保持一致,fvm list 里显示风格统一;
  • atomgit.com 直连不稳定,本机通过本地代理访问(按自己环境改端口):
export HTTP_PROXY=http://127.0.0.1:1087
export HTTPS_PROXY=http://127.0.0.1:1087
export ALL_PROXY=socks5://127.0.0.1:1080

还有一个高频混淆点:fvm 4.x 的缓存目录是 ~/fvm/versions(注意不是 ~/.fvm)。
fork 列表、所有 SDK 元数据都在这里。如果你在 ~/.fvmrc 或 ~/.fvm/ 下找不到 fork 配置,
不是配置丢了,是看错了地方——以 fvm list 首行打印的 Cache directory 为准。

2.3 第三步:首次初始化

克隆下来的是源码,还不是能用的 SDK。进目录跑一次版本命令,触发首次初始化:

cd ~/fvm/versions/ohos/oh-3.47.5-release
bin/flutter --version

首次运行会依次做三件事(全程需要网络):

  1. Resolving dependencies...:解析 packages/flutter_tools 的依赖;
  2. 从 bin/internal/dart-sdk-url.ohos 指定的地址下载定制 Dart SDK——官方 dart-sdk 的 dart:ffi 缺少 Abi.ohosArm 等鸿蒙 ABI,必须用定制版(第 1 篇 1.3 节接缝③埋的坑在这里兑现);
  3. Building flutter tool...:编译 flutter_tools。

实测耗时约 70 秒。两个注意点:

日志停在下载条是正常现象,看进度可以 ls bin/cache 确认 Dart SDK 是否落地。
不要中途 Ctrl-C——bin/cache 留下半成品,下次启动会重新下载,白等一轮。

2.4 第四步:必经的修复——flutter_tools 的 SSH 依赖 URL

如果 bin/flutter --version 卡在 Resolving dependencies... 或直接失败,先查 packages/flutter_tools/pubspec.yaml 里有没有 SSH 地址的依赖:

rg -n "git@|atomgit" packages/flutter_tools/pubspec.yaml

记录中 3.47.5-ohos-1.0.0 的真实问题:pubspec 里有两处依赖写成了 SSH 地址:

url: git@atomgit.com:hxa-flutter/fluttertpc_dart_native.git

本机 git 对 atomgit 没有可用的 SSH 凭据,依赖解析因此失败。处理方式是把两处都换成 HTTPS(fluttertpc_dart_native 是 Dart FFI 与原生资产构建相关的包集合):

# patch_pubspec.py:把 SSH 依赖 URL 换成 HTTPS
path = 'packages/flutter_tools/pubspec.yaml'
src = open(path).read()
old = "url: git@atomgit.com:hxa-flutter/fluttertpc_dart_native.git"
new = "url: https://atomgit.com/hxa-flutter/fluttertpc_dart_native.git"
assert src.count(old) == 2, src.count(old)   # 确认恰好两处,防止漏改
src = src.replace(old, new)
open(path, 'w').write(src)
print('patched 2 URLs')

改完重跑 bin/flutter --version,即可完成初始化。

注意:这个 patch 只改本地缓存目录里的 pubspec,不影响仓库本身;
如果上游在后续 tag 里修掉了 SSH URL,这个步骤自然消失。

2.5 第五步:验证并接入 fvm

初始化完成后,fvm 应该已经认出了这个新 SDK:

fvm list

如果 oh-3.47.5-release 没出现,检查两点:目录是否在 ~/fvm/versions/ohos/ 下、目录名是否符合 fvm 的版本识别规则。然后在项目里切换:

cd <你的项目目录>
fvm use ohos/oh-3.47.5-release
cat .fvmrc

.fvmrc 应写入:

{
  "flutter": "ohos/oh-3.47.5-release"
}

最终版本元数据(bin/cache/flutter.version.json,真实记录):

{
  "frameworkVersion": "3.47.5-ohos-1.0.0",
  "repositoryUrl": "https://atomgit.com/oh-flutter/flutter_flutter.git",
  "frameworkRevision": "39481acce8b9e6bb902714e6705c8baf75662d49",
  "frameworkCommitDate": "2026-09-23 17:16:41 +0800",
  "engineRevision": "af7e796e161ae0bb1ff0758c71a7105418bd9ded",
  "engineContentHash": "ab598368592da0064197e2bc15c7f5b0a2c6bb1f",
  "dartSdkVersion": "3.13.4",
  "devToolsVersion": "2.60.0"
}

flutter --version 侧的输出(真实记录):

Flutter 3.47.5-ohos-1.0.0 • channel [user-branch] • https://atomgit.com/oh-flutter/flutter_flutter.git
Framework • revision 39481acce8 (2 weeks ago) • 2026-09-23 17:16:41 +0800
Engine • hash ab598368592 (revision af7e796e16) • 2026-09-16 18:35:09.000Z

注意 repositoryUrl 已经指向 atomgit/oh-flutter——同一台机器上,CPF-Flutter 分支装的 3.44 线和 oh-flutter tag 装的 3.47 线共存互不干扰,按项目 .fvmrc 各走各的。

三、仓库内部:值得认识的版本坐标文件

SDK 装好之后,有几个文件是排查版本问题的「坐标」。以本机 ~/fvm/versions/ohos/oh-3.47.5-release/ 为例:

~/fvm/versions/ohos/oh-3.47.5-release/
├── CHANGELOG_OHOS.md            # ohos 专属适配变更日志(升级前必读)
├── version                      # 纯文本版本号,如 3.47.5-ohos-1.0.0
├── bin/
│   ├── flutter                  # 本 SDK 自己的 flutter 入口
│   └── internal/
│       ├── engine.version       # 上游引擎提交
│       ├── engine.ohos.version  # ohos 定制引擎提交(与上游不同)
│       ├── engine.ohos.har.version
│       └── dart-sdk-url.ohos    # 定制 Dart SDK 下载地址
└── bin/cache/flutter.version.json

各文件的排查用途:

文件作用什么时候看它
bin/cache/flutter.version.json最权威的版本元数据判断「这个 SDK 到底是什么版本」的第一站
version纯文本版本号快速确认,不用解析 JSON
bin/internal/engine.version上游引擎提交号只用来对照上游,不要拿它评价 ohos 引擎
bin/internal/engine.ohos.versionohos 定制引擎提交号引擎相关行为异常的排查入口
bin/internal/dart-sdk-url.ohos定制 Dart SDK 下载地址初始化卡在 Dart SDK 下载时看它
CHANGELOG_OHOS.mdohos 侧每个补丁改了什么升级前做版本决策的权威清单

3.1 dart-sdk-url.ohos:定制 Dart SDK 的来源

dart-sdk-url.ohos 每行一条 <zip名>:<url> 形式的下载映射,2.3 节首次初始化下载定制 Dart SDK 就是按它拉的地址。理解这个文件能回答一个高频问题:

「为什么我的鸿蒙 Flutter 里 dart:ffi 能拿到 Abi.ohosArm64,官方版本不行?」

答案链路:官方 dart-sdk 的 Abi 枚举没有鸿蒙 ABI → fork 从 Dart 源码构建了一份带 Abi.ohosArm/ohosArm64/ohosX64 的定制 SDK → 地址写进 dart-sdk-url.ohos → 每次初始化按地址下载。所以定制 Dart SDK 是下载来的二进制工件,不是源码编译的——这也意味着它和引擎工件一样,存在「重发了没换地址/标记,用户侧静默用旧货」的风险(生产侧细节见第 7、8 篇)。

四、版本核验:三层方法与逐字段判据

4.1 三层核验(从快到准)

第 1 篇 5.4 节给过「装完三步自检」,手动 bootstrap 装完同样适用,这里把判据说得更具体:

  1. fvm 层:fvm list 能看到 ohos/oh-3.47.5-release,且项目 .fvmrc 绑定正确——确认「fvm 认出了它」;
  2. flutter 层:fvm flutter --version 横幅里 frameworkVersion 与 tag 一致——确认「跑起来的是它」;
  3. 元数据层:bin/cache/flutter.version.json 逐字段核对(4.2 节)——确认「它内部装的每个组件都是预期的」。
fvm list
fvm flutter --version
cat ~/fvm/versions/ohos/oh-3.47.5-release/bin/cache/flutter.version.json

4.2 逐字段判据

字段期望值(3.47.5-ohos-1.0.0 实例)判断
frameworkVersion3.47.5-ohos-1.0.0与目标 tag 完全一致
repositoryUrlhttps://atomgit.com/oh-flutter/flutter_flutter.git来源仓库正确
frameworkRevision / frameworkCommitDate39481acce8 / 2026-09-23与 tag 指向的提交一致
engineRevision / engineContentHashaf7e796e16 / ab59836859...ohos 定制引擎,不与上游 engine 对比
dartSdkVersion3.13.4与上游 3.47 对应的 Dart 大版本一致
devToolsVersion2.60.0同步成功的旁证

上游参照(官方对应关系,本机实测):

上游 FlutterDartDevTools
3.47.x3.13.42.60.0

三条判据总结:

  • frameworkVersion 对 tag → 框架层同步成功;
  • dartSdkVersion 与上游大版本一一对应 → Dart 层同步成功;
  • engineRevision 是独立的 ohos 值 → 引擎是定制版(正常),异常与否要看行为验证(第 6 章)。

4.3 两个容易误读的细节

细节一:Engine 行有两套坐标。 回看 2.5 节的横幅输出:

Engine • hash ab598368592 (revision af7e796e16) • 2026-09-16 18:35:09.000Z

同一个引擎被两套坐标描述:hash ab598368592 是引擎内容哈希(对应 flutter.version.json 的 engineContentHash),revision af7e796e16 是引擎提交号(对应 engineRevision)。两者一个管「构建内容」,一个管「源码提交」,排查引擎工件问题时先确认对方报的是哪套坐标,避免对不上号。

细节二:channel [user-branch] 不是报错。 横幅里的 channel [user-branch] 表示这个 SDK 不是从官方渠道(stable/beta/master)装的,而是来自用户指定的分支/tag——对 ohos 分叉来说这是预期形态,看到它不用怀疑装错了。

五、升级验证:pub 解析与切换注意

5.1 回到最初的项目:pub get 应该过了

装新 SDK 不是目的,解决版本墙才是。切回最初卡住的项目验证:

cd <卡住的项目目录>
fvm use ohos/oh-3.47.5-release
fvm flutter pub get

判定标准只有一个:不再出现 version solving failed,依赖解析通过。如果换了 SDK 还失败,先排除两件小事:

  1. 确认 fvm flutter --version 在该项目目录下显示的就是新版本(.fvmrc 没切对是最常见原因);
  2. 旧的 .dart_tool 解析结果已作废,pub get 会全量重解,耗时比平时长属正常。

5.2 大版本切换的三个注意点

3.44 → 3.47 跨了一个大版本,Dart 从 3.13.x 跟进到 3.13.4,切换后留意:

  • 依赖重解:第三方包/插件可能要求重新适配或存在 API 变更,pub get 通过不等于 flutter analyze 通过,建议跟一遍静态检查;
  • 引擎不对比上游:engine.ohos.version 与上游 engine.version 故意不同,拿上游引擎号「对版本」是错误姿势;
  • 先读 CHANGELOG_OHOS.md:它列出 ohos 侧每个补丁改了什么(例如某版本修了 PlatformView 点击坐标、GPU 资源回收、输入法弹起回调),升级决策可以完全基于它做:需要哪个修复/能力 → 找到含该条目的版本 → 用对应 tag 装。

六、大版本升级后的异常分诊

跨大版本升级后,如果运行出现异常,先按症状分诊,别盲目回滚。下面是整理过的分诊图(消费侧最常遇到前两行):

在这里插入图片描述

上图是完整的「升级后异常 → 按症状分诊」速查。消费侧视角压缩成一张表:

症状第一动作展开篇目
Wrong full snapshot version(snapshot 版本错)flutter clean + 删 .dart_tool/flutter_build,配套重新生成 AOT / 平台 dill本篇 5.2(依赖重解)
启动即崩(早期 SIGSEGV)查 FFI ABI 定义(Dart / frontend / C++ / OHOS 注册顺序)第 10 篇
Impeller 黑屏(format(0) / Submit failed)查 PixelFormat 映射与 swapchain,别猜 Dart 层问题第 10 篇
渲染空白(文字/图标消失)字体端口三档在位检查,nm -D 数未定义符号第 10 篇
收尾验收三档(debug/profile/release)都要跑;模拟器通过 ≠ 真机通过第 3 篇(消费侧)、第 10 篇(生产侧)

口径:拿到「模拟器通过」不等于「真机通过」——真机才是基线。
消费侧若只跑模拟器,至少保证 debug 档在真机/模拟器各冒烟一次,再谈验收。

七、常见问题 FAQ

7.1 踩坑速查

#现象原因处理
CP1curl 抓 release 页面挂起release 页是 JS 渲染 SPA,HTML 里没有下载链用 git ls-remote --tags + git clone --branch(2.1 节)
CP2timeout 命令 not foundmacOS 无 GNU coreutils 的 timeout后台进程 + sleep + kill 手工限时(2.1 节)
CP10fvm list 看不到新装 SDK目录不在 ~/fvm/versions/ohos/ 或名字不符合识别规则按 fvm 扫描规则放目录、起版本名(2.2 节)
CP6首次初始化卡在 Resolving dependenciesflutter_tools pubspec 有 SSH 依赖 URL两处换成 HTTPS 后重跑(2.4 节)
CP7中断后重跑更慢bin/cache 半成品触发重新下载首次初始化别 Ctrl-C,耐心等完(2.3 节)
CP13AtomGit 直连慢/卡网络与代理设 HTTP_PROXY/HTTPS_PROXY/ALL_PROXY(2.2 节)
CP14切了 SDK 还 version solving failed.fvmrc 没切对 / 旧 .dart_tool 缓存确认 fvm flutter --version,重跑 pub get(5.1 节)

7.2 现在应该 bootstrap 哪个版本?

当前推荐 3.47.8-ohos-1.0.0,步骤与本文的 3.47.5 实例相同;只需把 tag、目录名与输出中的版本号同步替换。若不确定 tag 是否存在,先用 git ls-remote --tags 确认。

7.3 首次初始化卡在 Resolving dependencies 怎么办?

这是 flutter_tools 的 pubspec 里存在 SSH 依赖 URL 导致的,按 2.4 节把两处改成 HTTPS 后重跑。不要在中途频繁 Ctrl-C,半成品 bin/cache 会触发重新下载。

7.4 装完 fvm list 看不到 SDK?

检查目录是否位于 ~/fvm/versions/ohos/、目录名是否以 oh- 开头;然后在项目里 fvm use ohos/oh-3.47.8-release,用 fvm flutter --version 确认实际版本。

7.5 DevEco Studio / API 版本要求?

本文验证使用 DevEco Studio 26.0.0 Release + OpenHarmony SDK/API 26。DEVECO_SDK_HOME 指向 .../Contents/sdk,JAVA_HOME 指向 DevEco 内置 JBR;完整配置见文首环境搭建指导。

八、系列导航

本文是「鸿蒙Flutter框架 0day适配实战」系列的第 2 篇。全系列 10 篇,背景内容已并入第 1 篇开头,不再单独成篇:

#篇目侧一句话主题
01背景、分叉谱系、版本命名与 fvm fork 安装消费三层架构、三个接缝、七层工作量、路径 A、版本墙
02手动 bootstrap tag 版本与三层核验(本篇)消费tag 探测、浅克隆、首次初始化、SSH 修复、异常分诊
03鸿蒙模拟器/真机跑 Flutter + 消费侧踩坑集消费工具链三件套、HAP 构建/安装/运行、占位签名、截图取证、CP1-CP14
04flutter build hap 自动签名消费P12/CSR、AGC 证书与 Profile、纯 Dart AES-GCM、C0-C10 复用
05上游同步总览、BC 全景与端到端 SOP生产批次解剖、五阶段验证门、12 项适配表、端到端 SOP 与 P1-P29 索引
06Phase 1+2:基线建立与 Framework 适配生产代理 HTTP/1.1 修障、421 文件重打、Dart SDK 源码构建
07Phase 3 Engine:三方重放与冲突裁决生产826 文件、15 真冲突两分法、契约对齐 16 项
08引擎构建链攻防生产依赖树、工具链版本、链接与测试面 27 坑
09构建发布与产物分发生产版本锁、11 个工件(Dart SDK 双宿主)、11 条覆盖键、换新 tag 铁律
10验证与真机验收生产三档引擎、设备侧单测、字体图标静默故障

配套仓库与文档:

总结

本篇把「fvm 装不了 tag」这条边界走通到了底:手动 bootstrap 本质就是「探测 tag → 浅克隆进 fvm 缓存目录 → 首次初始化」三步,中间要顶住 release 页 SPA 和 macOS 无 timeout 两个坑,再处理一次 flutter_tools 的 SSH 依赖 URL;装完用三层核验(fvm 层 / flutter 层 / 元数据层)逐字段确认,frameworkVersion 对 tag、dartSdkVersion 对上游、引擎是独立 ohos 值,三条判据全中才算装对。最后回到最初的版本墙项目重跑 pub get——解析通过,这条线才算真正闭环。

下一篇(第 3 篇)把装好的 SDK 真正跑起来:鸿蒙真机/模拟器环境准备、DevEco 配置、flutter run 到 HAP 的完整链路,以及消费侧 P1-P10 踩坑全收录。

如果这篇文章对你有帮助,欢迎点赞👍、收藏⭐、关注🔔,你的支持是我持续创作的动力!


相关资源:

环境与版本

本文的示例与截图基于以下环境组合(2026-10 实测):

组件版本说明
上游 Flutter SDK3.47.8github.com/flutter/flutter
Flutter SDK(OH 适配版)3.47.8-ohos-1.0.0oh-flutter/flutter_flutter,oh-3.47-dev 分支
DevEco Studio26.0.0 Release提供 hvigor / ohpm / hdc / JBR 等工具链
OpenHarmony SDK / APIAPI 26(26.0.0)模拟器与 SDK 均为 API 26
运行设备OpenHarmony 模拟器API 26,1280×2832

环境搭建(分叉获取、DevEco Studio 与 SDK 配置、模拟器创建)请按官方指导操作:OpenHarmony-flutter 环境搭建指导。

本文命令与终端输出的实录实例是 3.47.5-ohos-1.0.0(该 tag 的完整安装留档);当前安装把 tag、目录名与输出中的版本号换成上表的 3.47.8-ohos-1.0.0 即可,tag clone、首次初始化与三层核验步骤完全一致。

Logo

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

更多推荐