mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-06-12 05:07:41 +02:00
feat: generate an exception when an invalid value is entered
This commit is contained in:
@ -68,7 +68,7 @@ class CustomBrandingNamePatch : ResourcePatch {
|
||||
}
|
||||
}
|
||||
|
||||
} ?: return PatchResultError("No app name provided")
|
||||
} ?: return PatchResultError("Invalid app name.")
|
||||
|
||||
return PatchResultSuccess()
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.OptionsContainer
|
||||
import app.revanced.patcher.patch.PatchOption
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
@ -28,17 +29,11 @@ import app.revanced.patches.music.utils.fix.decoding.patch.DecodingPatch
|
||||
class CustomBrandingNamePatch : ResourcePatch {
|
||||
override fun execute(context: ResourceContext): PatchResult {
|
||||
|
||||
val longName =
|
||||
if (MusicLongName != null)
|
||||
MusicLongName
|
||||
else
|
||||
"ReVanced Extended Music"
|
||||
val longName = MusicLongName
|
||||
?: throw PatchResultError("Invalid app name.")
|
||||
|
||||
val shortName =
|
||||
if (MusicShortName != null)
|
||||
MusicShortName
|
||||
else
|
||||
"RVX Music"
|
||||
val shortName = MusicShortName
|
||||
?: throw PatchResultError("Invalid app name.")
|
||||
|
||||
context.xmlEditor["res/values/strings.xml"].use { editor ->
|
||||
val document = editor.file
|
||||
|
@ -6,6 +6,7 @@ import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patcher.patch.annotations.Patch
|
||||
@ -55,8 +56,14 @@ class MicroGPatch : BytecodePatch(
|
||||
// - "com.google.android.gms.phenotype.UPDATE",
|
||||
// - "com.google.android.gms.phenotype",
|
||||
override fun execute(context: BytecodeContext): PatchResult {
|
||||
val packageNameYouTube = PackageNamePatch.YouTubePackageName!!
|
||||
val packageNameMusic = PackageNamePatch.MusicPackageName!!
|
||||
val youtubePackageName = PackageNamePatch.YouTubePackageName
|
||||
?: throw PatchResultError("Invalid package name.")
|
||||
|
||||
val musicPackageName = PackageNamePatch.MusicPackageName
|
||||
?: throw PatchResultError("Invalid package name.")
|
||||
|
||||
if (youtubePackageName == YOUTUBE_PACKAGE_NAME || musicPackageName == MUSIC_PACKAGE_NAME)
|
||||
throw PatchResultError("Original package name is not available as package name for MicroG build.")
|
||||
|
||||
// apply common microG patch
|
||||
MicroGBytecodeHelper.patchBytecode(
|
||||
@ -64,13 +71,13 @@ class MicroGPatch : BytecodePatch(
|
||||
arrayOf(
|
||||
MicroGBytecodeHelper.packageNameTransform(
|
||||
YOUTUBE_PACKAGE_NAME,
|
||||
packageNameYouTube
|
||||
youtubePackageName
|
||||
)
|
||||
),
|
||||
MicroGBytecodeHelper.PrimeMethodTransformationData(
|
||||
PrimeFingerprint,
|
||||
MUSIC_PACKAGE_NAME,
|
||||
packageNameMusic
|
||||
musicPackageName
|
||||
),
|
||||
listOf(
|
||||
ServiceCheckFingerprint,
|
||||
|
@ -2,6 +2,7 @@ package app.revanced.patches.music.utils.microg.resource.patch
|
||||
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
@ -16,12 +17,16 @@ import app.revanced.util.resources.MusicResourceHelper.setMicroG
|
||||
@DependsOn([PackageNamePatch::class])
|
||||
class MicroGResourcePatch : ResourcePatch {
|
||||
override fun execute(context: ResourceContext): PatchResult {
|
||||
val packageNameMusic = PackageNamePatch.MusicPackageName!!
|
||||
val packageName = PackageNamePatch.MusicPackageName
|
||||
?: throw PatchResultError("Invalid package name.")
|
||||
|
||||
if (packageName == MUSIC_PACKAGE_NAME)
|
||||
throw PatchResultError("Original package name is not available as package name for MicroG build.")
|
||||
|
||||
// update manifest
|
||||
context.patchManifest(
|
||||
MUSIC_PACKAGE_NAME,
|
||||
packageNameMusic
|
||||
packageName
|
||||
)
|
||||
|
||||
// add metadata to the manifest
|
||||
@ -30,7 +35,7 @@ class MicroGResourcePatch : ResourcePatch {
|
||||
SPOOFED_PACKAGE_SIGNATURE
|
||||
)
|
||||
|
||||
context.setMicroG(packageNameMusic)
|
||||
context.setMicroG(packageName)
|
||||
|
||||
return PatchResultSuccess()
|
||||
}
|
||||
|
@ -7,6 +7,7 @@ import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.OptionsContainer
|
||||
import app.revanced.patcher.patch.PatchOption
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
@ -29,11 +30,8 @@ import app.revanced.util.resources.ResourceHelper.updatePatchStatusLabel
|
||||
class CustomBrandingNamePatch : ResourcePatch {
|
||||
override fun execute(context: ResourceContext): PatchResult {
|
||||
|
||||
val appName =
|
||||
if (YouTubeAppName != null)
|
||||
YouTubeAppName
|
||||
else
|
||||
"ReVanced Extended"
|
||||
val appName = YouTubeAppName
|
||||
?: throw PatchResultError("Invalid app name.")
|
||||
|
||||
context.xmlEditor["res/values/strings.xml"].use { editor ->
|
||||
val document = editor.file
|
||||
|
@ -7,6 +7,7 @@ import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.OptionsContainer
|
||||
import app.revanced.patcher.patch.PatchOption
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
@ -41,6 +42,9 @@ class ThemePatch : ResourcePatch {
|
||||
}
|
||||
|
||||
private fun ResourceContext.setTheme(valuesPath: String) {
|
||||
val darkThemeColor = darkThemeBackgroundColor
|
||||
?: throw PatchResultError("Invalid color.")
|
||||
|
||||
this.xmlEditor["res/$valuesPath/colors.xml"].use { editor ->
|
||||
val resourcesNode = editor.file.getElementsByTagName("resources").item(0) as Element
|
||||
|
||||
@ -49,7 +53,7 @@ class ThemePatch : ResourcePatch {
|
||||
|
||||
node.textContent = when (node.getAttribute("name")) {
|
||||
"yt_black0", "yt_black1", "yt_black1_opacity95", "yt_black1_opacity98", "yt_black2", "yt_black3",
|
||||
"yt_black4", "yt_status_bar_background_dark", "material_grey_850" -> darkThemeBackgroundColor
|
||||
"yt_black4", "yt_status_bar_background_dark", "material_grey_850" -> darkThemeColor
|
||||
|
||||
else -> continue
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ package app.revanced.patches.youtube.utils.microg.bytecode.patch
|
||||
import app.revanced.patcher.data.BytecodeContext
|
||||
import app.revanced.patcher.patch.BytecodePatch
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
import app.revanced.patches.shared.patch.packagename.PackageNamePatch
|
||||
@ -37,7 +38,11 @@ class MicroGBytecodePatch : BytecodePatch(
|
||||
) {
|
||||
override fun execute(context: BytecodeContext): PatchResult {
|
||||
|
||||
val packageName = PackageNamePatch.YouTubePackageName!!
|
||||
val packageName = PackageNamePatch.YouTubePackageName
|
||||
?: throw PatchResultError("Invalid package name.")
|
||||
|
||||
if (packageName == PACKAGE_NAME)
|
||||
throw PatchResultError("Original package name is not available as package name for MicroG build.")
|
||||
|
||||
// apply common microG patch
|
||||
MicroGBytecodeHelper.patchBytecode(
|
||||
|
@ -5,6 +5,7 @@ import app.revanced.patcher.annotation.Name
|
||||
import app.revanced.patcher.annotation.Version
|
||||
import app.revanced.patcher.data.ResourceContext
|
||||
import app.revanced.patcher.patch.PatchResult
|
||||
import app.revanced.patcher.patch.PatchResultError
|
||||
import app.revanced.patcher.patch.PatchResultSuccess
|
||||
import app.revanced.patcher.patch.ResourcePatch
|
||||
import app.revanced.patcher.patch.annotations.DependsOn
|
||||
@ -36,7 +37,11 @@ import app.revanced.util.resources.ResourceHelper.setMicroG
|
||||
class MicroGPatch : ResourcePatch {
|
||||
override fun execute(context: ResourceContext): PatchResult {
|
||||
|
||||
val packageName = PackageNamePatch.YouTubePackageName!!
|
||||
val packageName = PackageNamePatch.YouTubePackageName
|
||||
?: throw PatchResultError("Invalid package name.")
|
||||
|
||||
if (packageName == PACKAGE_NAME)
|
||||
throw PatchResultError("Original package name is not available as package name for MicroG build.")
|
||||
|
||||
/**
|
||||
* Add settings
|
||||
|
Reference in New Issue
Block a user