
如果你常用 V 站,一定遭遇过这几个具体时刻:在手机上刷「最热」刷到一半被自动跳走网页;想回个帖子必须保持浏览器登录态,可 WebView 又总在关键一步掉登录;想看「楼主附言」得手动回到网页版找;想用某个节点的内置搜索却只能借 sov2ex 网页……这些是 V 友在 Android 端多年积攒的小毛刺,官方没有动过,多个第三方客户端也已多年不更新。

场景痛点
V 友在 Android 端的「卡」点集中在五个真实场景:
- 刷「最热」被打断:移动端浏览器对轮询 / 长会话的支撑不稳定,反复被弹回网页。
- WebView 登录总掉:回复 / 发帖 / 关注同步走网页表单,登录态稍不留神就失效。
- 楼主附言找不到:新版 V 站只在网页展示附言,移动端若不抓页面就看不到。
- 节点内搜索被绕过:内置搜索只能走 sov2ex 网页,移动端没有等价入口。
- 官方与第三方均停滞:V 站官方移动端常年停在未维护状态,主流第三方客户端更新节奏已放缓。
这些看起来零碎,单点都没到「不可用」,但叠加在通勤、午休、出差等碎片化场景里,就是长期使用摩擦。


它是什么
V2EX for Android(仓库 xinghelee/v2ex-android)是一个面向个人使用的 Android 客户端,全程 Kotlin + Jetpack Compose 构建,数据来源拼接了 V2EX 官方 API(v1 / v2 信封结构)、网页会话(用于登录态下的关注节点、收藏、发主题)和 sov2ex 全文索引服务。
它是单作者项目——所有提交都来自 xinghelee,目前 34★ / 1 Fork,Tag 版本号刚到 v1.2.1(2026-09-02 发布)。最大亮点是在项目结构上完全沿「Android 现代技术栈」标准走:Material 3 + Hilt + Retrofit + Coil 3 + Room + DataStore + EncryptedSharedPreferences,没有花哨依赖,编译输出 1MB 左右——这是典型的 开源项目 配置。
它也是一个彻头彻尾的 开源软件:所有代码公开、Tag 内置可编译的发布版,无内置分析 / 推送 / 广告 SDK。

