chore: Merge branch dev
to main
(#3074)
This commit is contained in:
commit
9741e155f0
28
CHANGELOG.md
28
CHANGELOG.md
|
@ -1,3 +1,31 @@
|
||||||
|
# [2.192.0-dev.3](https://github.com/ReVanced/revanced-patches/compare/v2.192.0-dev.2...v2.192.0-dev.3) (2023-10-05)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* **Relay for Reddit - Spoof client:** Prevent OAuth login being disabled remotely ([a0aa2be](https://github.com/ReVanced/revanced-patches/commit/a0aa2be86d25aab2803901b4100fdc75461e94bc))
|
||||||
|
|
||||||
|
# [2.192.0-dev.2](https://github.com/ReVanced/revanced-patches/compare/v2.192.0-dev.1...v2.192.0-dev.2) (2023-10-05)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* **TikTok:** Constrain patches to last working version ([066023c](https://github.com/ReVanced/revanced-patches/commit/066023ca148b413b0848c0939e0bab2b3ff32b3a))
|
||||||
|
|
||||||
|
# [2.192.0-dev.1](https://github.com/ReVanced/revanced-patches/compare/v2.191.1-dev.1...v2.192.0-dev.1) (2023-10-05)
|
||||||
|
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
* **YouTube - Hide "Get YouTube Premium" advertisements:** Name patch correctly ([#3079](https://github.com/ReVanced/revanced-patches/issues/3079)) ([5c140ea](https://github.com/ReVanced/revanced-patches/commit/5c140ea38dc7b7da1efd4b98315fb401267b99f8))
|
||||||
|
|
||||||
|
## [2.191.1-dev.1](https://github.com/ReVanced/revanced-patches/compare/v2.191.0...v2.191.1-dev.1) (2023-10-05)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* Remove `dependencies` from generated JSON file ([79bb3e1](https://github.com/ReVanced/revanced-patches/commit/79bb3e164f84094c639ac9e567dc0a5ce70300bd))
|
||||||
|
|
||||||
# [2.191.0](https://github.com/ReVanced/revanced-patches/compare/v2.190.0...v2.191.0) (2023-10-04)
|
# [2.191.0](https://github.com/ReVanced/revanced-patches/compare/v2.190.0...v2.191.0) (2023-10-04)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
org.gradle.parallel = true
|
org.gradle.parallel = true
|
||||||
org.gradle.caching = true
|
org.gradle.caching = true
|
||||||
kotlin.code.style = official
|
kotlin.code.style = official
|
||||||
version = 2.191.0
|
version = 2.192.0-dev.3
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[versions]
|
[versions]
|
||||||
revanced-patcher = "16.0.0"
|
revanced-patcher = "16.0.1"
|
||||||
revanced-patch-annotation-processor = "16.0.0"
|
revanced-patch-annotation-processor = "16.0.1"
|
||||||
ksp = "1.9.0-1.0.11"
|
ksp = "1.9.0-1.0.11"
|
||||||
smali = "3.0.3"
|
smali = "3.0.3"
|
||||||
guava = "32.1.2-jre"
|
guava = "32.1.2-jre"
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -11,7 +11,6 @@ internal class JsonGenerator : PatchesFileGenerator {
|
||||||
it.name!!,
|
it.name!!,
|
||||||
it.description,
|
it.description,
|
||||||
it.compatiblePackages,
|
it.compatiblePackages,
|
||||||
it.dependencies?.map { dependency -> dependency::class.java.name }?.toSet(),
|
|
||||||
it.use,
|
it.use,
|
||||||
it.requiresIntegrations,
|
it.requiresIntegrations,
|
||||||
it.options.values.map { option ->
|
it.options.values.map { option ->
|
||||||
|
@ -27,7 +26,6 @@ internal class JsonGenerator : PatchesFileGenerator {
|
||||||
val name: String? = null,
|
val name: String? = null,
|
||||||
val description: String? = null,
|
val description: String? = null,
|
||||||
val compatiblePackages: Set<Patch.CompatiblePackage>? = null,
|
val compatiblePackages: Set<Patch.CompatiblePackage>? = null,
|
||||||
val dependencies: Set<String>? = null,
|
|
||||||
val use: Boolean = true,
|
val use: Boolean = true,
|
||||||
val requiresIntegrations: Boolean = false,
|
val requiresIntegrations: Boolean = false,
|
||||||
val options: List<Option>
|
val options: List<Option>
|
||||||
|
|
|
@ -9,6 +9,9 @@ import app.revanced.patcher.patch.annotation.CompatiblePackage
|
||||||
import app.revanced.patcher.patch.annotation.Patch
|
import app.revanced.patcher.patch.annotation.Patch
|
||||||
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
|
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
|
||||||
import app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints.*
|
import app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints.*
|
||||||
|
import com.android.tools.smali.dexlib2.Opcode
|
||||||
|
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction10t
|
||||||
|
import com.android.tools.smali.dexlib2.builder.instruction.BuilderInstruction21t
|
||||||
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
|
|
||||||
@Patch(
|
@Patch(
|
||||||
|
@ -28,7 +31,10 @@ object SpoofClientPatch : AbstractSpoofClientPatch(
|
||||||
GetLoggedOutBearerTokenFingerprint,
|
GetLoggedOutBearerTokenFingerprint,
|
||||||
GetRefreshTokenFingerprint
|
GetRefreshTokenFingerprint
|
||||||
),
|
),
|
||||||
miscellaneousFingerprints = listOf(SetRemoteConfigFingerprint)
|
miscellaneousFingerprints = listOf(
|
||||||
|
SetRemoteConfigFingerprint,
|
||||||
|
RedditCheckDisableAPIFingerprint
|
||||||
|
)
|
||||||
) {
|
) {
|
||||||
override fun List<MethodFingerprintResult>.patchClientId(context: BytecodeContext) {
|
override fun List<MethodFingerprintResult>.patchClientId(context: BytecodeContext) {
|
||||||
forEach {
|
forEach {
|
||||||
|
@ -44,7 +50,24 @@ object SpoofClientPatch : AbstractSpoofClientPatch(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun List<MethodFingerprintResult>.patchMiscellaneous(context: BytecodeContext) =
|
override fun List<MethodFingerprintResult>.patchMiscellaneous(context: BytecodeContext) {
|
||||||
// Do not load remote config which disables OAuth login remotely
|
// Do not load remote config which disables OAuth login remotely.
|
||||||
first().mutableMethod.addInstructions(0, "return-void")
|
first().mutableMethod.addInstructions(0, "return-void")
|
||||||
|
|
||||||
|
// Prevent OAuth login being disabled remotely.
|
||||||
|
last().let {
|
||||||
|
val checkIsOAuthRequestIndex = it.scanResult.patternScanResult!!.startIndex
|
||||||
|
|
||||||
|
it.mutableMethod.apply {
|
||||||
|
val returnNextChain = getInstruction<BuilderInstruction21t>(checkIsOAuthRequestIndex).target
|
||||||
|
replaceInstruction(
|
||||||
|
checkIsOAuthRequestIndex,
|
||||||
|
BuilderInstruction10t(
|
||||||
|
Opcode.GOTO,
|
||||||
|
returnNextChain
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
package app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints
|
||||||
|
|
||||||
|
import app.revanced.patcher.fingerprint.method.impl.MethodFingerprint
|
||||||
|
import com.android.tools.smali.dexlib2.Opcode
|
||||||
|
|
||||||
|
object RedditCheckDisableAPIFingerprint : MethodFingerprint(
|
||||||
|
strings = listOf("Reddit Disabled"),
|
||||||
|
opcodes = listOf(Opcode.IF_EQZ)
|
||||||
|
)
|
|
@ -16,8 +16,8 @@ import app.revanced.patches.tiktok.interaction.downloads.fingerprints.ACLCommonS
|
||||||
import app.revanced.patches.tiktok.interaction.downloads.fingerprints.ACLCommonShareFingerprint3
|
import app.revanced.patches.tiktok.interaction.downloads.fingerprints.ACLCommonShareFingerprint3
|
||||||
import app.revanced.patches.tiktok.interaction.downloads.fingerprints.DownloadPathParentFingerprint
|
import app.revanced.patches.tiktok.interaction.downloads.fingerprints.DownloadPathParentFingerprint
|
||||||
import app.revanced.patches.tiktok.misc.integrations.IntegrationsPatch
|
import app.revanced.patches.tiktok.misc.integrations.IntegrationsPatch
|
||||||
import app.revanced.patches.tiktok.misc.settings.fingerprints.SettingsStatusLoadFingerprint
|
|
||||||
import app.revanced.patches.tiktok.misc.settings.SettingsPatch
|
import app.revanced.patches.tiktok.misc.settings.SettingsPatch
|
||||||
|
import app.revanced.patches.tiktok.misc.settings.fingerprints.SettingsStatusLoadFingerprint
|
||||||
import com.android.tools.smali.dexlib2.Opcode
|
import com.android.tools.smali.dexlib2.Opcode
|
||||||
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
|
||||||
import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction
|
import com.android.tools.smali.dexlib2.iface.instruction.ReferenceInstruction
|
||||||
|
@ -28,8 +28,8 @@ import com.android.tools.smali.dexlib2.iface.reference.StringReference
|
||||||
description = "Removes download restrictions and changes the default path to download to.",
|
description = "Removes download restrictions and changes the default path to download to.",
|
||||||
dependencies = [IntegrationsPatch::class, SettingsPatch::class],
|
dependencies = [IntegrationsPatch::class, SettingsPatch::class],
|
||||||
compatiblePackages = [
|
compatiblePackages = [
|
||||||
CompatiblePackage("com.ss.android.ugc.trill"),
|
CompatiblePackage("com.ss.android.ugc.trill", ["30.8.4"]),
|
||||||
CompatiblePackage("com.zhiliaoapp.musically")
|
CompatiblePackage("com.zhiliaoapp.musically", ["30.8.4"])
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@Suppress("unused")
|
@Suppress("unused")
|
||||||
|
|
|
@ -23,8 +23,8 @@ import com.android.tools.smali.dexlib2.iface.instruction.formats.Instruction35c
|
||||||
description = "Adds ReVanced settings to TikTok.",
|
description = "Adds ReVanced settings to TikTok.",
|
||||||
dependencies = [IntegrationsPatch::class],
|
dependencies = [IntegrationsPatch::class],
|
||||||
compatiblePackages = [
|
compatiblePackages = [
|
||||||
CompatiblePackage("com.ss.android.ugc.trill"),
|
CompatiblePackage("com.ss.android.ugc.trill", ["30.8.4"]),
|
||||||
CompatiblePackage("com.zhiliaoapp.musically")
|
CompatiblePackage("com.zhiliaoapp.musically", ["30.8.4"])
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
object SettingsPatch : BytecodePatch(
|
object SettingsPatch : BytecodePatch(
|
||||||
|
|
|
@ -15,7 +15,8 @@ import app.revanced.patches.youtube.misc.settings.SettingsPatch
|
||||||
import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction
|
import com.android.tools.smali.dexlib2.iface.instruction.TwoRegisterInstruction
|
||||||
|
|
||||||
@Patch(
|
@Patch(
|
||||||
name = "Hide get premium",
|
name = "Hide \"Get YouTube Premium\" advertisements",
|
||||||
|
description = "Hides YouTube Premium advertisements under video player.",
|
||||||
dependencies = [IntegrationsPatch::class, SettingsPatch::class],
|
dependencies = [IntegrationsPatch::class, SettingsPatch::class],
|
||||||
compatiblePackages = [
|
compatiblePackages = [
|
||||||
CompatiblePackage(
|
CompatiblePackage(
|
||||||
|
@ -41,7 +42,7 @@ object HideGetPremiumPatch : BytecodePatch(setOf(GetPremiumViewFingerprint)) {
|
||||||
"revanced_hide_get_premium",
|
"revanced_hide_get_premium",
|
||||||
StringResource(
|
StringResource(
|
||||||
"revanced_hide_get_premium_title",
|
"revanced_hide_get_premium_title",
|
||||||
"Hide YouTube premium advertisement"
|
"Hide \"Get YouTube Premium\" advertisements"
|
||||||
),
|
),
|
||||||
StringResource(
|
StringResource(
|
||||||
"revanced_hide_get_premium_summary_on",
|
"revanced_hide_get_premium_summary_on",
|
||||||
|
|
Loading…
Reference in a new issue