Browse Source

docs: 同步开发状态文档,补充 EAS 占位符上架阻塞说明

修正两处已过时描述:
- 「应用图标仍为旧图」→ 已在 878710c 替换为 1024×1024「有职」logo
- 「已补齐 updates 字段」→ 该块已在 aa7b171 注释掉,并说明原因
  (占位 projectId 会让 Expo Go 拉取不存在的远程更新导致蓝屏)

补齐 EAS 占位符说明:owner 与 extra.eas.projectId 两处占位符会直接
阻塞 eas build / eas submit,需 eas login 后执行 eas init 自动注入,
不可手工填写。

同时记录启动屏已接线,并标注其需出包验证(Expo Go 内不生效)。
master
doublex001 1 month ago
parent
commit
d1b12f3f1f
  1. 12
      项目开发状态.md

12
项目开发状态.md

@ -81,8 +81,14 @@
### 4.3 工程与上线 ### 4.3 工程与上线
- **应用图标**:`assets/icon.png` 仍为旧图,未替换为「有职」logo(需 1024×1024 PNG)【上架硬项】。 - **应用图标**:✅ 已完成(提交 `878710c`)。`assets/icon.png` 已替换为「有职」logo,实测 1024×1024,符合商店要求。
- **EAS / OTA**:已创建 `eas.json`(development / preview / production + submit 配置骨架)并补齐 `app.config.js` 的 `owner` / `runtimeVersion` / `updates` / `ios.bundleIdentifier` / `android.package` / `extra.eas.projectId` 字段。占位项 `REPLACE_WITH_EAS_OWNER` 与 `REPLACE_WITH_PROJECT_ID` 需你 `eas login` 后执行 `eas init` 自动注入;`com.youzhi.app` 可按开发者账号调整。 - **启动屏**:✅ 已接线。安装 `expo-splash-screen@57.0.9`,在 `app.config.js` 以 config plugin 形式配置 `assets/splash-icon.png`(1024×1024、`imageWidth: 200`、`resizeMode: 'contain'`、白底)。此前该资源为死资源且冷启动白屏。因应用为纯亮色(`userInterfaceStyle: 'light'`),未配置 `dark` 分支。**注意**:启动屏属原生配置,Expo Go 内不生效,需 `eas build` 出包后可见。
- **EAS / OTA**:`eas.json` 配置骨架(development / preview / production + submit)已建;`app.config.js` 的 `runtimeVersion` / `ios.bundleIdentifier` / `android.package` / `extra.eas.projectId` 字段已就位。**以下两项占位符会直接阻塞 `eas build` / `eas submit`,上架前必做**:
1. `owner: 'REPLACE_WITH_EAS_OWNER'` —— 需替换为你的 Expo 账号名;
2. `extra.eas.projectId: 'REPLACE_WITH_PROJECT_ID'` —— 需替换为真实 EAS 项目 ID。
两者均可由 `eas login` 后执行 `eas init` 自动注入,**不要手工填**。`ios.bundleIdentifier` / `android.package` 当前为 `com.youzhi.app`,可按开发者账号调整。
- **`updates`(OTA)块当前为注释状态,属有意为之**:见提交 `aa7b171`。占位的 `REPLACE_WITH_PROJECT_ID` 会让 Expo Go(开发期)启动时去拉取不存在的远程更新,报 "Failed to download remote update" 并蓝屏。待 `eas init` 注入真实 projectId 后再取消注释启用 OTA。
- **真实后端**:全量 mock(`src/api/api.ts` 5088 行),未切换真实 `fetch`。 - **真实后端**:全量 mock(`src/api/api.ts` 5088 行),未切换真实 `fetch`。
- **技术债**:8 处 `any` 软警告已全部清理(图标断言改为 `keyof typeof Ionicons.glyphMap`、路由断言改为 `as string`),`eslint .` 现 0 error 0 warning,`tsc --noEmit` 保持 0 错误。 - **技术债**:8 处 `any` 软警告已全部清理(图标断言改为 `keyof typeof Ionicons.glyphMap`、路由断言改为 `as string`),`eslint .` 现 0 error 0 warning,`tsc --noEmit` 保持 0 错误。
@ -90,7 +96,7 @@
## 五、后续增量开发建议(优先级) ## 五、后续增量开发建议(优先级)
- **P0(上架前必做)**:图标替换【待你提供 1024×1024 logo】 · ~~隐私 / 协议内容填充~~ **隐私/协议草案【已存在,含 18 岁门槛,待填【待确认】占位】** · ~~EAS 初始化~~ **EAS 配置骨架【已完成,待账号注入占位】** · ~~18 岁门槛核对~~ **18 岁门槛【已在隐私政策第六章 + 用户协议前言落地】** · ~~微信登录接入评估~~ **微信登录接入评估【已完成 → 见 `微信登录接入方案.md`,SDK 接入阻塞于微信开放平台 AppID】**。 - **P0(上架前必做)**:~~图标替换~~ **应用图标【已完成,`878710c`,1024×1024「有职」logo】** · ~~隐私 / 协议内容填充~~ **隐私/协议草案【已存在,含 18 岁门槛,待填【待确认】占位】** · ~~EAS 初始化~~ **EAS 配置骨架【已完成,`owner` / `projectId` 两处占位符阻塞 `eas build`,需 `eas init` 注入,详见 4.3】** · ~~18 岁门槛核对~~ **18 岁门槛【已在隐私政策第六章 + 用户协议前言落地】** · ~~微信登录接入评估~~ **微信登录接入评估【已完成 → 见 `微信登录接入方案.md`,SDK 接入阻塞于微信开放平台 AppID】** · ~~启动屏接线~~ **启动屏【已完成,`expo-splash-screen` + `splash-icon.png`,需出包验证】**。
- **P1(核心差异化)**:~~微信登录接入方案~~ **微信登录接入方案【已落文档,真实 SDK 接入阻塞于微信开放平台移动应用申请】** · ~~企业端快捷入口话术统一~~ **企业端快捷入口话术统一【已完成,6 处 label 对齐规范词;含沟通页快捷操作 onPress 接线,tsc/eslint 0 问题】** · ~~付费法律服务支付~~ **付费法律服务支付【已完成:mock 支付闭环,选套餐→结算→模拟支付→会员激活持久化,tsc/eslint 0 问题】** · ~~通关小游戏 7 关内容~~ **通关小游戏 7 关内容【已完成:结构原已建成,本次增厚至 7 关 22 题,tsc/eslint 0 问题】**。 - **P1(核心差异化)**:~~微信登录接入方案~~ **微信登录接入方案【已落文档,真实 SDK 接入阻塞于微信开放平台移动应用申请】** · ~~企业端快捷入口话术统一~~ **企业端快捷入口话术统一【已完成,6 处 label 对齐规范词;含沟通页快捷操作 onPress 接线,tsc/eslint 0 问题】** · ~~付费法律服务支付~~ **付费法律服务支付【已完成:mock 支付闭环,选套餐→结算→模拟支付→会员激活持久化,tsc/eslint 0 问题】** · ~~通关小游戏 7 关内容~~ **通关小游戏 7 关内容【已完成:结构原已建成,本次增厚至 7 关 22 题,tsc/eslint 0 问题】**。
- **P2(打磨)**:~~技术债清理~~ **技术债已清理(8 处 `any` → 明确类型,`eslint` 0 warning)** · 真实后端对接 · OTA 通道验证。 - **P2(打磨)**:~~技术债清理~~ **技术债已清理(8 处 `any` → 明确类型,`eslint` 0 warning)** · 真实后端对接 · OTA 通道验证。

Loading…
Cancel
Save