mirror of
https://github.com/HighCapable/YukiHookAPI.git
synced 2025-09-01 08:15:37 +08:00
...
This commit is contained in:
@@ -36,13 +36,13 @@ import com.highcapable.yukihookapi.demo.InjectTest
|
||||
import com.highcapable.yukihookapi.demo.MainActivity
|
||||
import com.highcapable.yukihookapi.hook.factory.encase
|
||||
import com.highcapable.yukihookapi.hook.factory.findMethod
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookInitializeProxy
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookXposedInitProxy
|
||||
import com.highcapable.yukihookapi.hook.type.ActivityClass
|
||||
import com.highcapable.yukihookapi.hook.type.BundleClass
|
||||
import com.highcapable.yukihookapi.hook.type.StringType
|
||||
|
||||
@InjectYukiHookWithXposed
|
||||
class HookMain : YukiHookInitializeProxy {
|
||||
class HookMain : YukiHookXposedInitProxy {
|
||||
|
||||
private val moduleName = "com.highcapable.yukihookapi.demo"
|
||||
|
||||
|
@@ -28,7 +28,7 @@
|
||||
package com.highcapable.yukihookapi.annotation.xposed
|
||||
|
||||
import androidx.annotation.Keep
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookInitializeProxy
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookXposedInitProxy
|
||||
import com.highcapable.yukihookapi.hook.xposed.YukiHookLoadPackage
|
||||
|
||||
/**
|
||||
@@ -36,7 +36,7 @@ import com.highcapable.yukihookapi.hook.xposed.YukiHookLoadPackage
|
||||
*
|
||||
* 此类将使用 [YukiHookLoadPackage] 自动调用 XposedInit
|
||||
*
|
||||
* 你可以将被注释的类继承于 [YukiHookInitializeProxy] 接口实现 [YukiHookInitializeProxy.onHook] 方法
|
||||
* 你可以将被注释的类继承于 [YukiHookXposedInitProxy] 接口实现 [YukiHookXposedInitProxy.onHook] 方法
|
||||
*
|
||||
* 只能拥有一个 Hook 入口 - 多个入口将以首个得到的入口为准
|
||||
*/
|
||||
|
@@ -34,15 +34,15 @@ import android.content.Intent
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import com.highcapable.yukihookapi.YukiHookAPI
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookInitializeProxy
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookXposedInitProxy
|
||||
import com.highcapable.yukihookapi.param.PackageParam
|
||||
|
||||
/**
|
||||
* 在 [YukiHookInitializeProxy] 中装载 [YukiHookAPI]
|
||||
* 在 [YukiHookXposedInitProxy] 中装载 [YukiHookAPI]
|
||||
* @param moduleName 模块包名 - 不填将无法实现监听模块激活状态
|
||||
* @param initiate Hook 方法体
|
||||
*/
|
||||
fun YukiHookInitializeProxy.encase(moduleName: String = "", initiate: PackageParam.() -> Unit) =
|
||||
fun YukiHookXposedInitProxy.encase(moduleName: String = "", initiate: PackageParam.() -> Unit) =
|
||||
YukiHookAPI.encase(moduleName, initiate)
|
||||
|
||||
/**
|
||||
|
@@ -59,7 +59,7 @@ import com.highcapable.yukihookapi.hook.factory.encase
|
||||
* 详情请参考 https://github.com/fankes/YukiHookAPI/wiki
|
||||
*/
|
||||
@Keep
|
||||
interface YukiHookInitializeProxy {
|
||||
interface YukiHookXposedInitProxy {
|
||||
|
||||
/** 模块装载调用入口方法 - Xposed API */
|
||||
@Keep
|
@@ -33,7 +33,7 @@ import android.util.Log
|
||||
import androidx.annotation.Keep
|
||||
import com.highcapable.yukihookapi.YukiHookAPI
|
||||
import com.highcapable.yukihookapi.annotation.xposed.InjectYukiHookWithXposed
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookInitializeProxy
|
||||
import com.highcapable.yukihookapi.hook.proxy.YukiHookXposedInitProxy
|
||||
import com.highcapable.yukihookapi.hook.type.BooleanType
|
||||
import com.highcapable.yukihookapi.param.PackageParam
|
||||
import de.robv.android.xposed.IXposedHookLoadPackage
|
||||
@@ -42,7 +42,7 @@ import de.robv.android.xposed.callbacks.XC_LoadPackage
|
||||
/**
|
||||
* 接管 Xposed 的 [IXposedHookLoadPackage] 入口
|
||||
*
|
||||
* 你可以使用 [YukiHookAPI.encase] 或在 [YukiHookInitializeProxy] 中监听模块开始装载
|
||||
* 你可以使用 [YukiHookAPI.encase] 或在 [YukiHookXposedInitProxy] 中监听模块开始装载
|
||||
*
|
||||
* 需要标识 Hook 入口的类 - 请声明注释 [InjectYukiHookWithXposed]
|
||||
*/
|
||||
|
@@ -106,7 +106,7 @@ class HookParam(private val baseParam: XC_MethodHook.MethodHookParam) {
|
||||
/**
|
||||
* 获取当前 [method] or [constructor] 的参数实例化对象类
|
||||
* @param index 参数对象数组下标 - 默认是 0
|
||||
* @return [Array]
|
||||
* @return [ArgsModifyer]
|
||||
*/
|
||||
fun args(index: Int = 0) = ArgsModifyer(index)
|
||||
|
||||
|
Reference in New Issue
Block a user