界面预览
上图把「全部 / 最热 / Apple」三个首页横滑分类拼到了一起。最上面是顶栏 logo、搜索、发帖;下面是分类 chips、精选头卡、话题卡片(节点徽标、回复数、时间、副标题预览)。
上图从左到右:首页分享创造节点、节点全部分类(含技术 / 创意 / 生活 / 好玩 / Apple 等九大目录)、「我的」页——未连接账号时给出 Personal Access Token 的提示路径。
核心功能
浏览:信息流 + 话题 + 节点三件套
首页把 [全部 / 最热 / 关注] 三个 Tab 横滑外加「关注节点」自动收集为一个 chips 横排——这是这款 移动应用 最常用的入口;浏览话题支持段落 / 代码块 / 引用 / 图片独立渲染、只看楼主、楼主附言(用 Jsoup 抓网页)、浏览数、PRO 徽章——这些是 V 站老用户嘴上长期抱怨、但官方或第三方客户端常常不做或者做一半的细节;节点目录有 9 大分类、1300+ 个节点、每个节点带自己的真实 logo(不画绿底不描边)。
搜索是个亮点:sov2ex 全文索引把回复里的关键词都检索并高亮,本地再过滤用户和节点三类;历史 30 天 / 500 条浏览记录、阅读进度记录到楼层级(再次点开会滚到上次看到的位置)。
账号:登录两套机制并存
写操作必须登录;但 V2EX 没有开放写 API——这个 App 的处理方式是「双轨」:
- 写权限以外(登录、PAT 个人 token、通知、资料、长帖分页)走 API 路线:用户进
v2ex.com/settings/tokens自己生成一个 PAT 填进 App 即可,省去 WebView。 - 写操作(回复、发主题、关注节点同步)走 WebView 登录 + 表单提交——和网页上点「回复」完全相同的请求,所以不存在「点不动」「按了不响应」这类被 V 站风控拉黑的问题。
回复时草稿自动保存,每层「回复」按钮预填 @user #楼层,输入 @ 弹参与者补全——这是 iOS 版打磨过搬到 Android 的体验。
互动:分享为卡片 + 二维码
分享比常规「拷贝 URL」更体面:选「分享为卡片」会生成一张带标题 / 作者 / 摘录 / 二维码的图片卡,经系统分享面板发出——收到图的人扫一下就能直达原帖。这个能力在 IM 群里分享技术帖很省事。
发布主题也用了网页的 once + 表单,单认可 /t/<id> 重定向为成功;未确认时回退到 API 查询兜底防重复发帖。两路互相校验一次。
离线:稍后读 + 自动离线协调器
整帖连回复可存本地,离线可读——这是「地铁上看 V 站」必备能力。关注节点有「自动离线」开关:可设仅 Wi-Fi、30 分钟节流一次,避开把手机流量吃光。协调器逻辑集中在 data/repository 里,规则透明,没偷跑流量。
通知:未读角标直跳
通知分类:回复 / @ / 感谢。底栏「我的」上挂个红色角标,点进去直达具体楼层页——不是列表里找,是直跳。
外观:5 套主题 + 完整字号行距可调
5 套主色调(翡翠绿 / 海洋蓝 / 绯红 / 琥珀橙 / 紫罗兰)HEX 逐一对齐,明暗双模之外还能调字号 / 行距 / 等宽字体。Material 3 动态取色墙纸(Android 12+)支持开了的话也跟着切换。
v1.2.1 专项更新:iOS 26 风液态玻璃
最新版本(tag v1.2.1,2026-09-02 提交)做了两个能直接看出来的事:
- 底栏换成 iOS 26 风格的液态玻璃胶囊,内容会从胶囊下方滚过;不喜欢可以在设置里关掉,回退原 Tab 栏。
- 应用图标重新画了:按 adaptive icon 安全区重排,底色改为与 iOS 同款渐变,补 Android 13 主题色单色层;默认图标为「双气泡」,设置里另有三点 / 镂空 V / 粗 V 四款可选。切换放在
MainActivity.onStop(不杀进程),详情可以看 commit message 的解释。
安装与使用
下载最新 APK:Android 8.0+,APK 安装即可使用,Release 页附带 SHA-256 校验值;目前仓库只有 Tag 没有正式 Release zip,需要从源码或侧载源获取,下文列源码构建方式)。
源码构建:
构建环境:JDK 17+,Android SDK Platform 37。AGP 9.x 内置 Kotlin 支持,不需要单独的 kotlin-android 插件。
对有意继续魔改或者要复刻类似项目的人来说,这个 GitHub精选 仓库是相当典型的 开发者工具 学习样本:从 feature/ 按页面分包到 repository/ 业务协调器,类目清晰、Compose 与 Hilt 的契合度也好。
使用上分两档:
- 只看不写(90% 用户):不用登录直接打开就能看 V 站全部 / 最热 / 节点 / 搜索。
- 回复、发主题、看通知(活跃 V 友):进「我的」按引导去 V2EX 网页
Personal Access Token申请一个 token 填进来;想完全贴近网页体验、即时写、再单独用 WebView 登录一次把会话 Cookie 落本地(EncryptedSharedPreferences加密存)。两者可以叠加,登录态和 token 各管各的。
我的使用感受
装到 Pixel 7 上试了几小时。最直观的感受是这是一个写了再写、不愿留 TODO 的 App——比如节点目录页的图标,之前漏传 transparentFallback 导致节点自己的 logo 被盖在一层 primary 绿方块上,作者专门写了个 fix commit 把绿底和描边一起去掉;比如旧图标的气泡画到 adaptive icon 安全区外面被圆形启动器切角,作者重画了 4 款图标、把切换放在 onStop 绕开进程被 kill 的坑。这种细节日常用户感知不到,但累积起来是「用着不别扭」的根因。
液态玻璃胶囊确实漂亮——v1.2.1 装上后底栏的通透感和滚动内容叠合的视觉是同类 Android 客户端里我没见过的,喜欢的人会很吃。如果你用惯了 iOS 26 风又想留 Android,可能值得专门装一个。
它当然也有边界:暂未上架 Google Play / F-Droid,只能从 GitHub 下载或自己编译;V2EX 官方 API 限频 600 次 / 小时 / IP,App 内做了串行控制,但如果你同时挂着网页和 App 别忽略这一点;折叠屏外屏与手机一致,展开态为拉伸单列,没做大屏双栏——这是 v1.2.1 仍未触碰的领域,也是大屏党的遗憾点。
整体对作者的目标「个人使用的 V2EX Android 客户端」是非常兑现的——没有任何超载功能,没有花哨分支,是一个「自用 → 自家」的产物。如果你正在为日常刷 V 站寻找一个不打扰的小 工具推荐,把它列入 实用软件 的 Android 分类下不会错;作为一份 宝藏资料,它也值得长期收在你的 Android 客户端清单里。
官方网站
https://github.com/xinghelee/v2ex-android
https://xinghelee.github.io/v2ex/
下载地址
https://pan.quark.cn/s/64918d3d272f







