LSPosed-Mod-Dev

Generates and debugs LSPosed modules using libxposed API 102 for Android app analysis.

35|4|Updated Jun 22, 2026
One-click install
npx skills add https://github.com/hujiayucc/LSPosed-Mod-Dev.skill --skill lsposed-mod-dev-hujiayucc
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: LSPosed-Mod-Dev
Source: https://github.com/hujiayucc/LSPosed-Mod-Dev.skill
Command: npx skills add https://github.com/hujiayucc/LSPosed-Mod-Dev.skill --skill lsposed-mod-dev-hujiayucc

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Developing LSPosed modules and reverse-engineering Android apps requires deep knowledge of the modern libxposed API, module metadata, lifecycle callbacks, ClassLoader handling, and troubleshooting—this Skill provides that expertise with a low-token startup prompt plus on-demand knowledge shards, templates, and real-world cases. ## Core Features & Use Cases - Module Scaffolding: Generates complete API 102 module projects with Gradle config, META-INF/xposed metadata (module.prop, java_init.list, scope.list), and Java/Kotlin entry classes. - Hook Development & Debugging: Implements Hook chains, Chain/HookHandle/Invoker usage, Remote Preferences, Hot Reload, and Native Hook, with structured troubleshooting paths for issues like hooks not firing, ClassNotFound, or crashes. - Reverse Engineering Workflow: Guides APK/DEX/smali/Native static analysis through to minimal observation hooks, distinguishing verified facts from hypotheses. - Use Case: Ask it to create an API 102 module targeting a specific package, then paste your LSPosed logs when the hook doesn't trigger—it will walk you through scope, process, ClassLoader, and signature checks step by step. ## Quick Start Ask the assistant to create a new API 102 LSPosed module for your target package name in Java or Kotlin.

Frequently Asked Questions about LSPosed-Mod-Dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a new LSPosed module with libxposed API 102?

Create an entry class extending XposedModule, add it to META-INF/xposed/java_init.list, and configure module.prop with targetApiVersion=102 and scope.list with your target package. Use compileOnly for the io.github.libxposed:api:102.0.0 dependency and install hooks in onPackageReady() using param.getClassLoader().

Why is my LSPosed module hook not triggering?

Check in order: module enabled in LSPosed Manager, target in scope, app restarted, correct process, correct ClassLoader from PackageReadyParam, exact method signature, and whether the method is actually called. Only consider deoptimize() after ruling out inline and timing issues.

What is the difference between modern libxposed API and legacy Xposed API?

Modern API uses XposedModule entry classes with META-INF/xposed metadata and chain-based hook() interceptors, while legacy uses IXposedHookLoadPackage, XposedHelpers, and assets/xposed_init. Modern API does not support resource hooks; use Remote Preferences instead of XSharedPreferences.

Does libxposed API 102 support Hot Reload?

Yes, API 102 supports Hot Reload for modules with exactly one Java entry class. The old code must return true from onHotReloading(), and the new generation handles onHotReloaded() to replace or remove old hooks via HookHandle.

When should I use Native Hook instead of Java Hook in LSPosed?

Only when Java-level hooks cannot reach the target, such as native library functions. Native Hook requires NDK knowledge, a native_init exported function, native_init.list metadata, ABI verification, and careful cleanup—prefer Java hooks whenever possible.

How do I migrate an old Xposed module to the modern API?

Replace the IXposedHookLoadPackage entry with an XposedModule class, move metadata from assets/xposed_init to META-INF/xposed files, and rewrite XposedHelpers calls using reflection plus hook(Executable) and Invoker. Keep compatibility layers clearly marked as temporary migration code.