ReWeibo

ReWeibo 是一个面向微博轻享版(com.weico.international)的 LSPosed/Xposed 模块。

ReWeibo is an LSPosed/Xposed module for Weibo Lite (com.weico.international).

功能

  • 跳过微博轻享版启动页广告和时间线广告路径。
  • 强制主页时间线使用更干净的反向/新微博在前排序。
  • 过滤广告样式和无实际内容的时间线条目。
  • 持久化并恢复扩展后的时间线缓存,降低刷新或缓存丢失后的阅读位置丢失概率。
  • 在可信缓存恢复后保存并恢复上次阅读位置,并显示“上次读到这里”标记。
  • 在可行时刷新或替换时间线视频的过期缓存地址。
  • 保留新浪微博和 Share 的旧 hook 供手动 scope 使用,但官方默认推荐 scope 只包含微博轻享版。

Features

  • Skips Weibo Lite splash-ad and timeline-ad paths.
  • Forces a cleaner reverse/newest-first order for the home timeline.
  • Filters ad-like and contentless timeline entries.
  • Persists and restores an expanded timeline cache to reduce reading-position loss after refreshes or cache eviction.
  • Saves and restores the last-read position after trusted cache restoration, with a visible "上次读到这里" marker.
  • Refreshes or replaces expired cached timeline video URLs when possible.
  • Keeps legacy hooks for Sina Weibo and Share available for manual scopes, while the official recommended scope only includes Weibo Lite.

兼容性

  • 框架 API:经典 de.robv.android.xposed / XposedBridge API,不是 libxposed v2。
  • 最低 Xposed API:82
  • 默认推荐 scope:com.weico.international
  • 模块包名:com.tianqianguai.reweibo
  • 入口:assets/xposed_init -> com.tianqianguai.reweibo.MainHook
  • 模块描述:微博轻享版 LSPosed/Xposed 模块:去广告、反向时间线、阅读位置恢复

Compatibility

  • Framework API: classic de.robv.android.xposed / XposedBridge API, not libxposed v2.
  • Minimum Xposed API: 82.
  • Default recommended scope: com.weico.international.
  • Module package: com.tianqianguai.reweibo.
  • Entry point: assets/xposed_init -> com.tianqianguai.reweibo.MainHook.
  • Module description: Weibo Lite LSPosed/Xposed module for ad removal, reversed timeline, and reading-position recovery.

安装

  1. 安装 APK。
  2. 在 LSPosed 中启用模块。
  3. 应用微博轻享版的推荐 scope。
  4. 强制停止并重新打开微博轻享版。

Install

  1. Install the APK.
  2. Enable the module in LSPosed.
  3. Apply the recommended scope for Weibo Lite.
  4. Force stop and reopen Weibo Lite.

构建

面向公开分发的 release 构建必须使用私有 release keystore 签名:

$env:REWEIBO_RELEASE_STORE_FILE="C:\path\to\reweibo-release.jks"
$env:REWEIBO_RELEASE_STORE_PASSWORD="..."
$env:REWEIBO_RELEASE_KEY_ALIAS="..."
$env:REWEIBO_RELEASE_KEY_PASSWORD="..."
.\gradlew.bat clean assembleRelease

如果没有配置这些签名值,Gradle 只会生成用于本地校验的 unsigned release APK。

Build

Release builds intended for public distribution must be signed with a private release keystore:

$env:REWEIBO_RELEASE_STORE_FILE="C:\path\to\reweibo-release.jks"
$env:REWEIBO_RELEASE_STORE_PASSWORD="..."
$env:REWEIBO_RELEASE_KEY_ALIAS="..."
$env:REWEIBO_RELEASE_KEY_PASSWORD="..."
.\gradlew.bat clean assembleRelease

Without these signing values, Gradle produces an unsigned release APK for local verification only.

Releases

7/9/2026, 8:27:15 AM

ReWeibo 1.0

ReWeibo 的第一个官方 LSPosed/Xposed 仓库版本。

First official LSPosed/Xposed repository release for ReWeibo.

模块元数据

  • 模块包名:com.tianqianguai.reweibo
  • 版本:1.0
  • VersionCode:1
  • Release tag:1-1.0
  • Xposed API:经典 de.robv.android.xposed / XposedBridge API
  • 最低 Xposed API:82
  • 默认推荐 scope:com.weico.international
  • 入口:assets/xposed_init -> com.tianqianguai.reweibo.MainHook
  • 模块描述:微博轻享版 LSPosed/Xposed 模块:去广告、反向时间线、阅读位置恢复

Module Metadata

  • Module package: com.tianqianguai.reweibo
  • Version: 1.0
  • Version code: 1
  • Release tag: 1-1.0
  • Xposed API: classic de.robv.android.xposed / XposedBridge API
  • Minimum Xposed API: 82
  • Default recommended scope: com.weico.international
  • Entry point: assets/xposed_init -> com.tianqianguai.reweibo.MainHook
  • Module description: Weibo Lite LSPosed/Xposed module for ad removal, reversed timeline, and reading-position recovery.

主要目标

这个版本主要面向微博轻享版(com.weico.international)。仓库元数据和 LSPosed 推荐 scope 都有意只发布微博轻享版。

