修复一些列bug

This commit is contained in:
2026-08-01 21:44:59 +08:00
parent cc3f273872
commit 562ba8e603
26 changed files with 1181 additions and 1 deletions

View File

@@ -631,3 +631,28 @@
- 1280×720 下四个统计卡各约 233px 宽,内容 `scrollWidth=231px`,没有裁切;整页宽高仍与视口一致。
- 390×844 下使用两列统计卡和较小的号段字号,号段与等待时间保留 20px 间距;页面 `scrollWidth=390``scrollHeight=844`,无横向或纵向溢出。
- 浏览器日志只有 Vite 连接与热更新调试信息,无 warning 或 error。
# 2026-08-01 Android 公示屏 APK
- 用户要将公开项目页面做成 Android APK明确只有“项目列表”和“具体项目展示”两类页面。
- 现有仓库已提供公开项目列表入口 `/admin/display` 和单项目入口 `/display/{项目编码或 Token}``YYHHC` 是现成项目编码示例。
- 初始方案是原生 WebView 薄壳线上页面保持单一事实来源APK 负责沉浸式显示、屏幕常亮、允许无需手势的媒体播放和受控页面导航。
- 仓库当前没有 Android 工程;需要先确认本机 Android SDK/JDK/Gradle 能力,再选择兼容的最小构建配置。
- 公开项目列表入口实际是 `/admin/display`;每个项目卡的“全屏展示”调用 DOM `requestFullscreen()`,并不跳转 URL。Android 壳必须实现 `WebChromeClient.onShowCustomView`,否则仍会出现“浏览器未允许全屏”。
- 单项目展示入口是 `/display/:token`,同时支持项目编码(如 `YYHHC`)和既有公示 Token可作为 HTTPS 深链直接进入 APK。
- 本机有 Amazon Corretto JDK 21、Android SDK platform 35/36/36.1、Build Tools 35.0.0/36.1.0/37.0.0;未把 Gradle、ADB、sdkmanager 加入 PATH仓库也没有 Gradle Wrapper。
- Android SDK 实际位于 `C:\Users\7brot\AppData\Local\Android\Sdk`,可由工程 `local.properties` 或构建环境变量显式引用。
- 普通网页读取器对 `queue.nianxx.cn` 返回不可重试的安全校验拒绝,未获得线上页面内容;不能把该失败解读为线上服务不可用。
- 应用内浏览器打开 `/admin/display` 时也在资源加载阶段超时;这与仓库 2026-07-31 的线上访问记录一致,当前尚无证据表明页面业务接口本身故障。
- 有界重试成功打开 `https://queue.nianxx.cn/display/YYHHC`,页面标题为“景区排队叫号系统”,项目名为“鸳鸯湖下湖自助手划船”,单项目展示结构与源码一致。
- 浏览器侧出现的是宿主 Statsig 初始化超时,目标页面本身已完成导航和 DOM 渲染;不将该外部统计错误计入产品故障。
- `/admin/display` 第二次只读导航仍超时,按有界重试原则停止;其路由、项目卡、全屏按钮和公开数据接口已由本地源码及 2026-07-31 的既有验收充分确认。
- Android 官方 AGP 9.2.0 兼容表要求 Gradle 9.4.1、最低 JDK 17、最低 Build Tools 36.0.0;本机 JDK 21 与 Build Tools 36.1.0 满足基线,因此采用 AGP 9.2.0 + Gradle 9.4.1。
- Android 官方文档明确WebView 若不覆盖 `onShowCustomView/onHideCustomView` 会向网页报告不支持全屏;`setMediaPlaybackRequiresUserGesture(false)` 可取消默认的媒体播放手势要求。这两项正好对应项目列表全屏和叫号播报需求。
- 本机 Gradle 缓存已包含完整的 Gradle 9.4.1 发行包,可直接生成 Wrapper无需另行下载启动器。
- Android 工程采用纯 Java 和系统 WebView不引入 AndroidX、UI 框架或运行时第三方依赖;唯一测试依赖是 JUnit 4.13.2。
- Android 单测、Lint 和 Debug APK 构建已同时通过APK 包名 `cn.nianxx.queue.display`、版本 `1.0.0`、minSdk 23、target/compileSdk 36仅声明网络权限。
- 生成的 Debug APK 为 902,508 字节,已通过 v1/v2 签名校验;当前电脑未连接 Android 真机或模拟器,因此无法在本轮执行设备级 WebView/音频/全屏交互验收。
- Lint 第二轮为 0 错误、4 个版本/配置警告;确认 `autoVerify=false` 曾误加到 Launcher Filter现已移到 HTTPS VIEW Filter剩余三个是本机未安装 API 37 和采用 AGP 官方默认 Gradle 9.4.1 的已知版本提示。
- 最终干净构建后 Lint 为 0 错误、3 个已知工具链版本提示WebView 危险 API 定向扫描无匹配。
- 最终交付 APK 位于 `deliverables/android/XQKQueue-Display-1.0.0-debug.apk`,大小 895,292 字节SHA-256 为 `5504D25C1FDB1310FF85DADCB779BA5C07F48706514B23F8265B492CE21CAB30`