feat(kakaotalk): rename fingerprint variables for clarity and consistency
Going forward, fingerprints will follow the filename of the corresponding patch, but will name the variables that are finely fingerprinted after the functionality of the method for the intended target. This is to promote reusability, and hopefully increase maintainability in the future.
This commit is contained in:
@ -2,7 +2,7 @@ package app.revanced.patches.kakaotalk.ads
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.ads.fingerprints.removeBizBoardFingerprint
|
||||
import app.revanced.patches.kakaotalk.ads.fingerprints.measuringBizBoardFingerprint
|
||||
|
||||
@Suppress("unused")
|
||||
val removeBizBoardPatch = bytecodePatch(
|
||||
@ -12,7 +12,7 @@ val removeBizBoardPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
val method = removeBizBoardFingerprint.method
|
||||
val method = measuringBizBoardFingerprint.method
|
||||
|
||||
method.addInstructions(
|
||||
0,
|
||||
|
@ -2,7 +2,7 @@ package app.revanced.patches.kakaotalk.ads
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.ads.fingerprints.removeFocusAdFingerprint
|
||||
import app.revanced.patches.kakaotalk.ads.fingerprints.loadFocusAdFingerprint
|
||||
|
||||
val removeFocusAdPatch = bytecodePatch(
|
||||
name = "Remove focus ad",
|
||||
@ -11,7 +11,7 @@ val removeFocusAdPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
removeFocusAdFingerprint.method.addInstructions(
|
||||
loadFocusAdFingerprint.method.addInstructions(
|
||||
0,
|
||||
"""
|
||||
const/4 v0, 0x1
|
||||
|
@ -2,7 +2,7 @@ package app.revanced.patches.kakaotalk.ads
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.ads.fingerprints.removeOlkChatRoomListAdFingerprint
|
||||
import app.revanced.patches.kakaotalk.ads.fingerprints.addOlkChatRoomListAdFingerprint
|
||||
import app.revanced.patches.kakaotalk.common.fingerprints.kotlinUnitInstanceFingerprint
|
||||
|
||||
@Suppress("unused")
|
||||
@ -16,7 +16,7 @@ val removeOlkChatRoomListAdPatch = bytecodePatch(
|
||||
val findUnit = kotlinUnitInstanceFingerprint.method
|
||||
val unitClass = findUnit.definingClass
|
||||
|
||||
val method = removeOlkChatRoomListAdFingerprint.method
|
||||
val method = addOlkChatRoomListAdFingerprint.method
|
||||
|
||||
// I tried to find the field name, but it's pretty obvious to me, so I hardcode it.
|
||||
// If it changes, we need to fix it
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val removeBizBoardFingerprint = fingerprint {
|
||||
internal val measuringBizBoardFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC)
|
||||
returns("V")
|
||||
parameters("I", "I")
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val removeFocusAdFingerprint = fingerprint {
|
||||
internal val loadFocusAdFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC)
|
||||
parameters("Lcom/kakao/adfit/ads/focus/FocusAdLoader\$OnAdLoadListener;")
|
||||
returns("Z")
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val removeOlkChatRoomListAdFingerprint = fingerprint {
|
||||
internal val addOlkChatRoomListAdFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
parameters("Ljava/lang/Object;")
|
||||
returns("Ljava/lang/Object;")
|
||||
|
@ -3,7 +3,7 @@ package app.revanced.patches.kakaotalk.chatlog
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.instructions
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.chatlog.fingerprints.remove99ClampFingerprint
|
||||
import app.revanced.patches.kakaotalk.chatlog.fingerprints.processWatermarkCountFingerprint
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction10t
|
||||
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction22t
|
||||
@ -16,7 +16,7 @@ val remove99ClampPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
val method = remove99ClampFingerprint.method
|
||||
val method = processWatermarkCountFingerprint.method
|
||||
|
||||
method.instructions
|
||||
.filterIsInstance<BuilderInstruction22t>()
|
||||
|
@ -3,7 +3,7 @@ package app.revanced.patches.kakaotalk.chatlog.fingerprints
|
||||
import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
|
||||
internal val remove99ClampFingerprint = fingerprint {
|
||||
internal val processWatermarkCountFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("Ljava/lang/Object;")
|
||||
parameters()
|
||||
|
@ -3,8 +3,8 @@ package app.revanced.patches.kakaotalk.chatroom
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.instructions
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.chatroom.fingerprints.remove300PlusLimitBaseChatRoomFingerprint
|
||||
import app.revanced.patches.kakaotalk.chatroom.fingerprints.remove300PlusLimitOpenChatRoomFingerprint
|
||||
import app.revanced.patches.kakaotalk.chatroom.fingerprints.limit300PlusBaseChatRoomFingerprint
|
||||
import app.revanced.patches.kakaotalk.chatroom.fingerprints.limit300PlusOpenChatRoomFingerprint
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction10t
|
||||
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction22t
|
||||
@ -17,7 +17,7 @@ val remove300PlusLimitBaseChatRoomPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
val method = remove300PlusLimitBaseChatRoomFingerprint.method
|
||||
val method = limit300PlusBaseChatRoomFingerprint.method
|
||||
|
||||
val branches = method.instructions
|
||||
.filterIsInstance<BuilderInstruction22t>()
|
||||
@ -43,7 +43,7 @@ val remove300PlusLimitOpenChatRoomPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
val method = remove300PlusLimitOpenChatRoomFingerprint.method
|
||||
val method = limit300PlusOpenChatRoomFingerprint.method
|
||||
|
||||
method.instructions
|
||||
.filterIsInstance<BuilderInstruction22t>()
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
|
||||
@Suppress("unused")
|
||||
internal val remove300PlusLimitBaseChatRoomFingerprint = fingerprint {
|
||||
internal val limit300PlusBaseChatRoomFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("V")
|
||||
parameters("Lcom/kakao/talk/widget/ViewBindable;")
|
||||
@ -12,7 +12,7 @@ internal val remove300PlusLimitBaseChatRoomFingerprint = fingerprint {
|
||||
}
|
||||
|
||||
@Suppress("unused")
|
||||
internal val remove300PlusLimitOpenChatRoomFingerprint = fingerprint {
|
||||
internal val limit300PlusOpenChatRoomFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("V")
|
||||
parameters()
|
||||
|
@ -2,7 +2,7 @@ package app.revanced.patches.kakaotalk.emoticon
|
||||
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.emoticon.fingerprints.forceEnableEmoticonPlusFingerprint
|
||||
import app.revanced.patches.kakaotalk.emoticon.fingerprints.isEnableEmoticonPlusFingerprint
|
||||
|
||||
@Suppress("unused")
|
||||
val forceEnableEmoticonPlusPatch = bytecodePatch(
|
||||
@ -12,7 +12,7 @@ val forceEnableEmoticonPlusPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
forceEnableEmoticonPlusFingerprint.method.addInstructions(
|
||||
isEnableEmoticonPlusFingerprint.method.addInstructions(
|
||||
0,
|
||||
"""
|
||||
const/4 v0, 0x1
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val forceEnableEmoticonPlusFingerprint = fingerprint {
|
||||
internal val isEnableEmoticonPlusFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
|
||||
returns("Z")
|
||||
parameters()
|
||||
|
@ -3,7 +3,7 @@ package app.revanced.patches.kakaotalk.ghost
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.common.fingerprints.kotlinUnitInstanceFingerprint
|
||||
import app.revanced.patches.kakaotalk.ghost.fingerprints.ghostModeFingerprint
|
||||
import app.revanced.patches.kakaotalk.ghost.fingerprints.sendCurrentActionFingerprint
|
||||
|
||||
@Suppress("unused")
|
||||
val ghostMode = bytecodePatch(
|
||||
@ -16,7 +16,7 @@ val ghostMode = bytecodePatch(
|
||||
val findUnit = kotlinUnitInstanceFingerprint.method
|
||||
val unitClass = findUnit.definingClass
|
||||
|
||||
val method = ghostModeFingerprint.method
|
||||
val method = sendCurrentActionFingerprint.method
|
||||
|
||||
// I tried to find the field name, but it's pretty obvious to me, so I hardcode it.
|
||||
// If it changes, we need to fix it
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val ghostModeFingerprint = fingerprint {
|
||||
internal val sendCurrentActionFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("Ljava/lang/Object;")
|
||||
parameters("Ljava/lang/Object;")
|
||||
|
@ -5,8 +5,8 @@ import app.revanced.patcher.extensions.InstructionExtensions.instructions
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.removeInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.bypassMoatCheckFingerprintOne
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.bypassMoatCheckFingerprintTwo
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.moatCheckResultFingerprintOne
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.moatCheckResultFingerprintTwo
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.postprocessMoatCheckFailedFingerprint
|
||||
import app.revanced.util.getReference
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
@ -73,7 +73,7 @@ val bypassMoatCheckPatch = bytecodePatch(
|
||||
}
|
||||
}
|
||||
|
||||
patch(bypassMoatCheckFingerprintOne)
|
||||
patch(bypassMoatCheckFingerprintTwo)
|
||||
patch(moatCheckResultFingerprintOne)
|
||||
patch(moatCheckResultFingerprintTwo)
|
||||
}
|
||||
}
|
@ -3,7 +3,7 @@ package app.revanced.patches.kakaotalk.integrity
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.common.fingerprints.kotlinUnitInstanceFingerprint
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.bypassRequestChecksumsFingerprint
|
||||
import app.revanced.patches.kakaotalk.integrity.fingerprints.requestChecksumsFingerprint
|
||||
|
||||
@Suppress("unused")
|
||||
val bypassRequestChecksumPatch = bytecodePatch(
|
||||
@ -16,7 +16,7 @@ val bypassRequestChecksumPatch = bytecodePatch(
|
||||
val findUnit = kotlinUnitInstanceFingerprint.method
|
||||
val unitClass = findUnit.definingClass
|
||||
|
||||
val method = bypassRequestChecksumsFingerprint.method
|
||||
val method = requestChecksumsFingerprint.method
|
||||
|
||||
// I tried to find the field name, but it's pretty obvious to me, so I hardcode it.
|
||||
// If it changes, we need to fix it
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val bypassMoatCheckFingerprintOne = fingerprint {
|
||||
internal val moatCheckResultFingerprintOne = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
parameters("Ljava/lang/Object;", "Ljava/lang/Object;", "Ljava/lang/Object;")
|
||||
returns("Ljava/lang/Object;")
|
||||
@ -31,7 +31,7 @@ internal val bypassMoatCheckFingerprintOne = fingerprint {
|
||||
)
|
||||
}
|
||||
|
||||
internal val bypassMoatCheckFingerprintTwo = fingerprint {
|
||||
internal val moatCheckResultFingerprintTwo = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
parameters("Ljava/lang/Object;", "Ljava/lang/Object;", "Ljava/lang/Object;")
|
||||
returns("Ljava/lang/Object;")
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val bypassRequestChecksumsFingerprint = fingerprint {
|
||||
internal val requestChecksumsFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("Ljava/lang/Object;")
|
||||
strings(
|
||||
|
@ -3,7 +3,7 @@ package app.revanced.patches.kakaotalk.misc
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.instructions
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.removeInstruction
|
||||
import app.revanced.patcher.patch.bytecodePatch
|
||||
import app.revanced.patches.kakaotalk.misc.fingerprints.removeShopTabFingerprint
|
||||
import app.revanced.patches.kakaotalk.misc.fingerprints.addNavigationTabFingerprint
|
||||
import app.revanced.util.getReference
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction21c
|
||||
@ -18,7 +18,7 @@ val removeShopTabPatch = bytecodePatch(
|
||||
compatibleWith("com.kakao.talk"("25.4.2"))
|
||||
|
||||
execute {
|
||||
val method = removeShopTabFingerprint.method
|
||||
val method = addNavigationTabFingerprint.method
|
||||
val insns = method.instructions
|
||||
|
||||
val matches = insns.mapIndexedNotNull { idx, inst ->
|
||||
|
@ -4,7 +4,7 @@ import app.revanced.patcher.fingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
import com.android.tools.smali.dexlib2.Opcode
|
||||
|
||||
internal val removeShopTabFingerprint = fingerprint {
|
||||
internal val addNavigationTabFingerprint = fingerprint {
|
||||
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
|
||||
returns("V")
|
||||
parameters()
|
||||
|
Reference in New Issue
Block a user