LSPatch 中文文档 下载 App

应用或模块更新后,怎么重新修补

先分清楚是谁在更新

LSPatch 体系里有三类东西会更新,每种更新后需要的操作不一样:

更新对象影响需要重新修补?
LSPatch 管理器自身版本核心加载器更新修补过的应用会提示「可优化」,一键同步或重跑修补
Xposed 模块模块 dex 变了便携模式必须重新修补;本地模式只需要强制停止目标应用重开
目标应用(微博、TikTok 等)APK 本身变了必须重新修补(两种模式都要)

场景一:管理器自身更新

管理器版本更新后,打开应用管理 Tab,之前修补过的应用条目旁边会出现一个「优化」「升级核心」或类似按钮。点一下,LSPatch 会自动用新版本的核心加载器重新修补。

opatch/onpatch 分支这个功能做的比较完善,原版 LSPatch 可能没有自动优化按钮,需要手动重新修补一遍。

场景二:模块更新

本地模式:

  1. 更新模块 APK(覆盖安装即可,版本号会自动更新)
  2. 强制停止所有用了这个模块的目标应用
  3. 重新打开目标应用

Manager 会在应用下次启动时自动加载新版模块,不需要重新跑修补流程。

便携模式:必须重新修补——模块 dex 已经嵌进 APK 了,管理器更新的是手机上的模块,和 APK 里的那个没关系。流程:

  1. 下载新版模块 APK 到手机
  2. 目标应用也下载最新版(如果有更新的话)
  3. 卸载旧修补版应用
  4. 重新跑便携模式修补,嵌入新版模块
  5. 安装新修补版

场景三:目标应用更新

两种模式都必须重新修补,因为目标应用的 APK 变了,之前嵌进去的 LSPatch 加载器和模块都是针对旧版的。

流程:

  1. 不要在应用商店直接点「更新」——商店的更新包签名和原版一致,和你修补后的签名不匹配,会报"签名不一致无法安装"
  2. 手动下载新版 APK(APKPure、APK Mirror 等可信渠道)
  3. 卸载旧修补版
  4. 用新版 APK 重新跑修补流程
  5. 安装新修补版

场景四:同时更新多个东西

最折腾的情况:管理器、模块、应用一起更。按这个顺序来:

  1. 先更新管理器自身(覆盖安装新版 APK)
  2. 打开管理器,看应用管理里之前修补的应用有没有「可优化」标记,有的话先一键优化(同步新管理器的核心)
  3. 下载并安装新版模块(本地模式)或下载模块 APK 备用(便携模式)
  4. 下载新版目标应用 APK
  5. 卸载旧修补版目标应用
  6. 重新跑修补流程

核心原则:先把上游依赖(管理器、模块)更新好,再用它们去修补下游(目标应用)。

常见误区

误区:应用商店提示"有新版本",点一下自动更新就行

不行。应用商店推的更新包签名是原版应用签名,和你修补后的签名不一样。Android 系统在安装时会检测签名匹配,不匹配直接拒绝。必须手动下载 → 卸载旧版 → 修补新版 → 安装。

误区:本地模式下模块自动更新,应用里模块也自动跟着更新

模块 APK 更新后,应用进程里跑的还是旧版 dex——那个 dex 是模块 APK 上次安装时加载进去的。必须强制停止应用(杀掉进程),让下次启动时重新加载模块。

误区:便携模式修补的 APK 里有模块,我只更新管理器就行

不行。管理器更新和便携包里的模块版本完全无关——模块 dex 已经嵌死在 APK 里了。想换模块只能重新修补。