diff --git a/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/annotations/IntegrationsCompatibility.kt b/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/annotations/IntegrationsCompatibility.kt new file mode 100644 index 000000000..f0e219fbd --- /dev/null +++ b/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/annotations/IntegrationsCompatibility.kt @@ -0,0 +1,9 @@ +package app.revanced.patches.twitch.misc.integrations.annotations + +import app.revanced.patcher.annotation.Compatibility +import app.revanced.patcher.annotation.Package + +@Compatibility([Package("tv.twitch.android.app")]) +@Target(AnnotationTarget.CLASS) +@Retention(AnnotationRetention.RUNTIME) +internal annotation class IntegrationsCompatibility \ No newline at end of file diff --git a/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/fingerprints/InitFingerprint.kt b/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/fingerprints/InitFingerprint.kt new file mode 100644 index 000000000..4e22c792e --- /dev/null +++ b/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/fingerprints/InitFingerprint.kt @@ -0,0 +1,16 @@ +package app.revanced.patches.twitch.misc.integrations.fingerprints + +import app.revanced.patcher.annotation.Name +import app.revanced.patcher.annotation.Version +import app.revanced.patches.twitch.misc.integrations.annotations.IntegrationsCompatibility +import app.revanced.shared.patches.AbstractIntegrationsPatch.IntegrationsFingerprint + +@Name("init-fingerprint") +@IntegrationsCompatibility +@Version("0.0.1") +object InitFingerprint : IntegrationsFingerprint( + customFingerprint = { methodDef -> + methodDef.definingClass.endsWith("/TwitchApplication;") && + methodDef.name == "onCreate" + } +) \ No newline at end of file diff --git a/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/patch/IntegrationsPatch.kt b/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/patch/IntegrationsPatch.kt new file mode 100644 index 000000000..dbe27ff0a --- /dev/null +++ b/src/main/kotlin/app/revanced/patches/twitch/misc/integrations/patch/IntegrationsPatch.kt @@ -0,0 +1,13 @@ +package app.revanced.patches.twitch.misc.integrations.patch + +import app.revanced.patcher.annotation.Name +import app.revanced.patches.twitch.misc.integrations.fingerprints.InitFingerprint +import app.revanced.patches.twitch.misc.integrations.annotations.IntegrationsCompatibility +import app.revanced.shared.patches.AbstractIntegrationsPatch + +@Name("integrations") +@IntegrationsCompatibility +class IntegrationsPatch : AbstractIntegrationsPatch( + "Lapp/revanced/twitch/utils/ReVancedUtils;", + listOf(InitFingerprint) +) \ No newline at end of file