diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveBizBoardPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveBizBoardPatch.kt index 309dde906..994f06e32 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveBizBoardPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveBizBoardPatch.kt @@ -9,7 +9,7 @@ val removeBizBoardPatch = bytecodePatch( name = "Remove BizBoard ads", description = "Removes the BizBoard ad by forcing its dimensions to 0x0 and visibility to GONE in onMeasure.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = measuringBizBoardFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveFocusAdPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveFocusAdPatch.kt index 8ca1d0359..bf5920f21 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveFocusAdPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveFocusAdPatch.kt @@ -8,7 +8,7 @@ val removeFocusAdPatch = bytecodePatch( name = "Remove focus ad", description = "Removes the focus ad from the app.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { loadFocusAdFingerprint.method.addInstructions( diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveMoreTabAdPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveMoreTabAdPatch.kt index 4f91f13ca..f71063062 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveMoreTabAdPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveMoreTabAdPatch.kt @@ -14,7 +14,7 @@ val removeMoreTabAdPatch = bytecodePatch( name = "Remove More tab ad", description = "Removes the ad from the More tab.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val addSectionToMoreTabUIMethod = addSectionToMoreTabUIFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveNativeAdPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveNativeAdPatch.kt index 9a3ac7bd1..2f6caa7b5 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveNativeAdPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveNativeAdPatch.kt @@ -8,7 +8,7 @@ val removeNativeAdPatch = bytecodePatch( name = "Remove native ad", description = "Removes the native ad from the app.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = loadNativeAdFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveOlkChatRoomListAdPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveOlkChatRoomListAdPatch.kt index 93c28e3ef..6c242181b 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveOlkChatRoomListAdPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ads/RemoveOlkChatRoomListAdPatch.kt @@ -10,7 +10,7 @@ val removeOlkChatRoomListAdPatch = bytecodePatch( name = "Remove OpenLink chat room list ad", description = "Removes the OpenLink chat room list ad.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val findUnit = kotlinUnitInstanceFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/changemodel/ChangeModelPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/changemodel/ChangeModelPatch.kt index 3588e8c7a..205a6f43b 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/changemodel/ChangeModelPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/changemodel/ChangeModelPatch.kt @@ -14,7 +14,7 @@ val changeModelPatch = bytecodePatch( "model", "SM-X926N" ) - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { changeModelFingerprint.method.addInstructions( diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/Remove99ClampPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/Remove99ClampPatch.kt index 8e3c482b0..9cb33c121 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/Remove99ClampPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/Remove99ClampPatch.kt @@ -13,7 +13,7 @@ val remove99ClampPatch = bytecodePatch( name = "Disable 99 unread limit", description = "Skip the 99-cap so unread count shows full value" ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = processWatermarkCountFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/ShowDeletedMessagePatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/ShowDeletedMessagePatch.kt index 7a4339d21..e28b2ce37 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/ShowDeletedMessagePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatlog/ShowDeletedMessagePatch.kt @@ -13,7 +13,7 @@ val showDeletedMessagePatch = bytecodePatch( name = "Show deleted messages", description = "Allows you to see deleted messages in chat logs.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = replaceToFeedFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatroom/Remove300PlusLimitPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatroom/Remove300PlusLimitPatch.kt index 40ba46651..39c251022 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatroom/Remove300PlusLimitPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/chatroom/Remove300PlusLimitPatch.kt @@ -14,7 +14,7 @@ val remove300PlusLimitBaseChatRoomPatch = bytecodePatch( name = "Disable 300+ unread limit (BaseChatRoom)", description = "Always show the real unread count instead of '300+' in base chatroom list" ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = limit300PlusBaseChatRoomFingerprint.method @@ -40,7 +40,7 @@ val remove300PlusLimitOpenChatRoomPatch = bytecodePatch( name = "Disable 300+ unread limit (OpenChatRoom)", description = "Always show the real unread count instead of '300+' in open chatroom list" ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = limit300PlusOpenChatRoomFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/ForceEnableEmoticonPlusPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/ForceEnableEmoticonPlusPatch.kt index 703724830..f37129cc8 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/ForceEnableEmoticonPlusPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/ForceEnableEmoticonPlusPatch.kt @@ -9,7 +9,7 @@ val forceEnableEmoticonPlusPatch = bytecodePatch( name = "Force enable emoticon plus feature", description = "Force enable emoticon plus feature (Unpurchased emoticon can be sent once per day)", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { isEnableEmoticonPlusFingerprint.method.addInstructions( diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/fingerprints/ForceEnableEmoticonPlusFingerprint.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/fingerprints/ForceEnableEmoticonPlusFingerprint.kt index 149f48a44..28637c36c 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/fingerprints/ForceEnableEmoticonPlusFingerprint.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/emoticon/fingerprints/ForceEnableEmoticonPlusFingerprint.kt @@ -5,11 +5,13 @@ import com.android.tools.smali.dexlib2.AccessFlags import com.android.tools.smali.dexlib2.Opcode internal val isEnableEmoticonPlusFingerprint = fingerprint { - accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC) + accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) returns("Z") parameters() strings("emoticonPlusMe") opcodes( + Opcode.SGET_OBJECT, + Opcode.INVOKE_VIRTUAL, Opcode.SGET_OBJECT, Opcode.IF_EQZ, Opcode.IGET_BOOLEAN, diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/GhostModePatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/GhostModePatch.kt index a465ba414..860edc36a 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/GhostModePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/GhostModePatch.kt @@ -10,7 +10,7 @@ val ghostMode = bytecodePatch( name = "Ghost Mode", description = "Don't expose your typing status to the other party.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val findUnit = kotlinUnitInstanceFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/fingerprints/GhostModeFingerprint.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/fingerprints/GhostModeFingerprint.kt index a5cbb99ac..33515ae32 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/fingerprints/GhostModeFingerprint.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/ghost/fingerprints/GhostModeFingerprint.kt @@ -21,8 +21,6 @@ internal val sendCurrentActionFingerprint = fingerprint { Opcode.INVOKE_STATIC, Opcode.MOVE_RESULT, Opcode.IF_EQZ, - Opcode.IGET_OBJECT, - Opcode.INVOKE_INTERFACE, Opcode.INVOKE_STATIC, Opcode.MOVE_RESULT_OBJECT, Opcode.NEW_INSTANCE, diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassMoatCheckPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassMoatCheckPatch.kt index 062610f48..f364422ed 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassMoatCheckPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassMoatCheckPatch.kt @@ -21,7 +21,7 @@ val bypassMoatCheckPatch = bytecodePatch( name = "Bypass Moat check", description = "Bypass Moat check that prevents the app from running.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val patch: (Fingerprint) -> Unit = { diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassRequestChecksumsPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassRequestChecksumsPatch.kt index 17932893f..4ae0c7279 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassRequestChecksumsPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/BypassRequestChecksumsPatch.kt @@ -10,7 +10,7 @@ val bypassRequestChecksumPatch = bytecodePatch( name = "Bypass requestChecksums", description = "Prevents the execution of checksum verification logic by making it return early." ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val findUnit = kotlinUnitInstanceFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/VerifyingSignaturePatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/VerifyingSignaturePatch.kt index ff7f9b83f..823c674d2 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/VerifyingSignaturePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/VerifyingSignaturePatch.kt @@ -9,7 +9,7 @@ val verifyingSignaturePatch = bytecodePatch( name = "Disable verifying signature", description = "Disables the signature verification check that prevents the app from running.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { verifyingSignatureFingerprint.method.addInstructions( diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassMoatCheckFingerprint.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassMoatCheckFingerprint.kt index bb88bd449..536a83dc1 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassMoatCheckFingerprint.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassMoatCheckFingerprint.kt @@ -8,7 +8,7 @@ internal val moatCheckResultFingerprintOne = fingerprint { accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) parameters("Ljava/lang/Object;", "Ljava/lang/Object;", "Ljava/lang/Object;") returns("Ljava/lang/Object;") - strings("detectResult", "", "") + strings("detectResult", "") opcodes( Opcode.CHECK_CAST, Opcode.CHECK_CAST, @@ -17,7 +17,6 @@ internal val moatCheckResultFingerprintOne = fingerprint { Opcode.INVOKE_STATIC, Opcode.CONST_STRING, Opcode.INVOKE_STATIC, - Opcode.CONST_STRING, Opcode.INVOKE_STATIC, Opcode.SGET_OBJECT, Opcode.SGET_OBJECT, @@ -29,13 +28,14 @@ internal val moatCheckResultFingerprintOne = fingerprint { Opcode.INVOKE_INTERFACE, Opcode.MOVE_RESULT, ) + custom { method, classDef -> classDef.sourceFile == "PaySecurityWorker.kt" } } internal val moatCheckResultFingerprintTwo = fingerprint { accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL) parameters("Ljava/lang/Object;", "Ljava/lang/Object;", "Ljava/lang/Object;") returns("Ljava/lang/Object;") - strings("detectResult", "", "") + strings("detectResult", "") opcodes( Opcode.CHECK_CAST, Opcode.CHECK_CAST, @@ -44,7 +44,6 @@ internal val moatCheckResultFingerprintTwo = fingerprint { Opcode.INVOKE_STATIC, Opcode.CONST_STRING, Opcode.INVOKE_STATIC, - Opcode.CONST_STRING, Opcode.INVOKE_STATIC, Opcode.CHECK_CAST, Opcode.NEW_INSTANCE, @@ -56,6 +55,7 @@ internal val moatCheckResultFingerprintTwo = fingerprint { Opcode.SGET_OBJECT, Opcode.IF_EQZ, ) + custom { method, classDef -> classDef.sourceFile == "PaySecurityWorker.kt" } } internal val postprocessMoatCheckFailedFingerprint = fingerprint { diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassRequestChecksumsFingerprint.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassRequestChecksumsFingerprint.kt index 63cba53da..bd2543287 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassRequestChecksumsFingerprint.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/integrity/fingerprints/BypassRequestChecksumsFingerprint.kt @@ -11,7 +11,6 @@ internal val requestChecksumsFingerprint = fingerprint { "context" ) opcodes( - Opcode.CONST_4, Opcode.INSTANCE_OF, Opcode.IF_EQZ, Opcode.MOVE_OBJECT, @@ -28,6 +27,7 @@ internal val requestChecksumsFingerprint = fingerprint { Opcode.IGET_OBJECT, Opcode.SGET_OBJECT, Opcode.IGET, + Opcode.CONST_4, Opcode.IF_EQZ, Opcode.IF_NE, Opcode.INVOKE_STATIC, diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/ForceEnableDebugModePatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/ForceEnableDebugModePatch.kt index 26c155e34..67a656a3a 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/ForceEnableDebugModePatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/ForceEnableDebugModePatch.kt @@ -11,7 +11,7 @@ val forceEnableDebugModePatch = bytecodePatch( name = "Force enable debug mode", description = "Enables debug mode in the app.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = configConstructorFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/RemoveShopTabPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/RemoveShopTabPatch.kt index 480fb961e..e28807395 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/RemoveShopTabPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/RemoveShopTabPatch.kt @@ -15,7 +15,7 @@ val removeShopTabPatch = bytecodePatch( name = "Remove shop tab", description = "Removes the shop tab from the bottom navigation bar.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val method = addNavigationTabFingerprint.method diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/fingerprints/ForceEnableDebugModeFingerprint.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/fingerprints/ForceEnableDebugModeFingerprint.kt index 3b3206807..04bd98cca 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/fingerprints/ForceEnableDebugModeFingerprint.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/misc/fingerprints/ForceEnableDebugModeFingerprint.kt @@ -8,7 +8,7 @@ internal val configConstructorFingerprint = fingerprint { accessFlags(AccessFlags.STATIC, AccessFlags.CONSTRUCTOR) returns("V") parameters() - strings("google", "one", "getBytes(...)") + strings("getBytes(...)") opcodes( Opcode.SGET_OBJECT, Opcode.INVOKE_VIRTUAL, @@ -21,4 +21,5 @@ internal val configConstructorFingerprint = fingerprint { Opcode.MOVE, Opcode.GOTO, ) + custom { method, classDef -> classDef.sourceFile == "Config.kt" } } \ No newline at end of file diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/send/AllowReplyToFeedPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/send/AllowReplyToFeedPatch.kt index ecd88ed5e..614c891f6 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/send/AllowReplyToFeedPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/send/AllowReplyToFeedPatch.kt @@ -15,7 +15,7 @@ val allowReplyToFeedPatch = app.revanced.patcher.patch.bytecodePatch( name = "Allow reply to feed", description = "Allows replying to feed messages", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val patch: (Fingerprint) -> Unit = { fp -> diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/VersionInfoPatch.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/VersionInfoPatch.kt index a24d333ea..7ef2c5da1 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/VersionInfoPatch.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/VersionInfoPatch.kt @@ -17,7 +17,7 @@ val versionInfoPatch = bytecodePatch( name = "Version info patch", description = "Patches the version info to include '(ReVanced)' in the version string.", ) { - compatibleWith("com.kakao.talk"("25.4.3")) + compatibleWith("com.kakao.talk"("25.5.1")) execute { val runPatch: (Fingerprint, Boolean) -> Unit = { fp, inDetail -> diff --git a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/fingerprints/VersionInfoFingerprint.kt b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/fingerprints/VersionInfoFingerprint.kt index 1d47477a5..099bb90ea 100644 --- a/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/fingerprints/VersionInfoFingerprint.kt +++ b/patches/src/main/kotlin/app/revanced/patches/kakaotalk/versioninfo/fingerprints/VersionInfoFingerprint.kt @@ -5,16 +5,23 @@ import com.android.tools.smali.dexlib2.AccessFlags import com.android.tools.smali.dexlib2.Opcode internal val versionInfoFingerprint = fingerprint { - accessFlags(AccessFlags.PUBLIC, AccessFlags.CONSTRUCTOR) + accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC, AccessFlags.FINAL) returns("V") opcodes( - Opcode.INVOKE_DIRECT, + Opcode.CONST, + Opcode.INVOKE_INTERFACE, + Opcode.MOVE_RESULT_OBJECT, + Opcode.AND_INT_LIT8, Opcode.CONST_STRING, - Opcode.IPUT_OBJECT, - Opcode.IPUT_BOOLEAN, - Opcode.IPUT_OBJECT, - Opcode.RETURN_VOID, + Opcode.CONST_4, + Opcode.IF_NEZ, + Opcode.INVOKE_VIRTUAL, + Opcode.MOVE_RESULT, + Opcode.IF_EQZ, + Opcode.CONST_4, + Opcode.GOTO ) + custom { method, classDef -> classDef.sourceFile == "VersionSettingItem.kt" } } internal val versionInfoPreviewFingerprint = fingerprint {