mirror of
https://github.com/HighCapable/YukiHookAPI.git
synced 2025-09-04 17:55:24 +08:00
Modify support Class name contains in NameConditions
This commit is contained in:
@@ -10,9 +10,9 @@ class NameConditions internal constructor()
|
|||||||
|
|
||||||
**功能描述**
|
**功能描述**
|
||||||
|
|
||||||
> 这是一个模糊 `Member` 名称匹配实现类
|
> 这是一个模糊 `Class`、`Member` 名称匹配实现类。
|
||||||
|
|
||||||
可对 R8 混淆后的 `Member` 进行更加详细的定位。
|
可对 R8 混淆后的 `Class`、`Member` 进行更加详细的定位。
|
||||||
|
|
||||||
### equalsOf *- method*
|
### equalsOf *- method*
|
||||||
|
|
||||||
|
@@ -34,9 +34,9 @@ import java.lang.reflect.Member
|
|||||||
import java.lang.reflect.Method
|
import java.lang.reflect.Method
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 这是一个模糊 [Member] 名称匹配实现类
|
* 这是一个模糊 [Class]、[Member] 名称匹配实现类
|
||||||
*
|
*
|
||||||
* 可对 R8 混淆后的 [Member] 进行更加详细的定位
|
* 可对 R8 混淆后的 [Class]、[Member] 进行更加详细的定位
|
||||||
*/
|
*/
|
||||||
class NameConditions @PublishedApi internal constructor() {
|
class NameConditions @PublishedApi internal constructor() {
|
||||||
|
|
||||||
@@ -221,16 +221,17 @@ class NameConditions @PublishedApi internal constructor() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 对比 [Member] 类型是否符合条件
|
* 对比 [Class]、[Member] 类型是否符合条件
|
||||||
* @param member 实例 - 只支持 [Method]、[Field]
|
* @param reflects 实例 - 只支持 [Class]、[Method]、[Field]
|
||||||
* @return [Boolean] 是否符合条件
|
* @return [Boolean] 是否符合条件
|
||||||
*/
|
*/
|
||||||
@PublishedApi
|
@PublishedApi
|
||||||
internal fun contains(member: Member): Boolean {
|
internal fun contains(reflects: Any): Boolean {
|
||||||
var conditions = true
|
var conditions = true
|
||||||
when (member) {
|
when (reflects) {
|
||||||
is Method -> member.name
|
is Class<*> -> reflects.name
|
||||||
is Field -> member.name
|
is Method -> reflects.name
|
||||||
|
is Field -> reflects.name
|
||||||
else -> ""
|
else -> ""
|
||||||
}.also {
|
}.also {
|
||||||
if (isThisSynthetic0) conditions = conditions && it == "this$0"
|
if (isThisSynthetic0) conditions = conditions && it == "this$0"
|
||||||
|
Reference in New Issue
Block a user