Repository navigation
Releases: Hanestl/HaRu
Release list
HaRu 2.6.1
HaRu 2.6.1
本次为 2.6.0 的缺陷修复版本,主要解决 Rule34Video 观看历史被首页视频污染的问题。
Rule34Video 服务端只要收到视频详情页请求就会把该视频写入账号的观看历史。2.6.0 为加快详情页打开速度,会在首页与榜单加载后预测性预取前 3 个视频的详情页,于是这些「用户根本没点开」的视频被服务端记成了已观看。修复后预测预取现在只对 Hanime 生效,Rule34Video 仅在用户真正打开视频详情页时才请求详情,历史不再被预取请求写入。Hanime 的历史由播放接口单独上报,原有的预取加速保持不变;
HaRu 2.6.0
HaRu 2.6.0
本次更新带来应用内一键更新:启动时会静默检查新版本,发现更新即弹窗提示,也可以在「我的 → 关于 HaRu → 检查更新」手动检查,确认后 App 自行下载安装包并调起系统安装确认页完成覆盖安装,不必再跳浏览器手动下载。此外还重构了视频详情页的折叠播放器与吸顶页签,把大页面 HTML 解析移出主线程,并为本地库补齐视频 ID 索引,进入详情页、打开本地库与冷启动都更跟手。
应用内一键更新
- 启动时静默检查新版本:每次启动后自动检查一次(10 秒超时,失败或不支持的环境直接静默,不打扰使用);发现新版本时弹出「发现新版本」对话框,展示版本号与更新说明,同一个版本只提示一次,忽略后不会每次开 App 都再弹;
- 检查更新页新增「一键更新」:在「我的 → 关于 HaRu → 检查更新」可随时手动检查,查到新版本时页面直接给出「一键更新」按钮,而不再只是跳转 GitHub 页面;
- App 内下载并调起系统安装:确认后在 App 内下载 APK,对话框实时显示「已下载 X / Y」进度并可中途取消;下载完成先校验文件大小与 SHA256,校验通过后通过系统安装会话调起安装确认页,直接覆盖安装现有版本,不再出现「打开方式」选择器;
- 异常场景给出明确指引:未开启「安装未知应用」权限时先引导到系统设置、返回后自动继续安装;安装包校验失败、文件写入失败、设备存储空间不足、签名与已安装版本不一致、设备不支持自动安装时,都会提示具体原因;若该版本没有可下载的安装包,则自动打开 GitHub 发布页供手动下载;
- 更新源多通道回退:GitHub API 被限流时自动回退到 Release 页的 SHA256SUMS.txt 与 Atom Feed 补全安装包直链,仍找不到可用安装包才退回打开发布页。
Hanime1 接口梳理与解析加固
- 大页面解析移出主线程:Hanime1 的列表页与详情页 HTML 常在 100KB 以上,同步解析会占用主线程并造成掉帧;超过体积阈值的页面现在会下放到后台 Isolate 解析,搜索与详情页滚动更顺滑;
- 写操作提交路径统一:点赞、稍后观看、播放列表、评论与举报、账号资料与头像等写操作统一按站点要求携带令牌并区分请求方式,失败时保留可排查的日志上下文,不再只抛一个笼统错误;
- 错误提示可读化:评论发布、回复加载、举报、账号资料修改与头像更新等失败提示,不再显示英文异常串。
视频详情页重构
- 折叠播放器与吸顶页签:收起播放器后页签栏始终吸顶;播放中或置顶时,外层与内层滚动不再相互争抢,连续滑动不会再出现反复折叠 / 展开的抖动;
- 加载骨架屏:详情数据到达前显示骨架占位,不再先白屏再突然排版跳动;
- 断网恢复后自动刷新:网络从离线恢复时自动重新拉取详情,不需要手动返回再进;
- 详情组件拆分重构:点赞 / 稍后观看 / 下载 / 分享等动作按钮、观看数与发布日期等统计信息、Hanime 折叠简介与系列剧集横条均拆为独立组件;剧集面板可展开为底部全量列表,并自动把当前剧集滚动到视口中央;
- 播放出错提示更友好:播放源初始化失败与刷新播放地址失败时给出中文原因,播放器控制台只在可见性或缓冲状态变化时重建,减少无谓刷新。
网络层、数据库与细节修复
- 网络底座共享且能干净释放:同一站点的多个请求复用同一份底层原生网络适配器(按 UA、HTTP/2、QUIC 区分),避免重复创建造成的资源泄漏;App 退出时统一释放;已释放的请求明确报错而不再被误判成「用户已取消」,两个站点仍各自持有独立网络底座、互不干扰;
- 本地库数据库升级到 v14:为本地库的视频 ID 建立索引,按视频查询「在哪个库」与「是否存在」从全表扫描变为近乎即时;精选媒体库的匹配条件下推到数据库执行、库名判断改在内存集合中完成,冷启动更快(老版本升级时自动迁移,数据不丢失);
- 下载进度不再频繁写库:下载进度改为每 500 毫秒、每 1MB 或每 1% 变化才写入一次数据库,完成时补写最终大小,下载列表更跟手,也减少无谓的磁盘写入;
- 统一中文错误与可重试错误页:网络异常、HTTP 状态码、本地数据库读写异常、安全证书校验失败、超时与页面解析失败统一转换为中文说明;本地库、搜索建议等列表出错时提供「重试」按钮,不再是整屏英文异常;
- 站点徽章区分选中态:底部导航的 R / H 徽章未选中时为描边样式、选中时恢复红底,当前停留在哪个站点一眼可辨;
- 标签翻译联想更跟手:内置中文词条的归一化结果改为预先计算,输入时不再对每条词条重复做小写化与空白处理;
- 缩略图按显示尺寸解码:列表封面按卡片实际宽度(乘设备像素比)解码并限制内存缓存尺寸,长列表更省内存;加载占位由逐卡转圈改为静态占位块,滚动观感更稳;
- 启动默认站点更确定:默认入口站点在初始化阶段就完成同步,不再出现首帧渲染后又被动切换站点的情况。
HaRu 2.5.0
HaRu 2.5.0
本版本全面适配了 Rule34Video 站点的全新页面结构,改善了封面黑屏、历史记录不同步、收藏提示 HTTP 403 等问题;新增了 Hanime 网页端登录支持(支持 Google 快捷登录);并修复了部分 Android 手机冷启动闪退的兼容性问题。
Rule34Video 站点改版适配与核心功能修复
- 修复封面大面积黑屏:站点改版后对首屏后(第 5 张起)的卡片启用了延迟加载,现已全面支持读取
data-rd-src、data-rd-webp及data-rd-jpg属性,所有封面图均可正常呈现; - 适配新版个人中心结构:全面适配站点 Member Area 新版排版,修复媒体库中历史记录、收藏和播放列表出现空列表的问题;
- 修复收藏提示 HTTP 403:添加了对站点写操作安全令牌(CSRF Token)的自动申请与失效重试机制,加入或移出收藏不再报错;
- 修复云端观看历史未同步:接入官方播放器起播打点机制,在 App 内播放视频后会即时同步至 Rule34Video 网页端观看历史;
- 优化搜索分页与错误提示:更新搜索区块分页参数(
from_videos);支持直接解析并展示站点返回的结构化错误提示。
Hanime 体验优化
- 新增网页授权登录:支持在内置安全视窗中登录 Hanime,完美支持 Google 快捷登录与 Cloudflare 验证,登录成功自动同步至 App;
- 完善连续播放信息:优化播放列表界面的剧集与元数据展示,观看进度更清晰。
HaRu 2.4.0
HaRu 2.4.0
首页「订阅」频道改走站点聚合接口,显著加快首屏;
修复 Rule34Video 播放列表内视频加载不全的问题;
修复 Rule34Video 播放列表增删失败的问题(由网站更新引起)。
HaRu 2.3.0
HaRu 2.3.0
本版本新增自定义时间与时长筛选,并修复 Rule34Video 账号播放列表加载不完整、Hanime 首页部分频道封面缺少统计信息等问题。
自定义筛选
- 首页和搜索的「发布时间」支持自定义起止日期,可只填开始或只填结束;
- 「视频时长」支持自定义最短/最长秒数,同样可只填一端;
- 起止顺序或数值无效时给出提示并拒绝应用;
- 媒体库中收藏、历史、播放列表和本地库的时长筛选同步支持自定义范围;Hanime 视频仍使用预设档位,因为该站点不支持自定义时长参数。
Rule34Video 播放列表
- 账号播放列表的后续分页改用站点的
list_playlists_my_created_playlists异步区块协议; - 移除原先最多 50 页的限制,改为读取到末页结束;
- 若分页连续多页未取得新内容,会明确提示刷新重试,而不是返回一个不完整的结果;
- 只有完整加载成功后才会缓存结果。
Hanime 首页频道
- 修复「里番」「泡面番」频道视频封面不显示发布时间、点赞率和观看数的问题,改为按首页分区数据回填。需要说明的是,这两个频道的列表接口只返回封面和标题,翻页后超出首页分区的条目仍无法显示这些信息。
其他修复
- 修复开发构建中打开媒体库播放列表或视频评论面板时触发 setState 断言、内容无法显示的问题;旧的正式发布版本不受此问题影响。
HaRu 2.2.0
HaRu 2.2.0
本版本修复 Rule34Video 多处分页协议不一致导致的媒体库和搜索结果只能读取第一页的问题。
Rule34Video 分页
- 播放列表详情后续页改用站点的
playlist_view_playlist_view异步区块协议; - 上传者视频后续页改用
list_videos_uploaded_videos异步区块协议; - 搜索结果使用站点要求的合并分页参数,视频和相册会继续读取后续页;
- 分类、艺术家和播放列表订阅内容使用对应的异步区块分页协议。
HaRu 2.1.0
HaRu 2.1.0
这是一次面向订阅功能和视频详情页体验的改进版本,重点优化订阅显示、滚动稳定性、hanime系列播放列表和评论交互。
视频详情与播放器
- 保留系统状态栏安全区,移除详情页独立标题栏,让播放器直接成为首屏内容;
- 修复暂停播放器折叠后评论输入、置顶和页签切换引发的意外展开;
Hanime 系列视频
- 详情页简介下新增“系列视频”区域,可展开底部系列面板;
- 面板支持单列或双列显示,当前视频以“正在播放”标记;
- 打开面板时当前视频会直接定位到接近视口中央;
- 点击当前视频只关闭面板,不重复创建同一个详情页;
- 系列卡片采用惰性构建,降低长系列滚动时的渲染压力。
rule34video订阅
- 修复上传者和分类订阅未能正确显示的问题;
HaRu 2.0.1
HaRu 2.0.1
这是 2.0.0 的图标与文档修复版本,不改变两站功能和本地数据格式。
大版本更新可能问题不少,欢迎提issue(最近一周忙,也许晚点解决)
图标修复
- 按 Android adaptive icon 的安全区重新缩放 H/R 主体,修复部分启动器中图形被放大、挤满或贴近蒙版边缘的问题;
- 保留贯穿上下的紫色中轴,同时校正其在自适应图标中的视觉宽度;
- 同步修正 Android 12 及以上系统启动画面的图标比例。
HaRu 2.0.0
HaRu 2.0.0
Important
2.0.0 的 Android 自适应图标主体过大。请下载 HaRu 2.0.1 或更新版本;2.0.1 不改变两站功能和本地数据格式。
这是从 Flule34 1.6.0 到 HaRu 的大型版本更新。Hanime 不再是附加功能,而是与 R34V 地位相同、拥有独立浏览和账号体验的完整内容来源。
品牌与导航
- 项目正式更名为 HaRu,启用全新 H/R 共轴图标,并同步更新应用名称、文档、日志导出名称和更新地址;
- R34V、Hanime、媒体库和“我的”成为四个可自由排序的底部入口,启动时默认进入排在第一位的入口;
- 媒体库中的本机、R34V、Hanime 范围也可独立排序,两站相同功能保持一致的排列位置。
Hanime 完整接入
- 新增 Hanime 首页,覆盖订阅、最新上市、最新上传及“他们在看”等站点栏目,并以最新上市作为默认栏目;
- 新增 Hanime 搜索和站点原生筛选,支持排序、发布日期、时长、类型、标签及品牌等组合条件;
- 支持登录状态、Cloudflare 验证与恢复,并为验证过程增加明确的等待、重试和诊断日志;
- 支持点赞与踩、稍后观看、观看历史、作者或上传者订阅、播放列表及对应的状态同步;
- 支持评论头像、赞踩、回复、回复展开和站点原生举报理由;
- 正确区分标题、简介、观看次数、发布时间、艺术家和上传者,并过滤网站用于添加或移除标签的控制项;
- 为 Hanime 列表增加缓存和相邻栏目预取,快速切回栏目时优先复用已有内容。
统一媒体库
- 媒体库重构为 本机 / R34V / Hanime 三个并列的一级范围,不再默认以任一站点为中心;
- 本机范围改为“本地库 / 下载”左右切换,本地分类库继续与网站账号完全独立;
- R34V 统一组织收藏、历史、播放列表和订阅,Hanime 对应组织点赞、稍后观看、历史、播放列表和订阅;
- 两站订阅页统一为订阅对象列表,进入对象详情后可浏览作品并在原页订阅或取消订阅;
- 针对不同站点校正筛选、排序和操作菜单,避免显示站点不支持或语义不一致的选项。
视频详情、播放与评论
- 重构视频详情页:压缩简介/评论切换栏,简介超过三行默认折叠,评论输入框在需要时展开;
- 暂停播放时可随简介或评论手势折叠播放器;播放、缓冲期间播放器保持固定,恢复播放时自动展开且保留正文滚动位置;
- Hanime 评论支持紧凑布局、回复输入、回复列表、赞踩和直接举报;R34V 评论补充评论者头像;
- 统一封面菜单与详情页的下载清晰度顺序,始终优先显示高画质;
- 修复 Hanime 标题引号解析、观看次数与点赞率混淆、简介元数据混排,以及稍后观看状态延迟等问题;
- 统一艺术家、上传者、订阅、搜索入口和站点名称,减少 R34V 与 Hanime 之间无设计依据的交互差异。
性能、可靠性与诊断
- 扩展首页缓存时长并保留栏目画面、滚动位置和筛选状态,降低重复切换造成的等待;
- 将预测预加载扩展到 Hanime,在后台准备相邻栏目和用户更可能打开的内容;
- 加强网络失败、页面结构变化、Cloudflare 验证和媒体源过期时的恢复与日志记录;
- 继续提供自动脱敏、容量受限、仅保留最近 7 天的本地诊断日志,日志绝不会自动上传;
- 补充 Hanime 页面快照、解析器、认证、筛选、媒体库、播放器和状态同步等自动化测试。
升级说明
- 仍然只发布 Android
arm64-v8aAPK,最低支持 Android 7.0(API 24); - 为保证旧版能够直接覆盖升级,Android 包名、签名证书和既有本地数据标识保持不变;
- 本项目与 Rule34Video、Hanime 官方均无关联,也不会绕过网站权限、地区限制或 Cloudflare 验证。
Flule34 1.6.0
Flule34 1.6.0
这是继 1.5.0 中文翻译体系之后的一次多语言与体验完善更新。
多语言界面
- 新增简体中文、English、日本語、한국어四套完整界面语言,可跟随系统或手动选择;语言选项始终显示各自原名;
- 默认 README 继续使用中文,并新增英文、日文、韩文 README,四份文档可在顶部互相切换;
多语言内容翻译
- 内容翻译目标语言可跟随界面,也可独立选择简体中文、英语、日语或韩语;
- 用户译文和 API 已学习译文按目标语言独立保存,切换语言不会互相覆盖;内置标签与分类词表仍只用于简体中文;
- AI、DeepL 和 MyMemory 请求会使用当前目标语言;翻译归档也会保留站点、源语言和目标语言信息,并兼容 1.5.0 中文归档;
- 目标语言为英语时,本地语言识别会跳过高置信度纯英文原文。
显示与交互
- 设置项统一使用说明在上、控件在下的纵向布局,并增加轻微底色区分相邻控件;
- 修复长文案在窄屏和英日韩界面下挤压、溢出的问题;
- 关闭视频菜单、筛选面板等非输入弹层后不再自动恢复搜索框焦点或弹出键盘;
- 本地诊断日志入口只显示占用大小,不再显示内部轮转文件数量。
数据与兼容性
- 数据库升级到 v13,1.5.0 的用户译文、API 译文和内置保护状态会无损迁移到简体中文分区;
- 用户手动译文继续保持最高优先级,API 已学习译文和本地设置不会被新版默认值或内置词表覆盖;