Files

35 lines
2.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 美搭 HarmonyOS App(ArkTS)
- 模板:DevEco Studio 6.1 空 Ability 工程;API `6.1.1(24)`,`runtimeOS: HarmonyOS`,`bundleName: com.xiangsilian.app`
- 后端:`meida_backend`(WSL)。本地开发默认 `http://127.0.0.1:8000`(模拟器可用;**真机连开发机要在登录页改成局域网 IP**)
- 登录通道(V1 骨架):dev-token(后端 `DEV_AUTH_ENABLED=true` 本地可用);华为账号/短信为后续任务
## 命令行构建(Agent/CI 用的门禁)
> 工程配了真机调试签名(`.ohos/config` 下证书)后,PackageHap/SignHap 需要 java:
> PATH 里须有 DevEco 自带 JBR(`jbr/bin`),且**不能有带旧环境的 hvigor 守护进程残留**
> (守护进程会缓存启动时的 PATH,报 `spawn java ENOENT` 时先
> `taskkill /F /PID <hvigor daemon的node进程>` 再重试)。
```bat
(等价于仓库根的 app/.build-gate.bat)
set "PATH=C:\Program Files\Huawei\DevEco Studio\jbr\bin;%PATH%"
set "DEVECO_SDK_HOME=C:\Program Files\Huawei\DevEco Studio\sdk"
cd /d <repo>\app
"C:\Program Files\Huawei\DevEco Studio\tools\node\node.exe" ^
"C:\Program Files\Huawei\DevEco Studio\tools\hvigor\bin\hvigorw.js" ^
--mode module -p module=entry@default assembleHap --analyze=false --daemon=false
```
`BUILD SUCCESSFUL` 即门禁通过;产物 `entry/build/default/outputs/default/entry-default-signed.hap`
(已用调试证书签名,可直接 `hdc install` 到真机)。
## 代码约定
- `ets/core/`:网络与会话地基(ApiClient/AuthStore/ContextHolder/ApiTypes)——**共享层,改动需全量构建验证**
- `ets/pages/`:页面。**页面间跳转一律 `router.pushUrl({url: 'pages/Xxx'})` 路径方式,禁止 import 其它页面**(并行开发的冲突隔离约定)
- 组件级复用放 `ets/components/`(各自任务目录内自建子目录)
- 文案:骨架期中文硬编码即可(i18n 后置);错误提示只 catch `ApiError`,用其 `message/hint`(后端文案已保证无价格字样)
- 状态管理:页面内 `@State`;跨页少量状态走 `AppStorage`
- 不引第三方 ohpm 包(保持零依赖,后续按需评估)