diff --git a/src/main/kotlin/app/revanced/patches/music/utils/compatibility/Constants.kt b/src/main/kotlin/app/revanced/patches/music/utils/compatibility/Constants.kt index cb762b13f..dacda19e8 100644 --- a/src/main/kotlin/app/revanced/patches/music/utils/compatibility/Constants.kt +++ b/src/main/kotlin/app/revanced/patches/music/utils/compatibility/Constants.kt @@ -10,7 +10,8 @@ object Constants { "6.29.58", "6.31.55", "6.33.52", - "6.50.51" + "6.50.53", + "6.51.52" ) ) ) diff --git a/src/main/kotlin/app/revanced/patches/music/utils/integrations/fingerprints/InitFingerprint.kt b/src/main/kotlin/app/revanced/patches/music/utils/integrations/fingerprints/InitFingerprint.kt index 7f15b366c..2417b6030 100644 --- a/src/main/kotlin/app/revanced/patches/music/utils/integrations/fingerprints/InitFingerprint.kt +++ b/src/main/kotlin/app/revanced/patches/music/utils/integrations/fingerprints/InitFingerprint.kt @@ -1,19 +1,25 @@ package app.revanced.patches.music.utils.integrations.fingerprints +import app.revanced.patches.music.utils.integrations.fingerprints.InitFingerprint.indexOfGetProcessNameInstruction import app.revanced.patches.shared.integrations.BaseIntegrationsPatch.IntegrationsFingerprint +import app.revanced.util.getReference +import app.revanced.util.indexOfFirstInstruction import com.android.tools.smali.dexlib2.Opcode +import com.android.tools.smali.dexlib2.iface.Method +import com.android.tools.smali.dexlib2.iface.reference.MethodReference internal object InitFingerprint : IntegrationsFingerprint( returnType = "V", parameters = emptyList(), - opcodes = listOf( - Opcode.NEW_INSTANCE, - Opcode.INVOKE_DIRECT, - Opcode.INVOKE_STATIC, - Opcode.NEW_INSTANCE, - Opcode.INVOKE_DIRECT, - Opcode.INVOKE_VIRTUAL - ), strings = listOf("activity"), - customFingerprint = { methodDef, _ -> methodDef.name == "onCreate" } -) \ No newline at end of file + customFingerprint = { methodDef, _ -> + methodDef.name == "onCreate" + && indexOfGetProcessNameInstruction(methodDef) >= 0 + } +) { + fun indexOfGetProcessNameInstruction(methodDef: Method) = + methodDef.indexOfFirstInstruction { + opcode == Opcode.INVOKE_STATIC + && getReference()?.name == "getProcessName" + } +} \ No newline at end of file