diff --git a/README.md b/README.md new file mode 100644 index 0000000..0cd41a5 --- /dev/null +++ b/README.md @@ -0,0 +1,61 @@ +# CardHarmonyOS + +CardHarmonyOS 是期货首页卡片的 HarmonyOS ArkTS 示例工程,使用 ArkUI 声明式 UI +实现 AI 观点、市场排名和 AI 选期三张业务卡片。首页入口为 +`entry/src/main/ets/pages/Index.ets`。 + +## 环境要求 + +- DevEco Studio(支持 HarmonyOS API 20 及以上) +- HarmonyOS SDK 6.0.0 或更高版本 +- ohpm +- HarmonyOS 手机或模拟器 + +项目目标 SDK 为 HarmonyOS 6.1.0(API 23),兼容 SDK 为 6.0.0(API 20)。 + +## 快速开始 + +1. 使用 DevEco Studio 打开仓库根目录。 +2. 执行 `ohpm install` 安装依赖。 +3. 在 **File > Project Structure > Signing Configs** 中配置本机调试签名。 +4. 选择 `entry` 模块和 `default` product。 +5. 连接设备或启动模拟器,点击 **Run** 构建并安装应用。 + +单元测试位于 `entry/src/test/`,设备测试位于 `entry/src/ohosTest/`,可在 +DevEco Studio 中右键测试文件执行。 + +## 目录结构 + +```text +AppScope/ 应用级配置与资源 +entry/src/main/ets/ +├── pages/ 首页及详情页 +├── ai-view/ AI 观点卡片 +├── market-ranking/ 市场排名卡片 +├── ai-pick/ AI 选期卡片 +└── common/ 卡片容器、数据模型及行情字段常量 +entry/src/main/resources/ 文案、颜色、图片和页面配置 +doc/ HTTP 与 4106 行情接口文档 +``` + +业务卡片通常由 `Models`、`DataFetcher`、`NodeComponent` 和 Mock 数据组成。 +市场排名与 AI 选期分别通过独立的 `HqRequestClient` 构造行情订阅参数,共享 +`common/HqFieldId.ets` 中的 4106 字段 ID。 + +## 数据与接口 + +当前 HTTP Fetcher 仅构造请求参数,行情客户端也尚未连接真实客户端桥接层;页面使用 Mock +数据并以 2.5 秒间隔模拟行情更新。接入真实服务前请阅读: + +- [市场排名接口](doc/market-ranking-interfaces.md) +- [AI 选期接口](doc/ai-pick-interfaces.md) + +不要在源码或提交中新增 Cookie、Token、证书、私钥或本机签名密码。签名材料应通过 +DevEco Studio 在本机配置。 + +## 开发约定 + +- 使用 ArkTS 显式类型,组件采用 ArkUI 声明式写法。 +- 类型和类使用 PascalCase,变量和方法使用 camelCase,常量使用 UPPER_SNAKE_CASE。 +- 公共行情字段统一维护在 `HqFieldId`,避免在业务卡片中硬编码字段 ID。 +- 新增接口或修改 4106 参数时,同步更新 `doc/` 下对应文档。