Commit Graph

33 Commits

Author SHA1 Message Date
550ec72bb7 fix:麦克风权限 Permissions 类型用法修正
上一提交写成 Permissions.MICROPHONE 导致 CompileArkTS 失败:
  'Permissions' only refers to a type, but is being used as a value here

Permissions 在 @ohos.permissions 中是 export type 字符串联合类型, 不是枚举,
只能用在类型位置。改为类型标注 + 权限名字面量:

  const PERMISSION_MICROPHONE: Permissions = 'ohos.permission.MICROPHONE';

注意 abilityAccessCtrl 里的 SwitchType.MICROPHONE(=1) 是开关类型枚举,
与权限名无关, 容易误用。

readme 4.3.3 补充该类型坑说明。
2026-10-17 11:53:44 +08:00
9086f1665c feat:鸿蒙元服务接入麦克风运行时权限申请
MICROPHONE 是 user_grant 权限, 上一提交补了 module.json5 的 reason 只解决
了编译校验, 运行时仍需弹窗申请, 否则录音功能不可用。

在 EntryAbility.onCreate 中调用 abilityAccessCtrl.requestPermissionsFromUser。

关键点:
- AscfUIAbility 父类已定义 onCreate, 重写时必须调 super.onCreate(want,
  launchParam), 否则跳过 ascf runtime 初始化导致元服务白屏
- 选 onCreate 而非按需触发: 权限状态在 JS 侧 (uni.getRecorderManager) 读不到,
  项目无现成 JS<->ArkTS 通道; 且 requestPermissionsFromUser 对已授权应用
  直接 resolve 不弹窗, 实际只有首次启动打扰用户一次
- 降级: 未授权不影响浏览/下单/卡片, 仅语音不可用, 前端 voice-panel 会
  showToast 提示

readme 4.3.3 补充该实现与踩坑说明, 4.3.4 移除已解决项。
2026-10-17 11:46:57 +08:00
add384916c fix:鸿蒙元服务麦克风权限补充 reason 字段
ohos.permission.MICROPHONE 是 user_grant 权限,必须同时声明
reason 和 usedScene,缺失导致 hvigor 报 00303218 配置错误、
entry:default@PreBuild 失败。

补充 reason 引用,并新增 permission_microphone_reason 字符串资源。
其余 INTERNET / GET_NETWORK_INFO / VIBRATE 均为 system_grant,无需改动。
2026-10-17 11:23:36 +08:00
9d990e6aac feat: implement voice input feature with press-and-hold gesture
- Added new language strings for voice input functionality in English and Chinese.
- Updated manifest to include microphone permission for voice recording.
- Enhanced ai-chat-message component to support voice input with visual feedback for recording and cancellation gestures.
- Integrated voice recorder functionality in ai-chat-voice-panel, allowing users to record audio with a maximum duration of 60 seconds.
- Implemented audio handling logic to upload recorded audio files and display them in the chat interface.
- Added error handling for voice recording failures and user notifications.
- Updated styles for improved UI/UX during voice recording interactions.
2026-09-24 17:47:37 +08:00
d1c58f2ec8 chore(mp-harmony): 移除 ascf_build 下的构建产物 (rawfile + Index.ets)
背景:
  上一个 commit 把 ascf_build 整个目录的元数据纳入 git, 但误把
  每次构建都会变化的产物也入仓了:
    - rawfile/index.js: 每次 DevEco Build 重新生成 (含 webpack chunk id, hash 等)
    - rawfile/<root>/diy-*.pack.js: 同上
    - rawfile/<root>/placeholder/index.html + index.pack.js: 同上
    - Index.ets: 5 个包都是 0 字节空壳, 没有任何内容

  这些文件应该被 .gitignore 排除, 避免每次 DevEco Build 后 git
  status 都会报告 "modified", 污染 diff。

