【Flutter for OpenHarmony】开源鸿蒙跨平台训练营Day2-多终端工程创建运行、代码提交至AtomGit平台自建公开仓库
开发环境搭建参照我们提供的开源鸿蒙跨平台技术指导手册,完成技术栈开发环境、DevEco Studio一站式鸿蒙开发工具、开源鸿蒙SDK按需下载、环境变量配置、多设备调试驱动安装等全流程操作,确保支持真机,或开源鸿蒙开发板,模拟器三类终端的开发调试。Git与AtomGit仓库操作。
核心任务
- 基于 DevEco Studio 创建Flutter+OpenHarmony 多终端工程,实现手机、平板、穿戴设备的跨端运行与交互验证;
- 掌握SSH 密钥免密配置,实现本地与 AtomGit(GitCode)的安全连接;
- 遵循开源仓库标准化规范,完成 AtomGit 公开仓库的创建与基础配置;
- 按照Conventional Commits 提交规范,实现代码、日志、配置文件的规范化提交与仓库管理。
前言
本次训练营聚焦Flutter for OpenHarmony跨端开发核心实操,深入落地多终端工程标准化创建、鸿蒙多设备适配核心要点、Git 协同开发规范及AtomGit 开源仓库标准化管理,同时融入鸿蒙跨端开发的专业配置与实操技巧,实现从工程创建到代码托管的全流程标准化落地,为后续复杂跨端应用开发奠定工程化与协作化基础。
一、设置 SSH 密钥
1.使用以下命令生成 SSH 密钥对:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
2.将公钥内容添加到 GitCode 账户中
3.在你的 GitCode 账户个人设置中,找到SSH 公钥并添加你的SSH 公钥
4.使用以下命令验证:
ssh -T git@gitcode.com
避坑点
-
若验证失败,检查本地
~/.ssh目录下是否存在多个密钥,可通过ssh-add ~/.ssh/id_rsa指定默认密钥; -
关闭本地防火墙 / 代理工具,避免端口屏蔽导致的连接失败;
-
公钥内容必须完整,若存在换行或空格缺失,将导致身份验证失败。
二、Git与AtomGit
创建 Flutter for OpenHarmony 仓库时,需遵循开源项目标准化规范,明确仓库信息、权限、基础配置文件,确保仓库可被他人快速拉取、运行与贡献。
| 项目名称 | 小写 + 短横线(如 flutter-ohos-demo) | 符合开源项目命名规范,避免特殊字符与空格 |
| 仓库权限 | 公开 | 便于跨端开发社区交流与贡献 |
| 初始化文件 | 必选 README.md、.gitignore、LICENSE | README.md 说明项目用途;.gitignore 过滤无用文件;LICENSE 声明开源协议 |
| 开源协议 | 推荐 MIT License | 宽松的开源协议,允许商业使用与二次开发,适配 Flutter/OpenHarmony 开源生态 |
| 仓库描述 | 明确技术栈与用途(如 Flutter for OpenHarmony 多终端跨端开发示例,适配鸿蒙 6.0+) | 便于搜索引擎检索与开发者快速理解项目价值 |
新建项目
Git Bash,克隆远程空仓库到本地
git clone 复制的仓库HTTPS地址
进入本地仓库目录,初始化基础配置文件的首次提交(遵循Conventional Commits 提交规范):
# 跟踪.gitignore文件
git add .gitignore
# 提交信息:type(类型): 描述(feat/ docs/ fix/ build为常用类型)
git commit -m "提交说明"
# 推送到远程主分支(main为现代Git默认主分支,替代master)
git push origin main
主分支
main仅用于存放可运行的稳定代码,开发功能需基于feature/xxx分支创建,避免直接修改主分支。
三、Flutter for OpenHarmony 多终端工程标准化构建
在DevEco Studio,创建一个新项目

