mirror of
https://github.com/HighCapable/YukiHookAPI.git
synced 2025-09-06 02:35:40 +08:00
Compare commits
3 Commits
e1544a8ae3
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
a82de55694 | ||
59c4b9870b
|
|||
|
bab5068484 |
@@ -61,15 +61,15 @@ libraries:
|
||||
version: 1.0.1
|
||||
com.highcapable.hikage:
|
||||
hikage-core:
|
||||
version: 1.0.1
|
||||
version: 1.0.2
|
||||
hikage-compiler:
|
||||
version: 1.0.0
|
||||
version: 1.0.1
|
||||
hikage-extension:
|
||||
version: 1.0.0
|
||||
version: 1.0.1
|
||||
hikage-widget-androidx:
|
||||
version: 1.0.0
|
||||
version: 1.0.1
|
||||
hikage-widget-material:
|
||||
version: 1.0.0
|
||||
version: 1.0.1
|
||||
com.highcapable.betterandroid:
|
||||
ui-component:
|
||||
version: 1.0.8
|
||||
|
@@ -26,6 +26,7 @@
|
||||
|
||||
package com.highcapable.yukihookapi.hook.core
|
||||
|
||||
import com.highcapable.kavaref.extension.classOf
|
||||
import com.highcapable.kavaref.extension.isNotSubclassOf
|
||||
import com.highcapable.yukihookapi.YukiHookAPI
|
||||
import com.highcapable.yukihookapi.hook.bean.HookClass
|
||||
@@ -545,6 +546,7 @@ class YukiMemberHookCreator internal constructor(private val packageParam: Packa
|
||||
*/
|
||||
private fun checkingReturnType(origin: Class<*>?, target: Class<*>?) {
|
||||
if (origin == null || target == null) return
|
||||
if (origin == classOf<Any>()) return
|
||||
origin.toJavaPrimitiveType().also { o ->
|
||||
target.toJavaPrimitiveType().also { t ->
|
||||
if (o isNotSubclassOf t && t isNotSubclassOf o)
|
||||
|
@@ -509,16 +509,18 @@ internal object AppParasitics {
|
||||
?.optional(silent = true)
|
||||
?.firstFieldOrNull { name = "IActivityTaskManagerSingleton" }
|
||||
?.get()
|
||||
SingletonClass.resolve()
|
||||
.processor(AndroidHiddenApiBypassResolver.get())
|
||||
.optional(silent = true)
|
||||
.firstMethodOrNull { name = "get" }
|
||||
?.of(singleton)
|
||||
?.invokeQuietly()
|
||||
val mInstanceResolver2 = mInstanceResolver?.copy()?.of(singleton)
|
||||
val mInstance2 = mInstanceResolver2?.get()
|
||||
mInstance2?.let {
|
||||
mInstanceResolver2.set(IActivityManagerProxyImpl.createWrapper(IActivityTaskManagerClass, it))
|
||||
singleton?.let {
|
||||
SingletonClass.resolve()
|
||||
.processor(AndroidHiddenApiBypassResolver.get())
|
||||
.optional(silent = true)
|
||||
.firstMethodOrNull { name = "get" }
|
||||
?.of(singleton)
|
||||
?.invokeQuietly()
|
||||
val mInstanceResolver2 = mInstanceResolver?.copy()?.of(singleton)
|
||||
val mInstance2 = mInstanceResolver2?.get()
|
||||
mInstance2?.let {
|
||||
mInstanceResolver2.set(IActivityManagerProxyImpl.createWrapper(IActivityTaskManagerClass, it))
|
||||
}
|
||||
}
|
||||
isActivityProxyRegistered = true
|
||||
}.onFailure { YLog.innerE("Activity Proxy initialization failed because got an exception", it) }
|
||||
|
Reference in New Issue
Block a user