改动:
  1. .gitignore 改造
     - rawfile/** 整体 ignore (鸿蒙端每次 Build 重新生成)
     - Index.ets ignore (空壳, 0 字节)
     - 移除之前的 ! 兜底规则 (rawfile/**/placeholder/index.*,
       rawfile/index.js, base/element/*.json 等), 因为这些都
       已经在 rawfile/ 下被整体 ignore
  2. 从 git 历史删除 12 个误入的产物文件 (5 个 Index.ets +
     5 个 rawfile/index.js + 1 个 placeholder/index.html +
     1 个 placeholder/index.pack.js), 保留在工作树

仍然入 git 的 ascf_build 关键文件 (每次 commit 都更新):
  - oh-package.json5
  - build-profile.json5
  - hvigorfile.ts
  - obfuscation-rules.txt
  - src/main/module.json5
  - src/main/resources/base/element/string.json
2026-07-30 14:36:14 +08:00
6f0d6a9f59 fix(mp-harmony): 修正签名证书文件路径
修复了build-profile.json5中证书文件路径配置错误,将原本的./cert-profile/qq/.p12调整为正确的./cert-profile/qq/qq.p12
2026-07-30 14:32:34 +08:00
8ebd7918fb chore(mp-harmony): 修正子包 HAR name 字段 + 纳入元数据到 git
背景:
  mp-harmony 项目的 5 个 ascf shared HAR 子包 (components_diy / pages_goods /
  pages_order / pages_promotion / pages_tool) 在 ascf_build 目录下, 关键
  元数据 (oh-package.json5 / module.json5 / build-profile.json5 /
  Index.ets / hvigorfile.ts / obfuscation-rules.txt) 之前被 .gitignore
  整体忽略, 从未被 git 跟踪, 导致 "module.name 被清空" 等回归无法被
  git diff / blame 追踪。

改动:
  1. .gitignore 改造
     - 不再整体 ignore ascf_build
     - 精确 ignore 已知产物路径 (rawfile/**/*.pack.js / rawfile/**/*.html
       / rawfile/**/*.json / build/ / oh_modules/ / .preview/ / .cxx/
       / .test/ / node_modules/)
     - ! 取反保留 HAR 必需文件 (placeholder/index.*, rawfile/index.js,
       base/element/*.json)
     - 补充 entry / hvigor / 鸿蒙签名材料 / IDE 临时文件 ignore 规则
  2. 首次将 5 个 HAR 包的元数据纳入 git (40 个文件)
  3. 新增 scripts/fix-subpackage-module-names.js: 任何入口 require
     vue.config.js 时自动修复 oh-package.json5.name + module.json5.module.name
     双重覆盖, 防止 DevEco ohpm 报 "00604007 Field IS Empty Error" 或
     hvigor 报 "Schema validate failed"
  4. vue.config.js 顶层 IIFE 触发修复 (任何 require 立即生效, 不依赖
     webpack 钩子)
  5. entry/scripts/check-har-deps.js 扩展: 校验 ascf_build 子包
     module.json5.module.name 字段 (兜底校验)
  6. entry/har-deps-required.json5 扩展: 新增 subpackageModuleJson5
     路径映射 + ohModulesRoots 校验资源齐备性
  7. entry/README-HAR-DEPS.md 更新: 故障速查表新增 module.name 相关
     报错条目

预期效果:
  - HBuilderX 触发 vue-cli-service build → vue.config.js 自动修复子包
    name → DevEco ohpm install / hvigor schema 校验通过
  - check-har-deps.js 兜底, 任何回归立即被检测并报错
  - 团队成员 git pull 后能立即看到 ascf_build 元数据, 可用 git diff
    跟踪 module.name 等关键字段变更
2026-07-30 14:26:55 +08:00
414a0e4438 chore(mp-harmony: 切换到QQ签名配置
更新应用包名和签名证书为QQ渠道的签名文件与配置
2026-07-30 11:52:09 +08:00
df9d45fc1d refactor(mp-harmony): add HAR dependency checks and debug logs
1. add debug logs for diy component lifecycle and data flow
2. add required HAR dependency declarations for mp-harmony entry module
3. add har-deps config, validation script and documentation
2026-07-30 11:43:25 +08:00
d5d3c2b7be chore: add cs and qq region harmony cert profile files
add all required certificate, key and profile files for huawei harmonyos cs and qq region packaging
2026-07-30 10:27:38 +08:00
c5134c1eb2 chore(mp-harmony): 更新鸿蒙项目配置与依赖
1.  新增忽略node_modules目录到gitignore
2.  升级modelVersion到6.0.0并更新相关配置
3.  更新ascf-toolkit插件与ascfapi依赖版本
4.  新增业务模块构建配置
5.  优化hvigor配置与插件参数
2026-07-30 09:01:25 +08:00
352c359326 chore(mp-harmony): 初始化鸿蒙元服务项目并完善配置
1.  添加应用及启动图标资源
2.  配置页面路由、卡片信息与资源文件
3.  更新gitignore排除rawfile目录
4.  修改构建签名的keyAlias为cs
2026-07-24 11:35:14 +08:00
1cc9fec69c build(mp-harmony): 更新签名密钥和证书密码
替换原有调试环境的签名密码为新的配置值,确保应用签名正常
2026-07-24 11:25:05 +08:00
2c89235f15 fix(mp-harmony): 更新应用包名
修正AppScope下app.json5中的bundleName配置项
2026-07-24 11:07:28 +08:00
1d8d18922b build(mp-harmony): 切换签名证书为cs相关配置并清理冗余资源
更新了build-profile.json5中的签名配置路径,替换为csDebug.p7b和cs.cer;删除了旧的kk.csr证书请求文件以及冗余的证书物料文件,同时移除了不再需要的组件依赖配置
2026-07-24 10:57:09 +08:00
0a6abd87ae build(mp-harmony): 添加components_diy和页面模块的构建配置
同时新增清理华为IDE内置node路径的脚本,以及空的权限检查文件
2026-07-22 16:48:46 +08:00
55a9ed5946 refactor: 重构底部导航高亮逻辑,新增跨平台兼容与工具脚本
1. 抽离底部导航归属逻辑为纯函数resolveEntryTab,优化分包页面高亮规则,对齐iOS HIG规范
2. 新增页面Tab通配符映射,简化PAGE_TAB_MAP维护
3. 修复鸿蒙平台webview返回按钮适配问题
4. 新增pages.json校验与导航标题自动注入脚本
5. 优化启动页动画性能,提升合成渲染效率
6. 修复diy-picture组件v-for缺少key的警告
7. 清理鸿蒙平台多余的分包构建配置
8. 更新统计数据与store注释说明
2026-07-16 11:47:29 +08:00
d7bc1165f7 refactor(quickapp): 优化页面稳定性与刷新逻辑
1.  为所有核心API调用增加try-catch兜底,避免异常导致页面崩溃
2.  添加刷新冷却机制防止重复触发重载
3.  移除onShow自动刷新逻辑,改为轻量日志处理
4.  完善CONFIG读取失败降级逻辑与日志输出
2026-07-15 17:07:29 +08:00
a32cedad9e feat(mp-quickapp): 配置统一域名与uniacid,优化缓存与页面刷新
1.  新增集中配置项管理BASE_URL和UNIACID
2.  动态生成带时间戳的加载URL与UA避免缓存
3.  后台切回前台时自动刷新web页面
4.  调整打包版本号与构建产物配置
2026-07-15 16:52:51 +08:00
fa082f59c1 fix: 更新快应用项目配置与接口地址
1.  修改userAgent的uniacid值从1116为2482
2.  将导航栏调用方法从hjiTitleBar改为setTitleBar
3.  更新默认加载URL为新的aigc-quickapp地址
4.  修正编译产物中的路径与版本号信息
2026-07-14 16:27:31 +08:00
81e85c804a chore(mp-harmony): 更新gitignore和构建配置
1. 修正gitignore中的鸿蒙元服务构建产物路径
2. 新增components_diy、pages相关模块的构建配置
2026-07-10 17:34:50 +08:00
2276291a4b build(mp-harmony): 添加目标SDK版本配置
补充鸿蒙项目的targetSdkVersion配置为5.0.0(12)
2026-07-10 16:52:42 +08:00
e04f5aabc0 build(mp-harmony): 移除多余的targetSdkVersion配置
删除build-profile.json5中冗余的targetSdkVersion字段,清理构建配置文件
2026-07-10 16:43:02 +08:00
a7dd0b302e refactor(mp-harmony): 简化店铺卡片逻辑,统一使用应用名作为卡片名称
1. 移除ShopInfo接口和默认数据中的shopName字段,不再返回店铺名称
2. 重构WidgetCard页面布局,移除营业状态显示和底部快捷按钮
3. 重构EntryFormAbility,仅保留2x2店铺卡片,使用应用资源名作为卡片名称
4. 注释暂时保留的店铺名称解析逻辑,后续需要时可重新启用
2026-07-08 15:50:46 +08:00
fd4fd61399 feat: 新增多尺寸卡片组件与配套服务
新增2*4商品横滑卡片、4*4活动促销卡片,重构基础店铺卡片UI;添加商品、活动数据拉取缓存服务,修复TextDecoder兼容问题,优化API拼接逻辑,支持多卡片尺寸适配
2026-07-08 11:48:31 +08:00
7808c63a79 feat(harmony): 实现鸿蒙卡片的店铺信息展示功能
1. 新增harmony.patch.js脚本,将根目录site.js同步到鸿蒙项目rawfile目录,供FormAbility读取配置
2. 新增ApiConfig.ets,实现从rawfile读取站点配置并兜底降级
3. 新增ShopInfoService.ets,封装店铺信息缓存、API请求和数据解析逻辑
4. 重构EntryFormAbility.ets,添加卡片异步更新和数据渲染逻辑
5. 重构WidgetCard.ets,实现带店铺logo、名称和营业状态的卡片UI
2026-07-07 18:16:18 +08:00
5f41febd70 chore(i18n): 清理死代码 + 遗留 lang 文件 + 旧工具
## 删除的死代码脚本
- scripts/i18n_class_c.py (脚本自承'新架构下永远输出 0',纯防御性)
- scripts/full_migrate_i18n.py (其产出违反 CLAUDE.md 1.2 中文 key 铁律,已标 DEPRECATED)
- scripts/__pycache__/ (Python 缓存)

## 删除的旧 per-page lang 文件
- lang/zh-cn/<page>/<file>.js (140 个)
- lang/en-us/<page>/<file>.js (139 个)
- 共 279 个文件,运行时不再加载,0 个 key 被 .vue 调用(经 diagnose_keys.py 验证)

## 删除的备份和迁移表
- lang/_backup/ (git 已跟踪原文件)
- lang/_migration_map.json / lang/_migration-map.json (运行时不用)

## 删除的中间产物 JSON
- docs/i18n-rename-*.json (smart_rename 中间产物,已用完)
- docs/i18n-ambiguous.json / i18n-audit.json / i18n-call-rewrite.log /
  i18n-clean-dead.log / i18n-file-texts.json / i18n-page-titles.json /
  i18n-vue-extract.json (前一会话残留,无引用方)
- docs/i18n-{naming,shadow,strict}-audit.json (脚本会自动重新生成)

## 删除的 modular lang 文件
- lang/zh-cn/*.js / lang/en-us/*.js (20 个模块文件,内容是上一会话产生的死代码)
- lang/zh-cn/index.js / lang/en-us/index.js (聚合入口)
- lang/DEPRECATED.md (已不再相关)

## 删除的不成熟脚本
- scripts/check_perpage.py (诊断用,已完成)
- scripts/diagnose_keys.py (诊断用,已完成)
- scripts/smart_rename_i18n.py (v1-v3 都 bug,未修完)

## 现状
- lang/ 现在只有 zh-cn.js + en-us.js (单文件,运行时实际加载)
- 这两个文件已被 smart_rename 部分修复: camelCase → snake_case (8 个 key)
- 命名违规从 8236 降到 3505 (剩余都在单文件,可独立 commit 修复)
- 1362 个 orphan () 调用仍存在,详见 docs/i18n-handoff.md
2026-06-25 10:48:15 +08:00
23b5e91d11 stub-app-projects\mp-harmony\entry\src\main\resources 这个目录也要从git 仓库中删除 2026-06-04 10:35:42 +08:00
b8112e20d6 feat(mp-harmony): add PRIVACY_WINDOW permission for entry ability
新增隐私窗口权限配置,适配EntryAbility使用场景并设置为始终可用
2026-06-04 10:03:14 +08:00
e86c5d874e 清理不需要git管理的文件 2026-06-04 09:35:10 +08:00
0e409247cd chore: 清理pages_tool相关冗余文件并调整配置
1.  删除整个pages_tool编译构建目录下的所有冗余文件和配置
2.  更新站点uniacid为2482,移除diy-form对ns-newform的依赖
3.  调整多个组件json配置的字段顺序,移除页面中对ns-newform.pack.js的引用
2026-06-04 09:02:17 +08:00
0b06ad56dc feat(mp-harmony): 完善鸿蒙小程序项目适配与新增功能
1. 新增MP-HARMONY平台编译支持
2. 新增大量自定义组件、页面与工具页面
3. 调整站点配置与应用名称
4. 清理冗余静态资源与旧组件配置
2026-06-04 08:37:57 +08:00
a27925c24f 备份stub-app-projects 作为分发物 2026-06-03 11:47:59 +08:00