Skip to content

Commit 189ae35

Browse files
committed
Updated Debugging to improve the reliability.
Support YouTube 20.40.45
1 parent 1145b43 commit 189ae35

File tree

4 files changed

+22
-70
lines changed

4 files changed

+22
-70
lines changed

app/src/main/java/io/github/chsbuffer/revancedxposed/shared/misc/debugging/EnableDebuggingPatch.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ fun BaseHook.EnableDebugging(
6161
after {
6262
it.result = EnableDebuggingPatch.isDoubleFeatureFlagEnabled(
6363
it.result as Double,
64-
it.args[0] as Long,
65-
it.args[1] as Double
64+
it.args[1] as Long,
65+
it.args[2] as Double
6666
)
6767
}
6868
}
@@ -71,8 +71,8 @@ fun BaseHook.EnableDebugging(
7171
after {
7272
it.result = EnableDebuggingPatch.isLongFeatureFlagEnabled(
7373
it.result as Long,
74-
it.args[0] as Long,
75-
it.args[1] as Long
74+
it.args[1] as Long,
75+
it.args[2] as Long
7676
)
7777
}
7878
}
@@ -81,8 +81,8 @@ fun BaseHook.EnableDebugging(
8181
after {
8282
it.result = EnableDebuggingPatch.isStringFeatureFlagEnabled(
8383
it.result as String,
84-
it.args[0] as Long,
85-
it.args[1] as String
84+
it.args[1] as Long,
85+
it.args[2] as String
8686
)
8787
}
8888
}

app/src/main/java/io/github/chsbuffer/revancedxposed/shared/misc/debugging/Fingerprints.kt

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,48 +3,48 @@ package io.github.chsbuffer.revancedxposed.shared.misc.debugging
33
import io.github.chsbuffer.revancedxposed.AccessFlags
44
import io.github.chsbuffer.revancedxposed.TargetApp
55
import io.github.chsbuffer.revancedxposed.accessFlags
6-
import io.github.chsbuffer.revancedxposed.findMethodDirect
6+
import io.github.chsbuffer.revancedxposed.findClassDirect
77
import io.github.chsbuffer.revancedxposed.fingerprint
88
import io.github.chsbuffer.revancedxposed.parameters
99
import io.github.chsbuffer.revancedxposed.returns
1010
import io.github.chsbuffer.revancedxposed.strings
1111

12-
internal val experimentalFeatureFlagParentFingerprint = findMethodDirect {
12+
internal val experimentalFeatureFlagParentFingerprint = findClassDirect {
1313
findMethod {
1414
matcher {
15-
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
15+
accessFlags(AccessFlags.STATIC)
1616
returns("L")
1717
parameters("L", "J", "[B")
1818
strings("Unable to parse proto typed experiment flag: ")
1919
}
20-
}.first()
20+
}.map { it.declaredClass }.distinct().single()!!
2121
}
2222

2323
internal val experimentalBooleanFeatureFlagFingerprint = fingerprint {
24-
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).declaredClassName) }
25-
accessFlags(AccessFlags.PUBLIC, AccessFlags.STATIC)
24+
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).name) }
25+
accessFlags(AccessFlags.STATIC)
2626
returns("Z")
2727
parameters("L", "J", "Z")
2828
}
2929

3030
internal val experimentalDoubleFeatureFlagFingerprint = fingerprint {
31-
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).declaredClassName) }
32-
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
31+
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).name) }
32+
accessFlags(AccessFlags.STATIC)
3333
returns("D")
34-
parameters("J", "D")
34+
parameters("L", "J", "D")
3535
}
3636

3737
internal val experimentalLongFeatureFlagFingerprint = fingerprint {
38-
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).declaredClassName) }
39-
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
38+
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).name) }
39+
accessFlags(AccessFlags.STATIC)
4040
returns("J")
41-
parameters("J", "J")
41+
parameters("L", "J", "J")
4242
}
4343

4444
@get:TargetApp("youtube")
4545
internal val experimentalStringFeatureFlagFingerprint = fingerprint {
46-
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).declaredClassName) }
47-
accessFlags(AccessFlags.PUBLIC, AccessFlags.FINAL)
46+
classMatcher { className(experimentalFeatureFlagParentFingerprint(dexkit).name) }
47+
accessFlags(AccessFlags.STATIC)
4848
returns("Ljava/lang/String;")
49-
parameters("J", "Ljava/lang/String;")
49+
parameters("L", "J", "Ljava/lang/String;")
5050
}

app/src/main/java/io/github/chsbuffer/revancedxposed/youtube/misc/debugging/Fingerprints.kt

Lines changed: 0 additions & 48 deletions
This file was deleted.

app/src/main/java/io/github/chsbuffer/revancedxposed/youtube/video/audio/ForceOriginalAudioPatch.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ package io.github.chsbuffer.revancedxposed.youtube.video.audio
22

33
import app.revanced.extension.shared.patches.ForceOriginalAudioPatch
44
import app.revanced.extension.shared.settings.preference.ForceOriginalAudioSwitchPreference
5+
import io.github.chsbuffer.revancedxposed.shared.misc.debugging.experimentalBooleanFeatureFlagFingerprint
56
import io.github.chsbuffer.revancedxposed.shared.misc.settings.preference.SwitchPreference
67
import io.github.chsbuffer.revancedxposed.youtube.YoutubeHook
7-
import io.github.chsbuffer.revancedxposed.youtube.misc.debugging.experimentalBooleanFeatureFlagFingerprint
88
import io.github.chsbuffer.revancedxposed.youtube.misc.settings.PreferenceScreen
99
import io.github.chsbuffer.revancedxposed.youtube.shared.mainActivityOnCreateFingerprint
1010

0 commit comments

Comments
 (0)