docs(android): adopt login-page legal consent
This commit is contained in:
@@ -102,11 +102,13 @@
|
||||
| 工单边界后端定向测试 | 通过 | 39 个测试,0 失败、0 错误 |
|
||||
| `ruoyi-aihr` 后端全量测试 | 通过 | 698 个测试,0 失败、0 错误;包含正式场景占位来源/回合/Rubric 禁止发布的新增回归;Windows CRLF 引发的 7 个源码契约误判已通过读取时统一 LF 修复并全量复跑 |
|
||||
| 法务配置技术链路 | 通过 | 登录协议默认不勾选;协议未配置时禁止验证码与登录;配置生成器和发布联网校验已接入,发布包拒绝开发验证码提示 |
|
||||
| 正式 App 发布配置校验 | **技术通过,法务签认阻断** | 受控内测版协议正文已通过 Caddy 公网 HTTPS 发布,原生弹窗、登录页和联网门禁使用同一组地址;公司法务尚未正式签认正文,不能视为正式发布通过 |
|
||||
| Android 设备、调试基座、测试签名和真机门禁 | **部分通过,仍阻断** | HBuilderX 5.22 已识别 vivo V2443A(Android 15);API 35 自定义基座和可独立安装的 DCloud 云证书内测 APK 均已生成。`0.1.10` 在 Android 15 虚拟机完成从 `0.1.9` 保留数据升级、冷启动并保持原生隐私弹窗和四项敏感权限未授权;媒体选择取消与直通车首次弱网恢复状态机已自动化修复。用户同意/拒绝、登录后录音允许/拒绝、真实系统选择器取消、真实断网恢复和完整反例仍未通过 |
|
||||
| 正式 App 发布配置校验 | **技术通过,法务签认阻断** | 受控内测版协议正文已通过 Caddy 公网 HTTPS 发布;启动原生提示关闭,登录页协议默认未勾选且验证码/登录失败关闭,包体与联网门禁使用同一组地址。公司法务尚未正式签认正文,不能视为正式发布通过 |
|
||||
| Android 设备、调试基座、测试签名和真机门禁 | **部分通过,仍阻断** | HBuilderX 5.22 已识别 vivo V2443A(Android 15);API 35 自定义基座和可独立安装的 DCloud 云证书内测 APK 均已生成。`0.1.12` 在 Android 15 虚拟机全新安装后确认无原生隐私提示、四项敏感权限未授权且无 Crash/ANR;媒体选择取消与直通车首次弱网恢复状态机已自动化修复。该虚拟机为 x86_64,不能完成 ARM-only DCloud 页面验收;登录页法务门禁、录音允许/拒绝、真实系统选择器取消、真实断网恢复和完整业务反例仍需 ARM64 真机 |
|
||||
|
||||
统一 RC 脚本已在干净运行时提交 `dc20b92061f10a356ed73eb105ef7b00c8b8a617` 上完整复跑,证据目录为 `output/aug1-rc/0.1.10-110-dc20b920-frozen/`,结果为 `releaseEligible=true`。发布/回滚、API 探针和可识别隐私二次确认/退出态的 Android 取证工具另冻结在 operations commit `71f005c22981989c5f2b24fa31c385a1b82657b7`。当前双提交交付包为 `output/aug1-release/bangdao-aug1-0.1.10-110-dc20b920-ops71f005c2.zip`,大小 `192,926,422` 字节,SHA-256 为 `4391895420B50EBBD8CB87EA20AF71A70D5DABAD5003F5361A8B034CF7525BCA`;已完成 14 个 ZIP 条目和 13 个 `SHA256SUMS.txt` 载荷的逐条复验。旧无 operations 后缀包、`ops861fa0ea` 与 `ops414af66e` 包保留作追溯但均已被替代。上述本地自动化冻结不替代生产后端发布授权和人工验收。
|
||||
|
||||
2026-07-29 根据企业内部应用体验决策,当前候选升级为 `0.1.12 (112)`,取消启动原生隐私确认,法务同意统一由登录页协议勾选承担。干净提交 `b9e08789265b73524e3ce2646abe2f2fc4565906` 的统一 RC 证据位于 `output/aug1-rc/0.1.12-112-b9e08789-frozen/`,结果为 `releaseEligible=true`;移动端 199 项、`ruoyi-aihr` 698 项及全部构建、APK 门禁通过。APK 大小 `33,921,458` 字节,SHA-256 为 `DD24E5F20BC7C064F5059E538A1FAB7518DF46CBAB502F59A3629F0B1B1F5EBB`。前述 `0.1.10` 双提交包仅保留追溯,不能再作为当前 APK 分发。
|
||||
|
||||
生活顾问调研已转成 `docs/content-candidates/aug1-life-advisor-content-candidates-v0.1.json`:包含 5 个禁用场景候选和 30 道待审政策题,内容候选校验脚本通过。由于当前只收到 1/24 份访谈,且正式来源、业务审核和 Rubric 签认尚未完成,正式可发布场景与正式有据标准答案均为 `0`;交付包中的候选文件只供审核,不得直接导入或启用。
|
||||
|
||||
### 3.3 Android 真机预检快照(2026-07-28)
|
||||
@@ -123,14 +125,14 @@
|
||||
- `configure:app-privacy` 已修正为写入 uni-app CLI 输入目录 `mobile-uni/src/androidPrivacy.json`,并同时核对 `dist/build/app/androidPrivacy.json`;APK 门禁区分“只含原生运行壳的自定义基座”和“内置业务资源的独立测试包”,避免再以 DCloud 默认空链接产生假绿。
|
||||
- 2026-07-28 23:12 生成的独立 DCloud 云证书内测 APK 位于 `mobile-uni/dist/debug/bangdao-0.1.5-dcloud-test.apk`,大小 `33,920,950` 字节,SHA-256 为 `AB634EB9A9F0939804151ED14815484FBD75DFE36CC24DF00EC23BDD762D8FD1`。脚本已验证包名、`0.1.5 (105)`、API 35、非调试、单签名、v2 签名和包内两个法务地址。
|
||||
- 该内测 APK 已在 vivo V2443A 完成同签名覆盖安装;只清除本 App 测试数据后,以系统 Launcher Activity 干净启动,原生 template 隐私弹窗真实显示,服务协议与隐私政策链接均通过 vivo 系统浏览器打开线上正文,未见 `FATAL EXCEPTION`。验收过程未代替用户点击同意或拒绝。
|
||||
- 2026-07-29 当前候选包升级为 `0.1.6 (106)`,位于 `mobile-uni/dist/debug/bangdao-0.1.6-dcloud-test.apk`,大小 `33,921,279` 字节,SHA-256 为 `A5F026B70F11327355597B9FEA3625C4168700297E6D7847F10B079CEB860914`。登录页法务校验已移除 App-Plus 不保证支持的浏览器 `URL` 构造器,测试验证码不再以源码常量进入包内;APK 反编译门禁已确认包内业务资源等于当前编译产物,并通过法务链接、签名和敏感值扫描。
|
||||
- 2026-07-29 当时候选包升级为 `0.1.6 (106)`,位于 `mobile-uni/dist/debug/bangdao-0.1.6-dcloud-test.apk`,大小 `33,921,279` 字节,SHA-256 为 `A5F026B70F11327355597B9FEA3625C4168700297E6D7847F10B079CEB860914`。登录页法务校验已移除 App-Plus 不保证支持的浏览器 `URL` 构造器,测试验证码不再以源码常量进入包内;APK 反编译门禁已确认包内业务资源等于当时编译产物,并通过法务链接、签名和敏感值扫描。
|
||||
- `0.1.6 (106)` 已在同一设备完成保留数据的覆盖安装和 Launcher 冷启动;相机、录音和媒体权限保持未授权,未见 `FATAL EXCEPTION`。覆盖安装保留了前一版本的隐私状态,因此最新包的拒绝/同意反例仍须由用户亲自执行。
|
||||
- 本机 Android Studio `Medium_Phone` 虚拟机已启动为 Android 15/API 35(`1080×2400`、密度 `420`)。在此前未安装本应用的虚拟机上,`0.1.6 (106)` 首次安装和 Launcher 冷启动成功,最新包真实显示原生隐私弹窗,四项相机、录音、图片和视频权限均未授予,crash 缓冲区为空。虚拟机只补充干净安装和 API 35 权限基线,不替代真机媒体、WebRTC、弱网与系统浏览器验收;拒绝/同意仍由用户亲自执行。
|
||||
- `0.1.8 (108)` 进一步把 Android 原生清单和 `network_security_config.xml` 纳入 App 构建链及 APK 反编译门禁。独立内测 APK 大小 `33,921,705` 字节,SHA-256 为 `E252140645F3AAD14B3594FD78E76BDF1A2122F7DC70EBD21CC5DF53223C7878`;APK 反编译确认 `usesCleartextTraffic=false`、`networkSecurityConfig` 引用和系统证书信任配置均已进入安装包,本机虚拟机卸载旧实例后全新安装并在 `2.904s` 内冷启动,最新隐私弹窗真实显示,四项敏感权限未授予且 crash 缓冲区为空。
|
||||
- 同一 `0.1.8` APK 随后在虚拟机完成保留数据的覆盖安装:覆盖后冷启动 `3.092s`、标准 Launcher Intent 暖启动 `0.538s`、切到系统桌面再恢复热启动 `0.120s`;三次均回到 `PandoraEntryActivity`,隐私弹窗保持可见,四项权限仍为 `granted=false`,未发现 FATAL 或 ANR。该证据只完成安装与首次弹窗前的生命周期基线,未代替用户选择隐私选项。
|
||||
- 针对 Android 系统文件选择器“用户取消”被误判为上传或转写失败的问题,五个选择服务已统一结构化取消信号,九个页面在取消时恢复空闲态并清理残留“转写中”;真实错误仍显示稳定中文。自动化已覆盖该状态机,但真实系统选择器取消仍须人工点击确认。
|
||||
- `0.1.10 (110)` DCloud 独立内测 APK 大小 `33,922,134` 字节,SHA-256 为 `20CB16B4E9D024DBF5EEEF577BFBA3B4DF5E5E78B597BABB99CB7450C7AE5034`。同一虚拟机从 `0.1.9` 保留数据覆盖安装成功,Launcher 冷启动约 `1.271s`,最新原生隐私弹窗可见,四项权限仍为 `granted=false`,未发现 FATAL 或 ANR。
|
||||
- 自定义基座和独立内测 APK 均使用 DCloud 云端测试证书,不是企业正式签名 APK;当前 `0.1.10` 已关闭明文流量并内置网络安全配置,但仍只可用于 8 月 1 日受控内测。公司法务签认、企业签名、用户实际同意/拒绝、登录后权限反例仍是正式发布阻断。
|
||||
- 自定义基座和独立内测 APK 均使用 DCloud 云端测试证书,不是企业正式签名 APK;当前 `0.1.12` 已关闭明文流量、内置网络安全配置并取消启动原生隐私确认,但仍只可用于 8 月 1 日受控内测。公司法务签认、企业签名、登录页协议门禁和登录后权限反例仍是正式发布阻断。
|
||||
|
||||
## 4. P0 工作分解
|
||||
|
||||
@@ -161,12 +163,12 @@
|
||||
|
||||
1. 使用 HBuilderX 5.22 重新生成并安装自定义运行基座。
|
||||
2. 执行 App 资源校验和 App-Plus 构建,阻止“命令成功但未生成有效资源”的假成功。
|
||||
3. 配置测试签名、应用标识、版本号、图标、启动图、原生隐私弹窗和麦克风/相机/相册/文件用途说明。
|
||||
3. 配置测试签名、应用标识、版本号、图标、启动图、关闭启动原生隐私提示,并保留登录页协议门禁和麦克风/相机/相册/文件用途说明。
|
||||
4. 确认 App 只请求正式 HTTPS 后端地址,安装包中不包含短信、模型、数据库、签名或其他服务端密钥。
|
||||
5. 生成 Release Candidate APK,并记录文件大小、SHA-256、构建源提交和构建时间。
|
||||
6. 保留上一可用 APK,准备安装失败、启动崩溃或关键接口异常时的回退说明。
|
||||
|
||||
8 月 1 日交付的是内部受控测试 APK。法务 HTTPS 页面已经技术上线并进入原生弹窗,但在未完成公司法务签认、企业正式签名和完整真机门禁前,不得描述为正式发布包或商店上架包。
|
||||
8 月 1 日交付的是内部受控测试 APK。法务 HTTPS 页面已经技术上线并进入登录页协议入口,启动不再弹原生确认;在未完成公司法务签认、企业正式签名和完整真机门禁前,不得描述为正式发布包或商店上架包。
|
||||
|
||||
### 4.3 P0-03:政策制度知识空间
|
||||
|
||||
@@ -295,8 +297,8 @@
|
||||
|
||||
- [x] APK 文件名、版本号、`versionCode`、SHA-256 和构建源提交可追溯。
|
||||
- [x] 全新安装、覆盖安装、卸载重装均可正常启动。
|
||||
- [x] 干净首次启动显示原生隐私弹窗,服务协议和隐私政策链接均可通过系统浏览器访问。
|
||||
- [ ] 用户实际拒绝后退出、同意后才进入登录,并保留相应验收证据。
|
||||
- [x] `0.1.12` 干净首次启动不显示原生隐私确认,四项敏感权限保持未授权且无 Crash/ANR。
|
||||
- [ ] 登录页协议默认未勾选,服务协议和隐私政策链接正确;未勾选时验证码和登录均被阻止,勾选后才允许继续。
|
||||
- [ ] 同意麦克风后可录音;拒绝后不循环申请,并提供明确的文字或文件降级。
|
||||
- [ ] 图片、视频、文档和音频选择取消后不残留错误状态。
|
||||
- [ ] 前后台切换、网络断开和恢复不出现白屏或重复提交。
|
||||
|
||||
Reference in New Issue
Block a user