FPA 和 LSPosed 的区别在哪:系统框架与应用补丁两条路
LSPosed 与 FPA 都能让你用 Xposed 模块,但两条路从根上就不一样。理解这个差异,比记住「哪个新哪个旧」更有用。
逐项对比
| 维度 | LSPosed | FPA |
|---|---|---|
| 运行前提 | 需要 Root(Magisk 刷入模块) | 免 Root,装上就能用 |
| 注入方式 | 系统层面拦截所有应用进程 | 把框架打进单个应用的安装包 |
| 作用域 | 几乎任意应用,含系统框架 | 只能作用于打进包里的那个应用 |
| 高版本安卓 | 安卓 12 以上问题增多,安卓 15 以上基本失效 | 主打安卓 12/15 以上机型 |
| 开发状态 | 共同开发者已停更 | 社区口径持续更新至 v3.8 |
| 实现完整度 | 完整的 Xposed API | 仅部分 Xposed Hook API |
关键差异一:系统进程碰不碰得到
LSPosed 驻留在系统层面,作用域可以包含「系统框架(System Framework)」,所以能改全局行为——状态栏、系统动画、跨应用的功能都做得到。FPA 是免 Root 方案,只能作用于打进包里的那个应用,碰不到系统进程。作用域含系统框架的模块在 FPA 上注定用不了,这是两条路不可逾越的边界(详见作用域判定规则)。
关键差异二:谁跟着谁走
LSPosed 装一次、系统全局生效,换应用不用重新折腾;FPA 是一个应用一份补丁——想给两个应用挂模块,就分别对两个应用做 patch。代价换来的好处是:改坏了只影响被 patch 的那个应用,卸掉重装原版就恢复,系统本体毫发无损。
为什么有人从 LSPosed 转过来
不是 LSPosed 不好,是新系统上它跑不动了。LSPosed 与 LSPatch 的共同开发者停止维护后,安卓 12 以上机型上的兼容问题越来越多,安卓 15 以上基本没法用。而新手机恰恰出厂就是高版本安卓——这些用户没得选,只能转向免 Root 的新方案。FPA 填的就是这个空档。
LSPatch 同样是免 Root 路线,它与 FPA 的差异更微妙,单独写了一篇:FPA 和 LSPatch 有什么区别。装好 FPA 之后模块怎么勾,见勾选模块让功能生效。