箭头所指一定要选择一个空文件夹,接着Finish,DevEco Studio 将自动生成鸿蒙多终端工程标准化目录(AppScope、entry、oh_modules 等),并完成依赖同步。
Flutter for OpenHarmony 混合开发工程遵循 OpenHarmony 官方目录规范,核心目录功能如下,需纳入 Git 版本控制的核心目录 / 文件:
ohos_flutter_demo/
├── AppScope/ # 应用全局配置(签名、权限、多设备适配参数)【必跟踪】
├── entry/ # 主模块(Flutter与鸿蒙原生交互入口、页面、资源)【必跟踪】
│ ├── src/main/ets/ # 方舟TS代码目录(Flutter视图容器、原生交互逻辑)
│ └── build-profile.json5 # 模块编译配置(多设备编译参数)【必跟踪】
├── oh_modules/ # 鸿蒙第三方依赖(类似npm/node_modules)【可忽略,通过ohpm安装】
├── .hvigor/ # 构建工具配置(鸿蒙官方构建工具)【必跟踪】
├── hvigorfile.ts # 工程构建脚本【必跟踪】
├── oh-package.json5 # 鸿蒙依赖配置文件【必跟踪】
└── .gitignore # Git忽略配置文件【必跟踪】
通过.gitignore过滤oh_modules/、build/、*.log(本地日志)等文件,减少仓库体积,避免无用文件提交。
四、鸿蒙多终端编译部署与跨端适配核心验证
1. 多终端编译部署的专业流程
基于 DevEco Studio 实现手机、平板、穿戴设备的一键编译部署,核心依赖OpenHarmony SDK 的多设备编译工具链与模拟器的架构适配:
- 启动鸿蒙模拟器:打开 Device Manager,分别启动Mate 70 Pro(手机)、MatePad Pro 11(平板)、Huawei Wearable(穿戴),确保模拟器均基于 OpenHarmony 6.0.1 (API 21);
- 设备选择:在 DevEco Studio 顶部设备列表中,选择目标模拟器(支持实时切换);
- 编译部署:点击绿色运行按钮(Shift+F10),DevEco Studio 将执行多设备差异化编译(根据设备类型适配 UI 布局、分辨率、组件大小),自动完成安装与启动;
- 核心验证点:编译过程无报错,模拟器中成功启动应用,显示默认
Hello World页面。
2. 多终端跨端适配核心验证与交互测试
UI 显示适配验证
- 手机端:页面居中显示,文字、组件适配手机屏幕分辨率(1080P+);


- 平板端:UI 布局自动拉伸,适配平板横屏 / 竖屏显示,无组件重叠、留白异常;


- 穿戴端:适配圆形 / 方形表盘,文字大小适配穿戴设备小屏幕,无内容截断。


运行日志捕获与分析
- 在 DevEco Studio 底部打开Log 窗口,通过包名过滤捕获应用启动与运行日志;
- 新建
run_log.txt文件,保存核心日志(应用启动成功、页面构建、事件响应日志),核心日志示例:
23:03:56.740: $ hdc shell aa start -a EntryAbility -b com.example.ohosflutterdemo in 379 ms
23:03:56.741: com.example.ohosflutterdemo successfully launched within 2 s 334ms
23:04:01.205: Text component onClick event triggered, message changed to Welcome
五、代码规范化提交与 AtomGit 仓库管理
git add run_log.txt
git commit -m "docs: 添加应用运行日志"
git push origin main
运行如下
进入仓库文件夹,右键打开Git Bash Here,依次输入以下三条命令
git add .
git commit -m "feat: 完成鸿蒙跨平台工程创建与多终端运行验证,新增日志与截图"
git push origin main
打开仓库详情页,可见
AtomGit 仓库高频核心命令
一、基础准备
| 命令 | 作用 | 备注 |
|---|---|---|
git clone git@gitcode.com:用户名/仓库名.git |
克隆远程 AtomGit 仓库到本地 | 优先用 SSH 地址(免密),替代 HTTPS 地址 |
git init |
本地初始化 Git 仓库(无远程仓库时) | 初始化后需手动关联远程仓库 |
git remote add origin git@gitcode.com:用户名/仓库名.git |
关联本地仓库到远程 AtomGit 仓库 | origin是远程仓库默认别名,可自定义 |
git remote -v |
查看远程仓库关联信息 | 验证是否关联成功 |
二、代码提交
| 命令 | 核心作用 |
|---|---|
git add . |
跟踪所有修改 / 新增文件到暂存区 |
git commit -m "type: 描述" |
提交暂存区代码到本地仓库(规范提交信息) |
git status |
查看本地文件状态(提交前必查) |
三、推送到远程
| 命令 | 核心作用 |
|---|---|
git push origin main |
推送本地代码到远程 main 分支(主分支) |
git push -u origin feature/xxx |
首次推送新功能分支并关联远程 |
四、分支管理
| 命令 | 作用 | 应用场景 |
|---|---|---|
git branch |
查看本地所有分支 | 带*的是当前所在分支 |
git branch 分支名 |
创建本地新分支 | 如git branch feature/ohos-adapt(鸿蒙适配功能分支) |
git checkout 分支名 |
切换到指定分支 | 切换前确保当前分支代码已提交 |
git pull origin 分支名 |
拉取远程分支最新代码到本地 | 协作开发时,先拉取再提交,避免冲突 |
5. 问题排查 / 回滚
| 命令 | 核心作用 |
|---|---|
git commit --amend |
修改最近一次提交信息 |
git log --oneline |
精简查看提交历史 |
欢迎加入开源鸿蒙跨平台社区https://openharmonycrossplatform.csdn.net
更多推荐


所有评论(0)