Skip to content

Commit d36982e

Browse files
author
LisoUseInAIKyrios
authored
chore: Merge branch dev to main (#3559)
2 parents b7600f4 + 13031f0 commit d36982e

File tree

158 files changed

+5203
-6314
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

158 files changed

+5203
-6314
lines changed

CHANGELOG.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,122 @@
1+
# [4.14.0-dev.15](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.14...v4.14.0-dev.15) (2024-09-17)
2+
3+
4+
### Bug Fixes
5+
6+
* **YouTube:** Fix issues related to playback by replace streaming data ([#3582](https://github.com/ReVanced/revanced-patches/issues/3582)) ([dfa94d7](https://github.com/ReVanced/revanced-patches/commit/dfa94d70f65150d6ef24ea6378b8e6a317055186))
7+
8+
# [4.14.0-dev.14](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.13...v4.14.0-dev.14) (2024-09-17)
9+
10+
11+
### Features
12+
13+
* **YouTube Music:** Make working patches compatible with latest versions ([#3556](https://github.com/ReVanced/revanced-patches/issues/3556)) ([12f6f19](https://github.com/ReVanced/revanced-patches/commit/12f6f1966ad04631451940f7b64d785c3ef481a0))
14+
15+
# [4.14.0-dev.13](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.12...v4.14.0-dev.13) (2024-09-17)
16+
17+
18+
### Features
19+
20+
* **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([#3647](https://github.com/ReVanced/revanced-patches/issues/3647)) ([33fc090](https://github.com/ReVanced/revanced-patches/commit/33fc09061431d4aa457d743c09a0de31ec566df1))
21+
22+
# [4.14.0-dev.12](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.11...v4.14.0-dev.12) (2024-09-14)
23+
24+
25+
### Bug Fixes
26+
27+
* **Soundcloud - Hide ads:** Support latest version ([#3628](https://github.com/ReVanced/revanced-patches/issues/3628)) ([66e7e33](https://github.com/ReVanced/revanced-patches/commit/66e7e33efce9b702fdfcc2b9803e9da8491c1f08))
28+
29+
# [4.14.0-dev.11](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.10...v4.14.0-dev.11) (2024-09-12)
30+
31+
32+
### Features
33+
34+
* **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](https://github.com/ReVanced/revanced-patches/commit/98ead493380932cb105530f4ba992673fd364d82))
35+
36+
# [4.14.0-dev.10](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.9...v4.14.0-dev.10) (2024-09-12)
37+
38+
39+
### Features
40+
41+
* **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](https://github.com/ReVanced/revanced-patches/commit/46d11f3530fcdae9ed08b7e93aac235638a92dff))
42+
43+
# [4.14.0-dev.9](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.8...v4.14.0-dev.9) (2024-09-09)
44+
45+
46+
### Features
47+
48+
* **YouTube:** Add donation link to settings about screen ([#3626](https://github.com/ReVanced/revanced-patches/issues/3626)) ([0684ab5](https://github.com/ReVanced/revanced-patches/commit/0684ab5f183631de5720352049cfd293daa58eb0))
49+
50+
# [4.14.0-dev.8](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.7...v4.14.0-dev.8) (2024-09-09)
51+
52+
53+
### Bug Fixes
54+
55+
* **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](https://github.com/ReVanced/revanced-patches/commit/df80b9f92f0d981b9a40b7756d74f8ccc3dcb1e9))
56+
57+
# [4.14.0-dev.7](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.6...v4.14.0-dev.7) (2024-09-06)
58+
59+
60+
### Features
61+
62+
* Add `Check environment` patch ([#3610](https://github.com/ReVanced/revanced-patches/issues/3610)) ([fbcbdaf](https://github.com/ReVanced/revanced-patches/commit/fbcbdafa4938a35b5fdec46aae7b250a84b9c139))
63+
64+
# [4.14.0-dev.6](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.5...v4.14.0-dev.6) (2024-09-06)
65+
66+
67+
### Features
68+
69+
* Add `Change data directory location` patch ([#3602](https://github.com/ReVanced/revanced-patches/issues/3602)) ([5998029](https://github.com/ReVanced/revanced-patches/commit/59980292809cc0626bf49a160eeb05a1523c4eda))
70+
71+
# [4.14.0-dev.5](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.4...v4.14.0-dev.5) (2024-09-06)
72+
73+
74+
### Bug Fixes
75+
76+
* **Pixiv - Hide ads:** Fix for latest version ([#3616](https://github.com/ReVanced/revanced-patches/issues/3616)) ([98956e8](https://github.com/ReVanced/revanced-patches/commit/98956e8f1a41347bb435720bbf984969469a7110))
77+
78+
# [4.14.0-dev.4](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.3...v4.14.0-dev.4) (2024-09-01)
79+
80+
81+
### Bug Fixes
82+
83+
* **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([#3601](https://github.com/ReVanced/revanced-patches/issues/3601)) ([005be82](https://github.com/ReVanced/revanced-patches/commit/005be82d71b2a42387b1b57035930b20f4663794))
84+
85+
# [4.14.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.2...v4.14.0-dev.3) (2024-08-30)
86+
87+
88+
### Features
89+
90+
* **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([#3592](https://github.com/ReVanced/revanced-patches/issues/3592)) ([f5fb351](https://github.com/ReVanced/revanced-patches/commit/f5fb3512cfafe214ba6a6d25ba0825ae1884a0ff))
91+
92+
# [4.14.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v4.14.0-dev.1...v4.14.0-dev.2) (2024-08-24)
93+
94+
95+
### Features
96+
97+
* **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([#3422](https://github.com/ReVanced/revanced-patches/issues/3422)) ([d0a8599](https://github.com/ReVanced/revanced-patches/commit/d0a8599f76ce653e5d7c98069ad3c58b9ab9c5eb))
98+
99+
# [4.14.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v4.13.4-dev.2...v4.14.0-dev.1) (2024-08-22)
100+
101+
102+
### Features
103+
104+
* **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([#3570](https://github.com/ReVanced/revanced-patches/issues/3570)) ([1a49d1f](https://github.com/ReVanced/revanced-patches/commit/1a49d1f3c2a343d05d0abc07c143add486246fd0))
105+
106+
## [4.13.4-dev.2](https://github.com/ReVanced/revanced-patches/compare/v4.13.4-dev.1...v4.13.4-dev.2) (2024-08-20)
107+
108+
109+
### Bug Fixes
110+
111+
* **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](https://github.com/ReVanced/revanced-patches/commit/37b3dd1e789f8bb16fa1b9dd582e39c89dbe730c))
112+
113+
## [4.13.4-dev.1](https://github.com/ReVanced/revanced-patches/compare/v4.13.3...v4.13.4-dev.1) (2024-08-18)
114+
115+
116+
### Bug Fixes
117+
118+
* **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([#3558](https://github.com/ReVanced/revanced-patches/issues/3558)) ([0f5a771](https://github.com/ReVanced/revanced-patches/commit/0f5a771a5cff5684b4a8fd317f4938fe2cf3cbbe))
119+
1120
## [4.13.3](https://github.com/ReVanced/revanced-patches/compare/v4.13.2...v4.13.3) (2024-08-15)
2121

3122

api/revanced-patches.api

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,14 @@ public final class app/revanced/patches/all/connectivity/wifi/spoof/SpoofWifiPat
1616
public fun transform (Lapp/revanced/patcher/util/proxy/mutableTypes/MutableMethod;Lkotlin/Triple;)V
1717
}
1818

19+
public final class app/revanced/patches/all/directory/ChangeDataDirectoryLocationPatch : app/revanced/patches/all/misc/transformation/BaseTransformInstructionsPatch {
20+
public static final field INSTANCE Lapp/revanced/patches/all/directory/ChangeDataDirectoryLocationPatch;
21+
public fun filterMap (Lcom/android/tools/smali/dexlib2/iface/ClassDef;Lcom/android/tools/smali/dexlib2/iface/Method;Lcom/android/tools/smali/dexlib2/iface/instruction/Instruction;I)Ljava/lang/Integer;
22+
public synthetic fun filterMap (Lcom/android/tools/smali/dexlib2/iface/ClassDef;Lcom/android/tools/smali/dexlib2/iface/Method;Lcom/android/tools/smali/dexlib2/iface/instruction/Instruction;I)Ljava/lang/Object;
23+
public fun transform (Lapp/revanced/patcher/util/proxy/mutableTypes/MutableMethod;I)V
24+
public synthetic fun transform (Lapp/revanced/patcher/util/proxy/mutableTypes/MutableMethod;Ljava/lang/Object;)V
25+
}
26+
1927
public final class app/revanced/patches/all/interaction/gestures/PredictiveBackGesturePatch : app/revanced/patcher/patch/ResourcePatch {
2028
public static final field INSTANCE Lapp/revanced/patches/all/interaction/gestures/PredictiveBackGesturePatch;
2129
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
@@ -243,6 +251,18 @@ public final class app/revanced/patches/cieid/restrictions/root/BypassRootChecks
243251
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
244252
}
245253

254+
public final class app/revanced/patches/duolingo/ad/DisableAdsPatch : app/revanced/patcher/patch/BytecodePatch {
255+
public static final field INSTANCE Lapp/revanced/patches/duolingo/ad/DisableAdsPatch;
256+
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
257+
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
258+
}
259+
260+
public final class app/revanced/patches/duolingo/debug/EnableDebugMenuPatch : app/revanced/patcher/patch/BytecodePatch {
261+
public static final field INSTANCE Lapp/revanced/patches/duolingo/debug/EnableDebugMenuPatch;
262+
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
263+
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
264+
}
265+
246266
public final class app/revanced/patches/facebook/ads/story/HideStoryAdsPatch : app/revanced/patcher/patch/BytecodePatch {
247267
public static final field INSTANCE Lapp/revanced/patches/facebook/ads/story/HideStoryAdsPatch;
248268
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
@@ -808,6 +828,12 @@ public final class app/revanced/patches/reddit/customclients/syncforreddit/fix/s
808828
public static final field INSTANCE Lapp/revanced/patches/reddit/customclients/syncforreddit/fix/slink/FixSLinksPatch;
809829
}
810830

831+
public final class app/revanced/patches/reddit/customclients/syncforreddit/fix/user/UseUserEndpointPatch : app/revanced/patcher/patch/BytecodePatch {
832+
public static final field INSTANCE Lapp/revanced/patches/reddit/customclients/syncforreddit/fix/user/UseUserEndpointPatch;
833+
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
834+
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
835+
}
836+
811837
public final class app/revanced/patches/reddit/customclients/syncforreddit/misc/integrations/IntegrationsPatch : app/revanced/patches/shared/misc/integrations/BaseIntegrationsPatch {
812838
public static final field INSTANCE Lapp/revanced/patches/reddit/customclients/syncforreddit/misc/integrations/IntegrationsPatch;
813839
}
@@ -842,6 +868,12 @@ public final class app/revanced/patches/serviceportalbund/detection/root/RootDet
842868
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
843869
}
844870

871+
public abstract class app/revanced/patches/shared/misc/checks/BaseCheckEnvironmentPatch : app/revanced/patcher/patch/BytecodePatch {
872+
public fun <init> (Lapp/revanced/patcher/fingerprint/MethodFingerprint;Ljava/util/Set;Lapp/revanced/patches/shared/misc/integrations/BaseIntegrationsPatch;)V
873+
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
874+
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
875+
}
876+
845877
public final class app/revanced/patches/shared/misc/fix/verticalscroll/VerticalScrollPatch : app/revanced/patcher/patch/BytecodePatch {
846878
public static final field INSTANCE Lapp/revanced/patches/shared/misc/fix/verticalscroll/VerticalScrollPatch;
847879
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
@@ -1850,6 +1882,10 @@ public final class app/revanced/patches/youtube/misc/backgroundplayback/Backgrou
18501882
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
18511883
}
18521884

1885+
public final class app/revanced/patches/youtube/misc/check/CheckEnvironmentPatch : app/revanced/patches/shared/misc/checks/BaseCheckEnvironmentPatch {
1886+
public static final field INSTANCE Lapp/revanced/patches/youtube/misc/check/CheckEnvironmentPatch;
1887+
}
1888+
18531889
public final class app/revanced/patches/youtube/misc/debugging/DebuggingPatch : app/revanced/patcher/patch/ResourcePatch {
18541890
public static final field INSTANCE Lapp/revanced/patches/youtube/misc/debugging/DebuggingPatch;
18551891
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
@@ -1880,6 +1916,12 @@ public final class app/revanced/patches/youtube/misc/fix/playback/SpoofSignature
18801916
public fun execute (Lapp/revanced/patcher/data/ResourceContext;)V
18811917
}
18821918

1919+
public final class app/revanced/patches/youtube/misc/fix/playback/SpoofVideoStreamsPatch : app/revanced/patcher/patch/BytecodePatch {
1920+
public static final field INSTANCE Lapp/revanced/patches/youtube/misc/fix/playback/SpoofVideoStreamsPatch;
1921+
public fun execute (Lapp/revanced/patcher/data/BytecodeContext;)V
1922+
public synthetic fun execute (Lapp/revanced/patcher/data/Context;)V
1923+
}
1924+
18831925
public final class app/revanced/patches/youtube/misc/fix/playback/UserAgentClientSpoofPatch : app/revanced/patches/all/misc/transformation/BaseTransformInstructionsPatch {
18841926
public static final field INSTANCE Lapp/revanced/patches/youtube/misc/fix/playback/UserAgentClientSpoofPatch;
18851927
public synthetic fun filterMap (Lcom/android/tools/smali/dexlib2/iface/ClassDef;Lcom/android/tools/smali/dexlib2/iface/Method;Lcom/android/tools/smali/dexlib2/iface/instruction/Instruction;I)Ljava/lang/Object;

build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ dependencies {
3131
implementation(libs.guava)
3232
// Used in JsonGenerator.
3333
implementation(libs.gson)
34+
// Android API stubs defined here.
35+
compileOnly(project(":stub"))
3436
}
3537

3638
kotlin {

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
org.gradle.parallel = true
22
org.gradle.caching = true
33
kotlin.code.style = official
4-
version = 4.13.3
4+
version = 4.14.0-dev.15

patches.json

Lines changed: 0 additions & 1 deletion
This file was deleted.

settings.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,5 @@ buildCache {
55
isEnabled = "CI" !in System.getenv()
66
}
77
}
8+
9+
include(":stub")
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
package app.revanced.patches.all.directory
2+
3+
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
4+
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
5+
import app.revanced.patcher.patch.annotation.Patch
6+
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
7+
import app.revanced.patches.all.misc.transformation.BaseTransformInstructionsPatch
8+
import app.revanced.util.getReference
9+
import com.android.tools.smali.dexlib2.iface.ClassDef
10+
import com.android.tools.smali.dexlib2.iface.Method
11+
import com.android.tools.smali.dexlib2.iface.instruction.Instruction
12+
import com.android.tools.smali.dexlib2.iface.instruction.formats.Instruction35c
13+
import com.android.tools.smali.dexlib2.iface.reference.MethodReference
14+
import com.android.tools.smali.dexlib2.immutable.reference.ImmutableMethodReference
15+
import com.android.tools.smali.dexlib2.util.MethodUtil
16+
17+
@Patch(
18+
name = "Change data directory location",
19+
description = "Changes the data directory in the application from " +
20+
"the app internal storage directory to /sdcard/android/data accessible by root-less devices." +
21+
"Using this patch can cause unexpected issues with some apps.",
22+
use = false,
23+
)
24+
@Suppress("unused")
25+
object ChangeDataDirectoryLocationPatch : BaseTransformInstructionsPatch<Int>() {
26+
override fun filterMap(
27+
classDef: ClassDef,
28+
method: Method,
29+
instruction: Instruction,
30+
instructionIndex: Int,
31+
): Int? {
32+
val reference = instruction.getReference<MethodReference>() ?: return null
33+
34+
if (!MethodUtil.methodSignaturesMatch(reference, MethodCall.GetDir.reference)) {
35+
return null
36+
}
37+
38+
return instructionIndex
39+
}
40+
41+
override fun transform(
42+
mutableMethod: MutableMethod,
43+
entry: Int,
44+
) = transformMethodCall(entry, mutableMethod)
45+
46+
private fun transformMethodCall(
47+
instructionIndex: Int,
48+
mutableMethod: MutableMethod,
49+
) {
50+
val getDirInstruction = mutableMethod.getInstruction<Instruction35c>(instructionIndex)
51+
val contextRegister = getDirInstruction.registerC
52+
val dataRegister = getDirInstruction.registerD
53+
54+
mutableMethod.replaceInstruction(
55+
instructionIndex,
56+
"invoke-virtual { v$contextRegister, v$dataRegister }, " +
57+
"Landroid/content/Context;->getExternalFilesDir(Ljava/lang/String;)Ljava/io/File;",
58+
)
59+
}
60+
61+
private enum class MethodCall(
62+
val reference: MethodReference,
63+
) {
64+
GetDir(
65+
ImmutableMethodReference(
66+
"Landroid/content/Context;",
67+
"getDir",
68+
listOf("Ljava/lang/String;", "I"),
69+
"Ljava/io/File;",
70+
),
71+
),
72+
}
73+
}

src/main/kotlin/app/revanced/patches/all/misc/resources/AddResourcesPatch.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,9 @@ object AddResourcesPatch : ResourcePatch(), MutableMap<Value, MutableSet<BaseRes
8383
"eu-rES" to "eu",
8484
"fa-rIR" to "fa",
8585
"fi-rFI" to "fi",
86-
"tl-rPH" to "tl",
86+
"fil-rPH" to "tl",
8787
"fr-rFR" to "fr",
88+
"ga-rIE" to "ga",
8889
"gl-rES" to "gl",
8990
"gu-rIN" to "gu",
9091
"hi-rIN" to "hi",
@@ -139,7 +140,6 @@ object AddResourcesPatch : ResourcePatch(), MutableMap<Value, MutableSet<BaseRes
139140
"uz-rUZ" to "uz",
140141
"vi-rVN" to "vi",
141142
"zh-rCN" to "zh-rCN",
142-
"zh-rHK" to "zh-rHK",
143143
"zh-rTW" to "zh-rTW",
144144
"zu-rZA" to "zu",
145145
)
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package app.revanced.patches.duolingo.ad
2+
3+
import app.revanced.patcher.data.BytecodeContext
4+
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
5+
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
6+
import app.revanced.patcher.patch.BytecodePatch
7+
import app.revanced.patcher.patch.annotation.CompatiblePackage
8+
import app.revanced.patcher.patch.annotation.Patch
9+
import app.revanced.patches.duolingo.ad.fingerprints.InitializeMonetizationDebugSettingsFingerprint
10+
import app.revanced.util.resultOrThrow
11+
import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction
12+
13+
@Patch(
14+
name = "Disable ads",
15+
compatiblePackages = [CompatiblePackage("com.duolingo")]
16+
)
17+
@Suppress("unused")
18+
object DisableAdsPatch : BytecodePatch(
19+
setOf(InitializeMonetizationDebugSettingsFingerprint)
20+
) {
21+
override fun execute(context: BytecodeContext) {
22+
// Couple approaches to remove ads exist:
23+
//
24+
// MonetizationDebugSettings has a boolean value for "disableAds".
25+
// OnboardingState has a getter to check if the user has any "adFreeSessions".
26+
// SharedPreferences has a debug boolean value with key "disable_ads", which maps to "DebugCategory.DISABLE_ADS".
27+
//
28+
// MonetizationDebugSettings seems to be the most general setting to work fine.
29+
InitializeMonetizationDebugSettingsFingerprint.resultOrThrow().let {
30+
it.mutableMethod.apply {
31+
val insertIndex = it.scanResult.patternScanResult!!.startIndex
32+
val register = getInstruction<TwoRegisterInstruction>(insertIndex).registerA
33+
34+
addInstructions(
35+
insertIndex,
36+
"const/4 v$register, 0x1"
37+
)
38+
}
39+
}
40+
}
41+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package app.revanced.patches.duolingo.ad.fingerprints
2+
3+
import app.revanced.patcher.extensions.or
4+
import app.revanced.patcher.fingerprint.MethodFingerprint
5+
import com.android.tools.smali.dexlib2.AccessFlags
6+
import com.android.tools.smali.dexlib2.Opcode
7+
8+
internal object InitializeMonetizationDebugSettingsFingerprint : MethodFingerprint(
9+
returnType = "V",
10+
accessFlags = AccessFlags.PUBLIC or AccessFlags.CONSTRUCTOR,
11+
parameters = listOf(
12+
"Z", // disableAds
13+
"Z", // useDebugBilling
14+
"Z", // showManageSubscriptions
15+
"Z", // alwaysShowSuperAds
16+
"Lcom/duolingo/debug/FamilyQuestOverride;",
17+
),
18+
opcodes = listOf(
19+
Opcode.IPUT_BOOLEAN
20+
)
21+
)

0 commit comments

Comments
 (0)