feat: Move strings to resources for localization (#2440)

Co-authored-by: oSumAtrIX <johan.melkonyan1@web.de>
Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net>
Co-authored-by: Aunali321 <aunvakil.aa@gmail.com>

BREAKING CHANGE: Various APIs have been changed.
This commit is contained in:
LisoUseInAIKyrios
2024-01-27 02:34:01 +01:00
committed by GitHub
co-authored by oSumAtrIX semantic-release-bot Aunali321
parent 15a83a6d28
commit 55fb1ebd9d
201 changed files with 3411 additions and 3784 deletions
@@ -1,14 +1,14 @@
package app.revanced.patches.reddit.customclients
import app.revanced.util.exception
import app.revanced.patcher.PatchClass
import app.revanced.patcher.data.BytecodeContext
import app.revanced.patcher.fingerprint.MethodFingerprint
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patcher.patch.BytecodePatch
import app.revanced.patcher.patch.options.PatchOption.PatchExtensions.stringPatchOption
import app.revanced.util.exception
abstract class AbstractSpoofClientPatch(
abstract class BaseSpoofClientPatch(
redirectUri: String,
private val miscellaneousFingerprints: Set<MethodFingerprint> = emptySet(),
private val clientIdFingerprints: Set<MethodFingerprint> = emptySet(),
@@ -4,14 +4,14 @@ import app.revanced.patcher.data.BytecodeContext
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.baconreader.api.fingerprints.GetAuthorizationUrlFingerprint
import app.revanced.patches.reddit.customclients.baconreader.api.fingerprints.RequestTokenFingerprint
import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "http://baconreader.com/auth",
clientIdFingerprints = setOf(GetAuthorizationUrlFingerprint, RequestTokenFingerprint),
compatiblePackages = setOf(
@@ -3,13 +3,13 @@ package app.revanced.patches.reddit.customclients.boostforreddit.api
import app.revanced.patcher.data.BytecodeContext
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.boostforreddit.api.fingerprints.GetClientIdFingerprint
import app.revanced.patches.reddit.customclients.boostforreddit.api.fingerprints.LoginActivityOnCreateFingerprint
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "http://rubenmayayo.com",
clientIdFingerprints = setOf(GetClientIdFingerprint),
userAgentFingerprints = setOf(LoginActivityOnCreateFingerprint),
@@ -5,14 +5,14 @@ import app.revanced.patcher.extensions.or
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod.Companion.toMutable
import app.revanced.patcher.util.smali.toInstructions
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.infinityforreddit.api.fingerprints.APIUtilsFingerprint
import com.android.tools.smali.dexlib2.AccessFlags
import com.android.tools.smali.dexlib2.immutable.ImmutableMethod
import com.android.tools.smali.dexlib2.immutable.ImmutableMethodImplementation
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "infinity://localhost",
clientIdFingerprints = setOf(APIUtilsFingerprint),
compatiblePackages = setOf(CompatiblePackage("ml.docilealligator.infinityforreddit"))
@@ -3,13 +3,13 @@ package app.revanced.patches.reddit.customclients.joeyforreddit.api
import app.revanced.patcher.data.BytecodeContext
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.joeyforreddit.api.fingerprints.GetClientIdFingerprint
import app.revanced.patches.reddit.customclients.joeyforreddit.detection.piracy.DisablePiracyDetectionPatch
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "https://127.0.0.1:65023/authorize_callback",
clientIdFingerprints = setOf(GetClientIdFingerprint),
compatiblePackages = setOf(
@@ -6,7 +6,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patcher.fingerprint.MethodFingerprintResult.MethodFingerprintScanResult.StringsScanResult.StringMatch
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.redditisfun.api.fingerprints.BasicAuthorizationFingerprint
import app.revanced.patches.reddit.customclients.redditisfun.api.fingerprints.BuildAuthorizationStringFingerprint
import app.revanced.patches.reddit.customclients.redditisfun.api.fingerprints.GetUserAgentFingerprint
@@ -14,7 +14,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "redditisfun://auth",
clientIdFingerprints = setOf(BuildAuthorizationStringFingerprint, BasicAuthorizationFingerprint),
userAgentFingerprints = setOf(GetUserAgentFingerprint),
@@ -2,6 +2,6 @@ package app.revanced.patches.reddit.customclients.redditisfun.api.fingerprints
import app.revanced.patcher.fingerprint.MethodFingerprint
internal abstract class AbstractClientIdFingerprint(string: String) : MethodFingerprint(
internal abstract class BaseClientIdFingerprint(string: String) : MethodFingerprint(
strings = listOfNotNull("yyOCBp.RHJhDKd", string),
)
@@ -1,5 +1,5 @@
package app.revanced.patches.reddit.customclients.redditisfun.api.fingerprints
internal object BasicAuthorizationFingerprint : AbstractClientIdFingerprint(
internal object BasicAuthorizationFingerprint : BaseClientIdFingerprint(
string = "fJOxVwBUyo*=f:<OoejWs:AqmIJ", // Encrypted basic authorization string.
)
@@ -1,5 +1,5 @@
package app.revanced.patches.reddit.customclients.redditisfun.api.fingerprints
internal object BuildAuthorizationStringFingerprint : AbstractClientIdFingerprint(
internal object BuildAuthorizationStringFingerprint : BaseClientIdFingerprint(
string = "client_id"
)
@@ -5,7 +5,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
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
@@ -14,7 +14,7 @@ import com.android.tools.smali.dexlib2.iface.instruction.OneRegisterInstruction
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "dbrady://relay",
miscellaneousFingerprints = setOf(
SetRemoteConfigFingerprint,
@@ -2,6 +2,6 @@ package app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprint
import app.revanced.patcher.fingerprint.MethodFingerprint
internal abstract class AbstractClientIdFingerprint(string: String) : MethodFingerprint(
internal abstract class BaseClientIdFingerprint(string: String) : MethodFingerprint(
strings = listOfNotNull("dj-xCIZQYiLbEg", string),
)
@@ -1,3 +1,3 @@
package app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints
internal object GetLoggedInBearerTokenFingerprint : AbstractClientIdFingerprint("authorization_code")
internal object GetLoggedInBearerTokenFingerprint : BaseClientIdFingerprint("authorization_code")
@@ -1,3 +1,3 @@
package app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints
internal object GetLoggedOutBearerTokenFingerprint : AbstractClientIdFingerprint("https://oauth.reddit.com/grants/installed_client")
internal object GetLoggedOutBearerTokenFingerprint : BaseClientIdFingerprint("https://oauth.reddit.com/grants/installed_client")
@@ -1,3 +1,3 @@
package app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints
internal object GetRefreshTokenFingerprint : AbstractClientIdFingerprint("refresh_token")
internal object GetRefreshTokenFingerprint : BaseClientIdFingerprint("refresh_token")
@@ -1,3 +1,3 @@
package app.revanced.patches.reddit.customclients.relayforreddit.api.fingerprints
internal object LoginActivityClientIdFingerprint : AbstractClientIdFingerprint("&duration=permanent")
internal object LoginActivityClientIdFingerprint : BaseClientIdFingerprint("&duration=permanent")
@@ -3,12 +3,12 @@ package app.revanced.patches.reddit.customclients.slide.api
import app.revanced.patcher.data.BytecodeContext
import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.boostforreddit.api.fingerprints.GetClientIdFingerprint
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "http://www.ccrama.me",
clientIdFingerprints = setOf(GetClientIdFingerprint),
compatiblePackages = setOf(CompatiblePackage("me.ccrama.redditslide"))
@@ -5,7 +5,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.addInstructions
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
import app.revanced.patcher.extensions.InstructionExtensions.replaceInstruction
import app.revanced.patcher.fingerprint.MethodFingerprintResult
import app.revanced.patches.reddit.customclients.AbstractSpoofClientPatch
import app.revanced.patches.reddit.customclients.BaseSpoofClientPatch
import app.revanced.patches.reddit.customclients.syncforreddit.api.fingerprints.GetAuthorizationStringFingerprint
import app.revanced.patches.reddit.customclients.syncforreddit.api.fingerprints.GetBearerTokenFingerprint
import app.revanced.patches.reddit.customclients.syncforreddit.api.fingerprints.ImgurImageAPIFingerprint
@@ -19,7 +19,7 @@ import java.util.*
@Suppress("unused")
object SpoofClientPatch : AbstractSpoofClientPatch(
object SpoofClientPatch : BaseSpoofClientPatch(
redirectUri = "http://redditsync/auth",
miscellaneousFingerprints = setOf(ImgurImageAPIFingerprint),
clientIdFingerprints = setOf(GetAuthorizationStringFingerprint),