Skip to content

Commit

Permalink
feat: 适配 994 版本
Browse files Browse the repository at this point in the history
Signed-off-by: xihan123 <srxqzxs@vip.qq.com>
  • Loading branch information
xihan123 committed Aug 31, 2023
1 parent b3f7086 commit 3f0a604
Show file tree
Hide file tree
Showing 7 changed files with 122 additions and 66 deletions.
11 changes: 6 additions & 5 deletions app/src/main/kotlin/cn/xihan/qdds/AdvManage.kt
Original file line number Diff line number Diff line change
Expand Up @@ -342,7 +342,7 @@ fun PackageParam.disableReadPageFloatAd(versionCode: Int) {
in 916..924 -> "h1"
in 932..944 -> "B0"
in 950..958 -> "t1"
in 970..980 -> "s1"
in 970..994 -> "s1"
else -> null
}
hookMethodName?.let {
Expand Down Expand Up @@ -398,7 +398,7 @@ fun PackageParam.disableReadPageRewardTheater(versionCode: Int) {
*/
fun PackageParam.disableReadPageNewestPageWindowBannerAd(versionCode: Int) {
when (versionCode) {
in 896..980 -> {
in 896..994 -> {
findClass("com.qidian.QDReader.bll.manager.QDBKTManager").hook {
injectMember {
method {
Expand Down Expand Up @@ -622,17 +622,17 @@ fun PackageParam.disableUpdate(versionCode: Int) {
884 -> "com.qidian.QDReader.util.k5"
in 890..900 -> "com.qidian.QDReader.util.l5"
in 906..970 -> "com.qidian.QDReader.util.m5"
980 -> "com.qidian.QDReader.util.k5"
in 980..994 -> "com.qidian.QDReader.util.k5"
else -> null
},
"needHookMethod" to when (versionCode) {
in 758..878 -> "b"
in 884..980 -> "judian"
in 884..994 -> "judian"
else -> null
},
"needHookMethod2" to when (versionCode) {
in 758..878 -> "a"
in 884..980 -> "search"
in 884..994 -> "search"
else -> null
}
)
Expand Down Expand Up @@ -754,6 +754,7 @@ fun PackageParam.disableUpdate(versionCode: Int) {
val needHookClass2 = when (versionCode) {
970 -> "r4.d"
980 -> "s4.f"
994 -> "s4.d"
else -> null
}
needHookClass2?.hook {
Expand Down
71 changes: 58 additions & 13 deletions app/src/main/kotlin/cn/xihan/qdds/HookEntry.kt
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,51 @@ class HookEntry : IYukiHookXposedInit {
*/

// findMethodAndPrint("kc.search")
//
// findMethodAndPrint("kc.cihai")


// findMethodAndPrint("com.qidian.QDReader.ui.widget.maintab.PagerSlidingTabStrip", true)

/*
findClass("com.qidian.QDReader.ui.widget.maintab.PagerSlidingTabStrip").hook {
injectMember {
method {
name = "x"
paramCount(3)
returnType = UnitType
}
intercept()
}
}
*/

/*
findClass("com.qidian.QDReader.ui.activity.MainGroupActivity").hook {
injectMember {
method {
name = "checkOpenView"
param(IntentClass)
returnType = UnitType
}
intercept()
/*
beforeHook {
val intent = args[0] as? Intent ?: return@beforeHook
val i = intent.getIntExtra("MainScreen", -1)
if (i == 0 || i == -1) return@beforeHook
intent.extras?.putInt("MainScreen", 0)
args(0).set(intent)
}
*/
}
}
*/

}

}
Expand Down Expand Up @@ -844,10 +889,10 @@ fun PackageParam.newAutoSignIn(versionCode: Int) {
}
}

in 842..980 -> {
in 842..994 -> {
val needHookMethod = when (versionCode) {
in 842..878 -> "E"
in 884..980 -> "B"
in 884..994 -> "B"
else -> null
}
if (needHookMethod != null) {
Expand Down Expand Up @@ -900,8 +945,6 @@ fun PackageParam.newAutoSignIn(versionCode: Int) {
*/
}
}
}.onHookClassNotFoundFailure {
"新版书架自动签到".printlnNotSupportVersion(versionCode)
}


Expand Down Expand Up @@ -967,7 +1010,7 @@ fun PackageParam.newOldLayout(
in 932..944 -> "d0"
in 950..958 -> "e0"
970 -> "f0"
980 -> "i0"
in 980..994 -> "i0"
else -> null
}
)
Expand Down Expand Up @@ -1383,7 +1426,7 @@ fun PackageParam.freeAdReward(versionCode: Int) {
}
}

in 896..980 -> {
in 896..994 -> {
/**
* showRewardVideo
* preloadRewardVideo
Expand Down Expand Up @@ -1457,7 +1500,7 @@ fun PackageParam.ignoreFreeSubscribeLimit(versionCode: Int) {
924 -> "com.qidian.QDReader.component.bll.manager.a1"
in 932..944 -> "com.qidian.QDReader.component.bll.manager.c1"
950 -> "com.qidian.QDReader.component.bll.manager.b1"
in 958..980 -> "com.qidian.QDReader.component.bll.manager.d1"
in 958..994 -> "com.qidian.QDReader.component.bll.manager.d1"
else -> null
},
"needHookMethod" to when (versionCode) {
Expand All @@ -1466,7 +1509,7 @@ fun PackageParam.ignoreFreeSubscribeLimit(versionCode: Int) {
in 896..924 -> "l0"
in 932..938 -> "p0"
in 944..958 -> "q0"
in 970..980 -> "r0"
in 970..994 -> "r0"
else -> null
}
)
Expand Down Expand Up @@ -1502,7 +1545,7 @@ fun PackageParam.ignoreFreeSubscribeLimit(versionCode: Int) {
*/
fun PackageParam.exportEmoji(versionCode: Int) {
when (versionCode) {
in 884..980 -> {
in 884..994 -> {
findClass("com.qidian.QDReader.ui.activity.QDStickersDetailActivity").hook {
injectMember {
method {
Expand Down Expand Up @@ -1540,6 +1583,7 @@ fun PackageParam.exportEmoji(versionCode: Int) {
958 -> 0x7F0918A8
970 -> 0x7F091931
980 -> 0x7F091970
994 -> 0x7F09199A
else -> null
}
if (topBarId != null) {
Expand Down Expand Up @@ -1623,7 +1667,7 @@ fun PackageParam.forceTrialMode(versionCode: Int) {
val needHookClass = when (versionCode) {
in 896..900 -> "com.qidian.QDReader.util.v4"
in 906..970 -> "com.qidian.QDReader.util.w4"
980 -> "com.qidian.QDReader.util.u4"
in 980..994 -> "com.qidian.QDReader.util.u4"
else -> null
}

Expand All @@ -1633,7 +1677,7 @@ fun PackageParam.forceTrialMode(versionCode: Int) {
*/
val needHookMethod = when (versionCode) {
in 896..970 -> "M"
980 -> "L"
in 980..994 -> "L"
else -> null
}

Expand Down Expand Up @@ -1730,7 +1774,7 @@ fun PackageParam.hideWelfare(versionCode: Int) {
*/
fun PackageParam.receiveReadingCreditsAutomatically(versionCode: Int) {
when (versionCode) {
in 970..980 -> {
in 970..994 -> {
/**
* 自动领取今日阅读时长积分
*/
Expand Down Expand Up @@ -1870,10 +1914,11 @@ fun PackageParam.postToShowImageUrl(versionCode: Int) {
val needHookClass = when (versionCode) {
970 -> "com.qidian.QDReader.ui.dialog.h9"
980 -> "com.qidian.QDReader.ui.dialog.i9"
994 -> "com.qidian.QDReader.ui.dialog.k9"
else -> null
}
val needHookMethod = when (versionCode) {
in 970..980 -> "p"
in 970..994 -> "p"
else -> null
}
if (needHookClass == null || needHookMethod == null) {
Expand Down
13 changes: 6 additions & 7 deletions app/src/main/kotlin/cn/xihan/qdds/Intercept.kt
Original file line number Diff line number Diff line change
Expand Up @@ -84,14 +84,14 @@ fun PackageParam.interceptAgreePrivacyPolicy(version: Int) {
884 -> "com.qidian.QDReader.util.u4"
in 890..900 -> "com.qidian.QDReader.util.v4"
in 906..970 -> "com.qidian.QDReader.util.w4"
980 -> "com.qidian.QDReader.util.u4"
in 980..994 -> "com.qidian.QDReader.util.u4"
else -> null
}
val needHookMethod = when (version) {
in 868..872 -> "k0"
878 -> "l0"
in 884..958 -> "i0"
in 970..980 -> "j0"
in 970..994 -> "j0"
else -> null
}
if (needHookClass == null || needHookMethod == null) {
Expand All @@ -117,12 +117,12 @@ fun PackageParam.interceptAgreePrivacyPolicy(version: Int) {
fun PackageParam.interceptWebSocket(version: Int) {
val needHookClass = when (version) {
in 868..878 -> "com.qidian.QDReader.component.msg.c"
in 884..980 -> "com.qidian.QDReader.component.msg.cihai"
in 884..994 -> "com.qidian.QDReader.component.msg.cihai"
else -> null
}
val needHookMethod = when (version) {
in 868..878 -> "r"
in 884..980 -> "o"
in 884..994 -> "o"
else -> null
}
if (needHookClass == null || needHookMethod == null) {
Expand Down Expand Up @@ -177,11 +177,11 @@ fun PackageParam.interceptSplashAdActivity(version: Int) {
in 944..950 -> "m6.search"
958 -> "k6.search"
970 -> "j6.search"
980 -> "d6.search"
in 980..994 -> "d6.search"
else -> null
}
val needHookMethod = when (version) {
in 884..980 -> "b"
in 884..994 -> "b"
else -> null
}

Expand Down Expand Up @@ -250,7 +250,6 @@ fun PackageParam.interceptPostImageWatermark(versionCode: Int) {
/**
* 拦截异步初始化任务
* @param version 版本号
* @param substring 0:标题 1:拦截的类名
*/
fun PackageParam.interceptAsyncInitTask(
version: Int,
Expand Down
29 changes: 17 additions & 12 deletions app/src/main/kotlin/cn/xihan/qdds/ReadPage.kt
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ fun PackageParam.customReadBackgroundPath(versionCode: Int) {
in 944..950 -> "a6.c"
958 -> "y5.c"
970 -> "w5.c"
980 -> "kc.a"
in 980..994 -> "kc.a"
else -> null
}
val needHookMethod = when (versionCode) {
in 827..878 -> "G"
in 884..980 -> "C"
in 884..994 -> "C"
else -> null
}
if (needHookClass == null || needHookMethod == null) {
Expand All @@ -55,7 +55,7 @@ fun PackageParam.customReadBackgroundPath(versionCode: Int) {
paramCount(1)
returnType = StringClass
}
replaceTo("${Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)}/QDReader/ReaderTheme/")
replaceTo(themePath)
}
}
}
Expand Down Expand Up @@ -96,20 +96,24 @@ fun PackageParam.readerPageChapterReviewPictures(
in 890..944 -> "com.qidian.QDReader.ui.viewholder.chaptercomment.list.e0"
950 -> "com.qidian.QDReader.ui.viewholder.chaptercomment.list.m0"
in 958..980 -> "com.qidian.QDReader.ui.viewholder.chaptercomment.list.e0"
994 -> "com.qidian.QDReader.ui.viewholder.chaptercomment.list.l0"
else -> null
}
val needHookMethod = when (versionCode) {
in 868..878 -> "A"
884 -> "x"
in 890..980 -> "z"
994 -> "K"
else -> null
}
val needHookClass2 = when (versionCode) {
in 970..980 -> "com.qidian.QDReader.ui.viewholder.chaptercomment.list.m0"
994 -> "com.qidian.QDReader.ui.viewholder.chaptercomment.list.t0"
else -> null
}
val needHookMethod2 = when (versionCode) {
in 970..980 -> "z"
994 -> "I"
else -> null
}
if (needHookClass == null || needHookMethod == null) {
Expand Down Expand Up @@ -242,9 +246,9 @@ fun PackageParam.readerPageChapterReviewPictures(
}
}

if (enableShowReaderPageChapterSaveAudioDialog && versionCode in 890..980) {
if (enableShowReaderPageChapterSaveAudioDialog && versionCode in 890..994) {
when (versionCode) {
in 890..980 -> {
in 890..994 -> {
findClass("com.qidian.QDReader.ui.view.chapter_review.VoicePlayerView").hook {
injectMember {
method {
Expand Down Expand Up @@ -300,11 +304,12 @@ fun PackageParam.readTimeDouble(
958 -> "rf.search"
970 -> "tf.search"
980 -> "xg.search"
994 -> "yg.search"
else -> null
}
val needHookMethod = when (versionCode) {
in 868..878 -> "d"
in 884..980 -> "a"
in 884..994 -> "a"
else -> null
}
if (needHookClass == null || needHookMethod == null) {
Expand Down Expand Up @@ -425,11 +430,11 @@ fun PackageParam.readBookLastPage(
hideAdView: Boolean = false
) {
val needHookClass = when (versionCode) {
in 896..980 -> "com.qidian.QDReader.ui.view.lastpage.LastPageRoleView"
in 896..994 -> "com.qidian.QDReader.ui.view.lastpage.LastPageRoleView"
else -> null
}
val needHookMethod = when (versionCode) {
in 896..980 -> "l"
in 896..994 -> "l"
else -> null
}
needHookClass?.hook {
Expand Down Expand Up @@ -457,12 +462,12 @@ fun PackageParam.readBookLastPage(
}

val needHookClass2 = when (versionCode) {
in 896..980 -> "com.qidian.QDReader.ui.view.lastpage.LastPageCircleView"
in 896..994 -> "com.qidian.QDReader.ui.view.lastpage.LastPageCircleView"
else -> null
}
val needHookMethod2 = when (versionCode) {
in 896..900 -> "f"
in 906..980 -> "g"
in 906..994 -> "g"
else -> null
}

Expand Down Expand Up @@ -491,11 +496,11 @@ fun PackageParam.readBookLastPage(
}

val needHookClass3 = when (versionCode) {
in 896..980 -> "com.qidian.QDReader.ui.view.lastpage.LastPageTryReadViewWrap"
in 896..994 -> "com.qidian.QDReader.ui.view.lastpage.LastPageTryReadViewWrap"
else -> null
}
val needHookMethod3 = when (versionCode) {
in 896..980 -> "bind"
in 896..994 -> "bind"
else -> null
}
needHookClass3?.hook {
Expand Down

0 comments on commit 3f0a604

Please sign in to comment.