EzXposed

object EzXposed

libxposed API 101 的运行时入口。

推荐初始化顺序:

  1. XposedModule.onModuleLoaded 里调用 initOnModuleLoaded

  2. 如果需要模块资源,调用 initModuleResources

  3. XposedModule.onPackageLoaded 里调用 initOnPackageLoaded

  4. XposedModule.onPackageReady 里调用 initOnPackageReady

行为约定:

Properties

Link copied to clipboard

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

Link copied to clipboard

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

Link copied to clipboard
lateinit var base: XposedInterface

libxposed 基础接口实例。

Link copied to clipboard

当前默认 ClassLoader

Link copied to clipboard

当前是否运行在 system_server

Link copied to clipboard

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

Link copied to clipboard

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

Link copied to clipboard

当前包名。

Link copied to clipboard

当前进程名。

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

对方法或构造器做去优化。

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

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

Link copied to clipboard

初始化模块资源。

Link copied to clipboard
fun initOnModuleLoaded(base: XposedInterface, param: XposedModuleInterface.ModuleLoadedParam)

onModuleLoaded 阶段初始化运行时基础信息。

Link copied to clipboard
fun initOnPackageLoaded(param: XposedModuleInterface.PackageLoadedParam)

onPackageLoaded 阶段记录当前包名。

Link copied to clipboard
fun initOnPackageReady(param: XposedModuleInterface.PackageReadyParam)

onPackageReady 阶段初始化可直接用于反射的 classLoader

Link copied to clipboard
fun initOnSystemServerStarting(param: XposedModuleInterface.SystemServerStartingParam)

onSystemServerStarting 阶段初始化 system_server 的反射环境。