support v1.3.0

This commit is contained in:
xtaodada 2023-08-25 20:37:42 +08:00
parent 547c886e6a
commit a6d724d971
Signed by: xtaodada
GPG Key ID: 4CBB3F4FA8C85659
12 changed files with 24 additions and 188 deletions

View File

@ -40,15 +40,16 @@ android {
buildFeatures {
viewBinding true
}
lintOptions {
namespace 'com.xtaolabs.fuck_huaya'
lint {
checkReleaseBuilds false
}
}
dependencies {
compileOnly 'de.robv.android.xposed:api:82'
implementation 'com.highcapable.yukihookapi:api:1.1.6'
ksp 'com.highcapable.yukihookapi:ksp-xposed:1.1.6'
implementation 'com.highcapable.yukihookapi:api:1.1.11'
ksp 'com.highcapable.yukihookapi:ksp-xposed:1.1.11'
implementation 'com.github.duanhong169:drawabletoolbox:1.0.7'
implementation 'androidx.core:core-ktx:1.9.0'
implementation 'androidx.appcompat:appcompat:1.5.1'
@ -57,4 +58,4 @@ dependencies {
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
}

View File

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.xtaolabs.fuck_huaya">
xmlns:tools="http://schemas.android.com/tools">
<application
android:name=".application.DefaultApplication"

View File

@ -3,10 +3,7 @@ package com.xtaolabs.fuck_huaya.hook
import com.highcapable.yukihookapi.annotation.xposed.InjectYukiHookWithXposed
import com.highcapable.yukihookapi.hook.factory.encase
import com.highcapable.yukihookapi.hook.xposed.proxy.IYukiHookXposedInit
import com.xtaolabs.fuck_huaya.hook.apps.CaiyunHooker
import com.xtaolabs.fuck_huaya.hook.apps.CimocHooker
import com.xtaolabs.fuck_huaya.hook.apps.HuayaHooker
import com.xtaolabs.fuck_huaya.hook.apps.XLXiaoMiHooker
@InjectYukiHookWithXposed(isUsingResourcesHook = false)
@ -16,14 +13,5 @@ class HookEntry : IYukiHookXposedInit {
loadApp("cn.fzhuayantcoltd.huayaapp") {
loadHooker(HuayaHooker)
}
loadApp("com.cimoc.haleydu") {
loadHooker(CimocHooker)
}
loadApp("com.nowcasting.activity") {
loadHooker(CaiyunHooker)
}
loadApp("com.android.providers.downloads") {
loadHooker(XLXiaoMiHooker)
}
}
}

View File

@ -1,70 +0,0 @@
package com.xtaolabs.fuck_huaya.hook.apps
import com.highcapable.yukihookapi.hook.entity.YukiBaseHooker
object CaiyunHooker : YukiBaseHooker() {
private fun fuckVip() {
"d.g.j.o1".hook {
injectMember {
method {
name = "h0"
}
// this.B =
beforeHook {
args().first().set("svip")
}
}
injectMember {
method {
name = "J"
}
replaceTo("svip")
}
injectMember {
method {
name = "f0"
}
// this.x =
beforeHook {
args().first().set(true)
}
}
injectMember {
method {
name = "N"
}
replaceTo(true)
}
injectMember {
method {
name = "c0"
}
// this.z =
beforeHook {
args().first().set(4701859200L)
}
}
injectMember {
method {
name = "A"
}
replaceTo(4701859200L)
}
injectMember {
method {
name = "O"
}
afterHook {
if (args().first().cast<String>().equals("svip")) {
result = true
}
}
}
}
}
override fun onHook() {
fuckVip()
}
}

View File

@ -1,49 +0,0 @@
package com.xtaolabs.fuck_huaya.hook.apps
import android.content.Context
import com.highcapable.yukihookapi.hook.entity.YukiBaseHooker
object CimocHooker : YukiBaseHooker() {
private fun fuckAd() {
findClass("com.haleydu.cimoc.manager.PreferenceManager", appClassLoader).hook {
injectMember {
method {
name = "getBoolean"
paramCount = 2
}
afterHook {
if (args().first().cast<String>().equals("pref_global_shutdown_ad")) {
result = true
}
}
}
}
}
private fun fuckPermissionCheck() {
findClass("com.haleydu.cimoc.ui.activity.MainActivity", appClassLoader).hook {
injectMember {
method {
name = "showPermission"
}
replaceUnit { }
}
}
}
override fun onHook() {
"com.stub.StubApp".hook {
injectMember {
method {
name = "attachBaseContext"
}
afterHook {
appClassLoader = args().first().cast<Context>()!!.classLoader
fuckAd()
fuckPermissionCheck()
}
}
}
}
}

View File

@ -20,7 +20,10 @@ object HuayaHooker : YukiBaseHooker() {
private fun fuckReadAd() {
// bookReadLimitDialog.show();
findClass("cn.fzhuayantcoltd.huayaapp.ui.activity.longcartoon.LongBookDetailActivity", appClassLoader).hook {
findClass(
"cn.fzhuayantcoltd.huayaapp.ui.activity.longcartoon.LongBookDetailActivity",
appClassLoader
).hook {
injectMember {
method {
name = "a"
@ -48,7 +51,10 @@ object HuayaHooker : YukiBaseHooker() {
private fun fuckSignInRewardAd() {
// AdFromEnum.SIGNIN
findClass("cn.fzhuayantcoltd.huayaapp.ui.activity.task.TasksCenterActivity", appClassLoader).hook {
findClass(
"cn.fzhuayantcoltd.huayaapp.ui.activity.task.TasksCenterActivity",
appClassLoader
).hook {
injectMember {
method {
name = "j"
@ -82,7 +88,7 @@ object HuayaHooker : YukiBaseHooker() {
findClass("cn.fzhuayantcoltd.huayaapp.util.y", appClassLoader).hook {
injectMember {
method {
name = "s"
name = "r"
}
replaceToTrue()
}

View File

@ -1,38 +0,0 @@
package com.xtaolabs.fuck_huaya.hook.apps
import android.os.Environment
import com.highcapable.yukihookapi.hook.entity.YukiBaseHooker
object XLXiaoMiHooker : YukiBaseHooker() {
private val CacheFilePATH = Environment.getExternalStorageDirectory().absolutePath + "/Download/DLManager"
private fun fuckXL() {
"com.android.providers.downloads.XLDownloadApplication".hook {
injectMember {
method {
name = "generateCacheFileDir"
}
replaceTo(CacheFilePATH)
}
}
"com.android.providers.downloads.config.XLConfig".hook {
injectMember {
method {
name = "setDebug"
}
replaceUnit { }
}
injectMember {
method {
name = "isDebug"
}
replaceToFalse()
}
}
}
override fun onHook() {
fuckXL()
}
}

View File

@ -2,8 +2,5 @@
<resources>
<string-array name="module_scope">
<item>cn.fzhuayantcoltd.huayaapp</item>
<item>com.cimoc.haleydu</item>
<item>com.nowcasting.activity</item>
<item>com.android.providers.downloads</item>
</string-array>
</resources>

View File

@ -1,11 +1,11 @@
plugins {
id 'com.android.application' version '7.4.0' apply false
id 'com.android.library' version '7.4.0' apply false
id 'com.android.application' version '8.1.0' apply false
id 'com.android.library' version '8.1.0' apply false
id 'org.jetbrains.kotlin.android' version '1.8.0' apply false
}
ext {
appVersionName = "1.2.0"
appVersionCode = 6
appVersionName = "1.3.0"
appVersionCode = 7
enableR8 = false
}
}

View File

@ -22,4 +22,6 @@ kotlin.code.style=official
# thereby reducing the size of the R class for that library
android.nonTransitiveRClass=true
# Incremental
kotlin.incremental.useClasspathSnapshot=true
kotlin.incremental.useClasspathSnapshot=true
android.defaults.buildfeatures.buildconfig=true
android.nonFinalResIds=false

View File

@ -1,6 +1,6 @@
#Sun Jan 29 21:22:14 CST 2023
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME