EzXposed

object EzXposed

经典 Xposed API 82 的运行时入口。

推荐初始化顺序:

  1. 在 IXposedHookZygoteInit.initZygote 里调用 initZygote

  2. 在 IXposedHookLoadPackage.handleLoadPackage 里调用 init

initZygote 会自动初始化模块资源;application context 仍按需懒解析, 也可以由调用方显式触发 initAppContext。

Properties

Link copied to clipboard

当前进程的 application context;过早访问时会抛异常。

Link copied to clipboard

当前进程的 application context;尚未可用时返回 null。

Link copied to clipboard

当前默认 ClassLoader。

Link copied to clipboard

当前模块 apk 路径;调用 initZygote 后可用。

Link copied to clipboard

当前模块资源;调用 initZygote 后可用。

Link copied to clipboard

当前包名;init(lpparam) 之前为空字符串。

Link copied to clipboard

当前进程名;init(lpparam) 之前为空字符串。

Link copied to clipboard

始终可用的 ClassLoader;未初始化时回退到 SystemClassLoader。

Link copied to clipboard

是否启用安全模式。

Functions

Link copied to clipboard

添加模块路径到目标 Context.resources。允许通过“R.xx.xxx”直接使用模块资源。

将模块资源路径注入到指定 resources。

Link copied to clipboard
fun init(lpparam: XC_LoadPackage.LoadPackageParam)

使用 LoadPackageParam 初始化当前进程的反射环境和进程信息。

Link copied to clipboard
fun initAppContext(context: Context? = getCurrentApplicationContext(), injectModuleAssetPath: Boolean = false, force: Boolean = false)

手动缓存当前进程的 application context。

Link copied to clipboard

初始化模块资源。

Link copied to clipboard
fun initZygote(startupParam: IXposedHookZygoteInit.StartupParam)

在 IXposedHookZygoteInit.initZygote 阶段记录模块 apk 路径并初始化模块资源。

Link copied to clipboard

注册「Application.attach(Context) 之后跑什么」的回调。

Link copied to clipboard

注册只执行一次的 attach 回调。

Link copied to clipboard

注册可取消的持续 attach 回调;分发时机与 runOnApplicationAttach 相同。