Merge new version

This commit is contained in:
2022-02-15 12:51:13 +08:00
parent 74ba88f201
commit 82ff6ac311
2 changed files with 14 additions and 9 deletions

View File

@@ -46,8 +46,8 @@ android {
dependencies { dependencies {
compileOnly 'de.robv.android.xposed:api:82' compileOnly 'de.robv.android.xposed:api:82'
implementation 'com.highcapable.yukihookapi:api:1.0' implementation 'com.highcapable.yukihookapi:api:1.0.1'
ksp 'com.highcapable.yukihookapi:ksp-xposed:1.0' ksp 'com.highcapable.yukihookapi:ksp-xposed:1.0.1'
implementation 'com.geyifeng.immersionbar:immersionbar:3.2.0' implementation 'com.geyifeng.immersionbar:immersionbar:3.2.0'
implementation 'com.geyifeng.immersionbar:immersionbar-ktx:3.2.0' implementation 'com.geyifeng.immersionbar:immersionbar-ktx:3.2.0'
implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.core:core-ktx:1.7.0'

View File

@@ -42,7 +42,6 @@ import com.highcapable.yukihookapi.YukiHookAPI.configs
import com.highcapable.yukihookapi.annotation.xposed.InjectYukiHookWithXposed import com.highcapable.yukihookapi.annotation.xposed.InjectYukiHookWithXposed
import com.highcapable.yukihookapi.hook.bean.VariousClass import com.highcapable.yukihookapi.hook.bean.VariousClass
import com.highcapable.yukihookapi.hook.factory.encase import com.highcapable.yukihookapi.hook.factory.encase
import com.highcapable.yukihookapi.hook.factory.modifyStaticField
import com.highcapable.yukihookapi.hook.log.loggerD import com.highcapable.yukihookapi.hook.log.loggerD
import com.highcapable.yukihookapi.hook.param.PackageParam import com.highcapable.yukihookapi.hook.param.PackageParam
import com.highcapable.yukihookapi.hook.type.android.* import com.highcapable.yukihookapi.hook.type.android.*
@@ -55,7 +54,7 @@ class HookEntry : YukiHookXposedInitProxy {
companion object { companion object {
/** BaseChatPie 类名 */ /** BaseChatPie 类名 */
private val QQ_BASE_CHAT_PIE = private val qqBaseChatPieClass =
VariousClass("$QQ_PACKAGE_NAME.activity.aio.core.BaseChatPie", "$QQ_PACKAGE_NAME.activity.BaseChatPie") VariousClass("$QQ_PACKAGE_NAME.activity.aio.core.BaseChatPie", "$QQ_PACKAGE_NAME.activity.BaseChatPie")
} }
@@ -110,11 +109,11 @@ class HookEntry : YukiHookXposedInitProxy {
} }
/** /**
* 拦截 [QQ_BASE_CHAT_PIE] 的目标方法体封装 * 拦截 [qqBaseChatPieClass] 的目标方法体封装
* @param methodName 方法名 * @param methodName 方法名
*/ */
private fun PackageParam.interceptBaseChatPie(methodName: String) = private fun PackageParam.interceptBaseChatPie(methodName: String) =
findClass(QQ_BASE_CHAT_PIE).hook { qqBaseChatPieClass.hook {
injectMember { injectMember {
method { method {
name = methodName name = methodName
@@ -340,12 +339,18 @@ class HookEntry : YukiHookXposedInitProxy {
/** 由于在 onCreate 里有一行判断只要型号是 xiaomi 的设备就开电源锁,所以说这里临时替换成菊花厂 */ /** 由于在 onCreate 里有一行判断只要型号是 xiaomi 的设备就开电源锁,所以说这里临时替换成菊花厂 */
origDevice = Build.MANUFACTURER origDevice = Build.MANUFACTURER
if (Build.MANUFACTURER.lowercase() == "xiaomi") if (Build.MANUFACTURER.lowercase() == "xiaomi")
BuildClass.modifyStaticField(name = "MANUFACTURER", value = "HUAWEI") field {
classSet = BuildClass
name = "MANUFACTURER"
}.get().set("HUAWEI")
} }
afterHook { afterHook {
instance<Activity>().finish() instance<Activity>().finish()
/** 这里再把型号替换回去 - 不影响应用变量等 Xposed 模块修改的型号 */ /** 这里再把型号替换回去 - 不影响应用变量等 Xposed 模块修改的型号 */
BuildClass.modifyStaticField(name = "MANUFACTURER", origDevice) field {
classSet = BuildClass
name = "MANUFACTURER"
}.get().set(origDevice)
} }
} }
} }
@@ -374,7 +379,7 @@ class HookEntry : YukiHookXposedInitProxy {
injectMember { injectMember {
method { method {
name = "onHook" name = "onHook"
param(StringType, AnyType, AnyArrayClass(AnyType), AnyType) param(StringType, AnyType, AnyArrayClass, AnyType)
} }
intercept() intercept()
} }