Primary Target

This release is focused on Weibo Lite (com.weico.international). The repository metadata and LSPosed recommended scope intentionally advertise only Weibo Lite.

微博轻享版改动

  • 跳过微博轻享版启动页广告路径。
  • 抑制受支持微博轻享版版本中的时间线 UVE/ad 检测和请求路径。
  • 通过设置层和 presenter 层 hook 强制主页时间线使用反向/新微博在前排序。
  • 规范化来自网络、缓存、presenter 事件和展示事件的时间线数据。
  • 在广告样式状态进入可见 feed 前过滤它们。
  • 过滤会形成空白行的无实际内容时间线占位条目。
  • 当微博轻享版提供足够源数据时,恢复缓存状态的富文本和媒体字段。
  • 持久化更大的可用时间线缓存,并维护 shadow cache 标记,让恢复后的时间线更不容易受缓存丢失影响。
  • 记录可信的上次阅读 status id,并在缓存恢复后显示“上次读到这里”标记。
  • 捕获刷新锚点,让手动刷新后尽量回到之前可见的时间线条目附近。
  • 增加顶部栏双击处理,用于快速跳转到时间线边缘。
  • 打开时间线视频时,如果存在可用备用 URL 或 status id 刷新路径,会刷新或替换过期缓存视频 URL。
  • 通过 hook 基础 SwipeRefreshLayout 路径禁用时间线下拉刷新干扰。

Weibo Lite Changes

  • Skips splash-ad startup paths in Weibo Lite.
  • Suppresses the timeline UVE/ad detection and request paths used by supported Weibo Lite versions.
  • Forces the home timeline into reverse/newest-first behavior through both setting-level and presenter-level hooks.
  • Normalizes timeline data loaded from network, cache, presenter events, and display events.
  • Filters ad-like timeline statuses before they reach the visible feed.
  • Filters contentless timeline placeholder entries that would otherwise leave blank rows.
  • Restores decorated text and media fields for cached statuses when Weibo Lite provides enough source data.
  • Persists a larger usable timeline cache and maintains a shadow cache marker so restored timelines survive cache loss better.
  • Tracks a trusted last-read status id and shows a visible "上次读到这里" marker after cache restoration.
  • Captures refresh anchors so manual refreshes can return near the previously visible timeline item.
  • Adds top-bar double-tap handling for fast timeline-edge navigation.
  • Refreshes or replaces stale cached video URLs when opening timeline videos if an alternate usable URL or status id refresh path is available.
  • Disables pull-refresh interference on the timeline by hooking the base SwipeRefreshLayout path.

保留但不默认推荐的旧 hook

代码库仍保留以下旧 hook:

  • 新浪微博(com.sina.weibo):反向 feed 布局和自动滚动行为。
  • Share(com.hengye.share):反向阅读流、“显示更多”捕获和“上次阅读”标记导航。

这些 hook 仍可供用户在 LSPosed 中手动添加 scope 后使用,但它们不是本次第一个官方版本的发布推荐 scope。

Legacy Hooks Kept But Not Advertised

The codebase still includes older hooks for:

  • Sina Weibo (com.sina.weibo): reverse feed layout and auto-scroll behavior.
  • Share (com.hengye.share): reverse reading flow, "显示更多" capture, and "上次阅读" marker navigation.

These hooks remain available for users who manually add scopes in LSPosed, but they are intentionally not part of the published recommended scope for this first official release.

兼容性说明

  • 本模块使用经典 XposedBridge API,不使用 libxposed v2。
  • 本模块是小型 Java Android application module,xposed-bridge-api.jar 作为 compileOnly 依赖。
  • Release 使用私有 release keystore 签名。Debug keystore 签名的 APK 不用于公开分发。

Compatibility Notes

  • This module uses the classic XposedBridge API, not libxposed v2.
  • It is built as a small Java Android application module with xposed-bridge-api.jar as a compileOnly dependency.
  • Release signing is done with a private release keystore. Debug-keystore signed APKs are not intended for public distribution.

已知限制

  • 微博轻享版内部实现有混淆且依赖版本;上游 App 更新后,广告和时间线 hook 名称可能需要继续维护。
  • 微博轻享版中的程序化加载更多行为依赖内部 EasyRecyclerView 行为,无法在所有路径上完全替代真实用户交互。
  • 新浪微博和 Share 的旧 hook 会继续保留供手动使用,但不是本次 release 的主要支持目标。

Known Limits

  • Weibo Lite internals are obfuscated and version-sensitive; ad and timeline hook names may need future maintenance after upstream app updates.
  • Programmatic timeline load-more behavior in Weibo Lite depends on internal EasyRecyclerView behavior and cannot fully replace real user interaction in every path.
  • Legacy Sina Weibo and Share hooks are retained for manual use but are not the main support target of this release.

发布资产

  • APK:ReWeibo-v1.0.apk
  • SHA-256:9e32ef66f554c61682090cdd762399935c831a757e066603d065fabc70312d1b

Release Asset

  • APK: ReWeibo-v1.0.apk
  • SHA-256: 9e32ef66f554c61682090cdd762399935c831a757e066603d065fabc70312d1b

Assets

1