A fork of JingMatrix's LSPosed/Vector, aiming to make GKMSPatch work
Go to file
Howard Wu 760f0bb0eb
All flavors require Magisk 24.0+ (#2368)
Magisk 23 is missing some SELinux policies

This fixes a permissions issue with the Dex2Oat wrapper

```
02-04 23:45:00.212  4396  4396 E LSPosedDex2Oat: failed to connect to /dev/c951326ba095346b/dex2oat.sock failed with 13: Permission denied
02-04 23:45:00.209  4396  4396 W dex2oat64: type=1400 audit(0.0:8403): avc: denied { write } for name="dex2oat.sock" dev="tmpfs" ino=26722 scontext=u:r:installd:s0 tcontext=u:object_r:magisk_file:s0 tclass=sock_file permissive=0
02-04 23:45:00.213  1510  3805 V installd: DexInv: --- END '/data/app/~~M2S57MD185N1tyyKQy9PKw==/com.google.android.gm-7Q68xrTQSACXisBuDI6oBg==/base.apk' --- status=0x 100, process failed
02-04 23:45:00.213  1510  3805 E installd: Dex2oat invocation for /data/app/~~M2S57MD185N1tyyKQy9PKw==/com.google.android.gm-7Q68xrTQSACXisBuDI6oBg==/base.apk failed: unspecified dex2oat error (256)
```

Additional rules first appeared in Magisk version 24000
2c44e1bb93
2023-02-06 00:19:55 +08:00
.github [skip ci] Skip post to telegram when creating tag (#2331) 2023-01-15 23:42:18 +08:00
app Add vercel fallback for module repository for China Mainland users (#2362) 2023-01-31 19:49:53 +08:00
core Clean code (#2335) 2023-01-16 22:04:00 +08:00
daemon Fix notification on samsung (#2356) 2023-01-24 18:26:52 +00:00
dex2oat Fix binary patch (#2096) 2022-08-30 19:14:11 +08:00
external Upgrade deps (#2324) 2023-01-15 10:35:10 +00:00
gradle/wrapper Use latest tag for version name (#2251) 2022-11-29 22:05:22 +08:00
hiddenapi Clean code (#2335) 2023-01-16 22:04:00 +08:00
magisk-loader All flavors require Magisk 24.0+ (#2368) 2023-02-06 00:19:55 +08:00
services Local get launch intent 2022-12-05 01:05:18 +08:00
.gitattributes Ndk build (#753) 2021-06-20 11:46:38 +08:00
.gitignore Clean code (#863) 2021-08-07 10:10:34 +08:00
.gitmodules Use fmtlib to print log (#1854) 2022-04-16 18:20:11 +08:00
LICENSE [README] Fix license 2021-02-13 17:28:01 +08:00
README.md All flavors require Magisk 24.0+ (#2368) 2023-02-06 00:19:55 +08:00
build.gradle.kts Stablize CMake arguments (#2266) 2022-12-03 06:41:54 +00:00
crowdin.yml [daemon] Only package needed resources (#1508) 2021-12-30 17:31:34 +00:00
gradle.properties All flavors require Magisk 24.0+ (#2368) 2023-02-06 00:19:55 +08:00
gradlew Update gradle and AGP (#2073) 2022-08-13 16:01:11 +00:00
gradlew.bat Update gradle and AGP (#2073) 2022-08-13 16:01:11 +00:00
settings.gradle.kts Update kotlin version (#2332) 2023-01-16 02:02:44 +08:00

README.md

LSPosed Framework

Build Crowdin Channel Chat Download Total

Introduction

A Riru / Zygisk module trying to provide an ART hooking framework which delivers consistent APIs with the OG Xposed, leveraging LSPlant hooking framework.

Xposed is a framework for modules that can change the behavior of the system and apps without touching any APKs. That's great because it means that modules can work for different versions and even ROMs without any changes (as long as the original code was not changed too much). It's also easy to undo. As all changes are done in the memory, you just need to deactivate the module and reboot to get your original system back. There are many other advantages, but here is just one more: multiple modules can do changes to the same part of the system or app. With modified APKs, you have to choose one. No way to combine them, unless the author builds multiple APKs with different combinations.

Supported Versions

Android 8.1 ~ 13

Install

  1. Install Magisk v24+
  2. (For Riru flavor) Install Riru v25+ from Magisk repo
  3. Download and install LSPosed in Magisk app
  4. Reboot
  5. Open LSPosed manager from notification
  6. Have fun :)

Download

Note: debug builds are only available in Github Actions.

Get Help

Only bug reports from THE LATEST DEBUG BUILD will be accepted.

  • GitHub issues: Issues
  • (For Chinese speakers) 本项目只接受英语标题的issue。如果您不懂英语请使用翻译工具

For Developers

Developers are welcome to write Xposed modules with hooks based on LSPosed Framework. A module based on LSPosed framework is fully compatible with the original Xposed Framework, and vice versa, a Xposed Framework-based module will work well with LSPosed framework too.

We use our own module repository. We welcome developers to submit modules to our repository, and then modules can be downloaded in LSPosed.

Community Discussion

Notice: These community groups don't accept any bug report, please use Get help to report.

Translation Contributing

You can contribute translation here.

Credits

  • Magisk: makes all these possible
  • Riru: provides a way to inject code into zygote process
  • XposedBridge: the OG Xposed framework APIs
  • Dobby: used for inline hooking
  • LSPlant: the core ART hooking framework
  • EdXposed: fork source
  • ~SandHook: ART hooking framework for SandHook variant~
  • ~YAHFA: previous ART hooking framework~
  • ~dexmaker and dalvikdx: to dynamically generate YAHFA hooker classes~
  • ~DexBuilder: to dynamically generate YAHFA hooker classes~

License

LSPosed is licensed under the GNU General Public License v3 (GPL-3) (http://www.gnu.org/copyleft/gpl.html).