Skip to content

妖精论坛 · Android 客户端 V1.0.15

Choose a tag to compare

@crazying-dev crazying-dev released this 07 Oct 03:41
· 7 commits to Android since this release

妖精论坛 · Android 客户端 V1.0.15

本次更新:验证弹窗可见性修复 + 网页端登录 + 世界频道顺序

  • 修复:人机验证组件「靠上、被遮挡、点不到」。 此前承载页 WebView 挂在 AlertDialog 的槽位里,WebView 处于独立 Dialog 窗口时窗口层级与触摸命中区会错位——官方组件看着渲染出来了却点不动。现改为当前界面内的全屏遮罩层(Box + 居中卡片 + BackHandler),与 App 内已验证可用的 Live2D WebView 走同一条渲染路径;WebView 高度由 170dp 放宽至 260dp,并在 setOnTouchListener 里 requestDisallowInterceptTouchEvent(true) 让 WebView 独占手势;
  • 新增手动退路「改用滑块」。 Turnstile 分支多一个按钮,点一下立刻改用服务端自研滑块重新验证,不必再等 12 秒超时;
  • 新增网页端登录。 登录页新增「使用网页端登录」入口:在内置 WebView 里打开站点真实登录页 /auth?mode=login,官方 Turnstile 在真实网页里渲染,绕开内嵌承载页的一切兼容问题。登录成功后自动取出 token / ID 两个 HttpOnly Cookie 搬进 App 会话,随即返回;因为站点登录是 fetch() 提交不会跳转页面,成功判定采用定时读 Cookie(1.2 秒一次)+ 顶部「我已完成」手动重试双保险;
  • 修复:世界频道最新消息跑到最上面。 服务端返回的是按时间倒序的列表(最新在前),客户端此前原样渲染。现改为「早的在上、最新在下」,与聊天窗口一致,并在首次加载与发送成功后自动滚到底部。顺带修正截断口径:原来用 takeLast(100),在倒序列表上取到的是最旧的 100 条,现改为 take(100);
  • 版本号升至 versionCode = 16 / versionName = 1.0.15。

说明

  • 网页端登录后的会话与网页同源(token / ID,有效期 7 天);若在网页侧退出登录,App 会因 Cookie 失效被服务端 401 → 自动清理本地会话;
  • 人机验证与网页登录的 WebView 一律页面内组合渲染,不再放进 Dialog(层级 / 命中区会错位);
  • 服务端如需完全关闭人机验证,可设 CAPTCHA_ENABLED=0 并重启后端。
项 值
安装包 forum-android-1.0.15.apk(约 7.8 MB)
versionName 1.0.15
versionCode 16
最低 / 目标 SDK 24 / 36
SHA-256 1ca33a725c381683843956797caa206a5d7ff0d20efc7900cb110e9b78d36960
签名证书 SHA-256 bab9ac497b3b5b4f8fe3e36fbb9fec111c08831dc6e9100889a439f019aa4668