Added ModuleApplication function and merge findClass function to Xposed API

This commit is contained in:
2022-04-15 04:30:34 +08:00
parent 099ac65e55
commit b64c9a4d69
15 changed files with 287 additions and 21 deletions

View File

@@ -0,0 +1,76 @@
## ModuleApplication [class]
```kotlin
open class ModuleApplication: Application()
```
<b>变更记录</b>
`v1.0.76` `新增`
<b>功能描述</b>
> 这是对使用 `YukiHookAPI` Xposed 模块实现中的一个扩展功能。
在你的 Xposed 模块的 `Application` 中继承此类。
或在 `AndroidManifest.xml``application` 标签中指定此类。
目前可实现功能如下
- 全局共享模块中静态的 `appContext`
- 在模块与宿主中装载 `YukiHookAPI.Config` 以确保 `YukiHookAPI.Configs.debugTag` 不需要重复定义
- 在模块中使用系统隐藏 API核心技术引用了开源项目 [FreeReflection](https://github.com/tiann/FreeReflection)
<b>功能示例</b>
将此类继承到你的自定义 `Application` 上。
> 示例如下
```kotlin
package com.demo
class MyApplication: ModuleApplication() {
override fun onCreate() {
super.onCreate()
}
}
```
`AndroidManifest.xml``application` 标签中指定自定义的 `Application`
> 示例如下
```xml
<application
android:name="com.demo.MyApplication"
...>
```
如果你不需要自定义 `Application` 可以直接将 `ModuleApplication` 设置到 `AndroidManifest.xml``application` 标签中。
> 示例如下
```xml
<application
android:name="com.highcapable.yukihookapi.hook.xposed.application.ModuleApplication"
...>
```
### appContext [field]
```kotlin
val appContext: ModuleApplication
```
<b>变更记录</b>
`v1.0.76` `新增`
<b>功能描述</b>
> 全局静态 `Application` 实例。