所有回复必须使用中文
核心 ArkTS 代码位于 entry/src/main/ets,其中 view/ 负责 UI 组件(如 LocalMusic.ets),viewmodel/ 管理数据模型(如 VideoItem),common/ 存放工具类与常量(RemoteDriveManager、RcpSocketUtil 等),controller/ 承接 Ability 调度。鸿蒙资源位于 entry/src/main/resources。本地播放器内核与 FFmpeg 构建脚本存放在 ijkplayer/,复用的二进制库放在 lib/。流程文档、架构图与配置说明集中在 doc/。三方 OpenHarmony 依赖通过 oh_modules/ 与 ohpm 管理。
ohpm install:根据 oh-package.json5 安装 ArkTS 依赖,新增/升级模块后必跑。hvigor --mode module assemble entry:编译 entry 模块并生成默认 HAP,必要时追加 --product-name default。hvigor --mode module clean:清理构建缓存,确保可重复构建。ArkTS/ETS 采用两个空格缩进、PascalCase 文件名(如 UploadMusicPage.ets)、camelCase 成员命名。UI 逻辑保持声明式,业务流程尽量下沉到 common/ 或 viewmodel/。除非调试底层连接,优先使用 Logger 封装而非裸 console。原生模块遵循仓库 .clang-format(LLVM 风格,两空格)与 .clang-tidy 配置,禁止混用 Tab/空格。提交前通过 DevEco Studio 运行 ESLint/ArkTS 检查。
Hypium 自动化尚未完备,现阶段以真机冒烟为主:播放本地音频、执行 WebDAV 上传(UploadMusicPage)、验证后台任务。新增复杂逻辑时,在 entry/src/main/test/ 下补充 Hypium 用例,命名为 <Feature>Spec.ets。CI 覆盖前,请在 PR 描述中列出手工测试步骤和结果。
历史提交常见中文简述配合 Conventional Commits 前缀(如 feat(remote-drive): ...、fix: ...)。主题维持祈使句、72 字符内,涉及特定模块请加 scope。提交 PR 时需:
切勿提交真实 WebDAV 凭据或 VIP 秘钥,统一通过 PreferencesUtil 注入或在 doc/ 示例中使用假数据。大体积媒体应放在 entry/src/main/resources/rawfile 或 .gitignore 指定的外部包。修改 ijkplayer/ 相关内容时,本地执行 prebuild.sh 生成产物,勿直接提交二进制。