add onHookClassNotFoundFailure function and fix some bugs

This commit is contained in:
2022-03-02 02:03:53 +08:00
parent 3acaf7d79f
commit d8f722fa57

View File

@@ -195,24 +195,28 @@ open class PackageParam(private var wrapper: PackageParamWrapper? = null) {
* *
* - ❗为防止任何字符串都被当做 [Class] 进行 Hook - 推荐优先使用 [findClass] * - ❗为防止任何字符串都被当做 [Class] 进行 Hook - 推荐优先使用 [findClass]
* @param initiate 方法体 * @param initiate 方法体
* @return [YukiHookCreater.Result]
*/ */
fun String.hook(initiate: YukiHookCreater.() -> Unit) = findClass(name = this).hook(initiate) fun String.hook(initiate: YukiHookCreater.() -> Unit) = findClass(name = this).hook(initiate)
/** /**
* Hook 方法、构造类 * Hook 方法、构造类
* @param initiate 方法体 * @param initiate 方法体
* @return [YukiHookCreater.Result]
*/ */
fun Class<*>.hook(initiate: YukiHookCreater.() -> Unit) = hookClass.hook(initiate) fun Class<*>.hook(initiate: YukiHookCreater.() -> Unit) = hookClass.hook(initiate)
/** /**
* Hook 方法、构造类 * Hook 方法、构造类
* @param initiate 方法体 * @param initiate 方法体
* @return [YukiHookCreater.Result]
*/ */
fun VariousClass.hook(initiate: YukiHookCreater.() -> Unit) = hookClass.hook(initiate) fun VariousClass.hook(initiate: YukiHookCreater.() -> Unit) = hookClass.hook(initiate)
/** /**
* Hook 方法、构造类 * Hook 方法、构造类
* @param initiate 方法体 * @param initiate 方法体
* @return [YukiHookCreater.Result]
*/ */
fun HookClass.hook(initiate: YukiHookCreater.() -> Unit) = fun HookClass.hook(initiate: YukiHookCreater.() -> Unit) =
YukiHookCreater(packageParam = thisParam, hookClass = bind()).apply(initiate).hook() YukiHookCreater(packageParam = thisParam, hookClass = bind()).apply(initiate).hook()