fix build and crashes

This commit is contained in:
drobotk 2026-03-13 12:03:29 +01:00
parent 15096257ca
commit 7fe7ce437c
No known key found for this signature in database
GPG key ID: D53DB3B14C514056
10 changed files with 13 additions and 14 deletions

View file

@ -6,8 +6,8 @@ import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patches.music.misc.extension.sharedExtensionPatch
import app.revanced.patches.music.misc.gms.Constants.MUSIC_MAIN_ACTIVITY_NAME
import app.revanced.patches.music.misc.gms.Constants.MUSIC_PACKAGE_NAME
import app.revanced.patches.music.misc.gms.musicActivityOnCreateMethod
import app.revanced.patches.music.misc.settings.PreferenceScreen
import app.revanced.patches.music.shared.mainActivityOnCreateMethod
import app.revanced.patches.shared.layout.branding.EXTENSION_CLASS_DESCRIPTOR
import app.revanced.patches.shared.layout.branding.baseCustomBrandingPatch
import app.revanced.patches.shared.misc.mapping.ResourceType
@ -61,7 +61,7 @@ val customBrandingPatch = baseCustomBrandingPatch(
originalAppPackageName = MUSIC_PACKAGE_NAME,
isYouTubeMusic = true,
numberOfPresetAppNames = 5,
getMainActivityOnCreate = { musicActivityOnCreateMethod },
getMainActivityOnCreate = { mainActivityOnCreateMethod },
mainActivityName = MUSIC_MAIN_ACTIVITY_NAME,
activityAliasNameWithIntents = MUSIC_MAIN_ACTIVITY_NAME,
preferenceScreen = PreferenceScreen.GENERAL,

View file

@ -3,7 +3,7 @@ package app.revanced.patches.music.misc.spoof
import app.revanced.patches.all.misc.resources.addResources
import app.revanced.patches.all.misc.resources.addResourcesPatch
import app.revanced.patches.music.misc.extension.sharedExtensionPatch
import app.revanced.patches.music.misc.gms.musicActivityOnCreateMethod
import app.revanced.patches.music.shared.mainActivityOnCreateMethod
import app.revanced.patches.music.misc.settings.PreferenceScreen
import app.revanced.patches.music.misc.settings.settingsPatch
import app.revanced.patches.music.playservice.*
@ -14,7 +14,7 @@ import app.revanced.patches.shared.misc.spoof.spoofVideoStreamsPatch
val spoofVideoStreamsPatch = spoofVideoStreamsPatch(
extensionClassDescriptor = "Lapp/revanced/extension/music/patches/spoof/SpoofVideoStreamsPatch;",
getMainActivityOnCreateMethod = { musicActivityOnCreateMethod },
getMainActivityOnCreateMethod = { mainActivityOnCreateMethod },
fixMediaFetchHotConfig = { is_7_16_or_greater },
fixMediaFetchHotConfigAlternative = { is_8_11_or_greater && !is_8_15_or_greater },
fixParsePlaybackResponseFeatureFlag = { is_7_33_or_greater },

View file

@ -85,7 +85,7 @@ internal val BytecodePatchContext.protobufBufferEncodeMethod by gettingFirstMeth
Opcode.IGET_OBJECT(),
field { definingClass == methodDefiningClass && type == "Lcom/google/android/libraries/elements/adl/UpbMessage;" },
),
method { definingClass == "Lcom/google/android/libraries/elements/adl/UpbMessage;" && name == "jniEecode" },
method { definingClass == "Lcom/google/android/libraries/elements/adl/UpbMessage;" && name == "jniEncode" },
)
}

View file

@ -5,11 +5,9 @@ import app.revanced.patcher.extensions.getInstruction
import app.revanced.patcher.extensions.wideLiteral
import app.revanced.patcher.patch.bytecodePatch
import app.revanced.patcher.util.Document
import app.revanced.patches.all.misc.resources.addResources
import app.revanced.patches.shared.layout.branding.addBrandLicensePatch
import app.revanced.patches.shared.layout.branding.header.CUSTOM_HEADER_RESOURCE_NAME
import app.revanced.patches.shared.layout.branding.header.changeHeaderPatch
import app.revanced.patches.shared.layout.branding.header.variants
import app.revanced.patches.shared.misc.mapping.ResourceType
import app.revanced.patches.shared.misc.mapping.resourceMappingPatch
import app.revanced.patches.youtube.misc.settings.PreferenceScreen

View file

@ -104,6 +104,8 @@ val overrideOpenInYouTubeMusicButtonPatch = bytecodePatch(
else -> null
}
}) { method, (index, methodDescriptor) ->
if (method.definingClass == EXTENSION_CLASS_DESCRIPTOR) return@forEachInstructionAsSequence
val invokeString = when (val instruction = method.getInstruction(index)) {
is RegisterRangeInstruction ->
"invoke-static/range { v${instruction.startRegister} .. v${instruction.startRegister + instruction.registerCount - 1} }"

View file

@ -46,7 +46,7 @@ internal val BytecodePatchContext.removeOnLayoutChangeListenerMethodMatch by com
),
allOf(Opcode.INVOKE_VIRTUAL(), method {
name == "removeOnLayoutChangeListener" &&
returnType == "Z" &&
returnType == "V" &&
definingClass == "Lcom/google/android/apps/youtube/app/common/" +
"player/overlay/YouTubePlayerOverlaysLayout;"
}),

View file

@ -147,7 +147,6 @@ val hideLayoutComponentsPatch = hideLayoutComponentsPatch(
"revanced_comments_screen",
preferences = setOf(
SwitchPreference("revanced_hide_comments_ai_chat_summary"),
SwitchPreference("revanced_hide_comments_ai_summary"),
SwitchPreference("revanced_hide_comments_channel_guidelines"),
SwitchPreference("revanced_hide_comments_by_members_header"),
SwitchPreference("revanced_hide_comments_section"),

View file

@ -37,7 +37,7 @@ import com.android.tools.smali.dexlib2.immutable.ImmutableMethodParameter
private const val EXTENSION_CLASS_DESCRIPTOR =
"Lapp/revanced/extension/youtube/patches/ShortsAutoplayPatch;"
@Suppress("ObjectPropertyName")
@Suppress("unused")
val shortsAutoplayPatch = bytecodePatch(
name = "Shorts autoplay",
description = "Adds options to automatically play the next Short.",
@ -110,10 +110,10 @@ val shortsAutoplayPatch = bytecodePatch(
}
} else {
method {
definingClass == "reelEnumClass" &&
definingClass == reelEnumClass &&
returnType == reelEnumClass &&
parameterTypes.size == 1 &&
parameterTypes[0].startsWith("L")
parameterTypes[0] == "I"
}
}

View file

@ -1108,7 +1108,7 @@ To show the Audio track menu, change \'Spoof video streams\' to \'Android No SDK
</patch>
<patch id="layout.hide.endscreensuggestedvideo.hideEndScreenSuggestedVideoPatch">
<string name="revanced_end_screen_suggested_video_title">Hide end screen suggested video</string>
<string name="revanced_end_screen_suggested_video_summary_on">"End screen suggested video is hidden</string>
<string name="revanced_end_screen_suggested_video_summary_on">End screen suggested video is hidden</string>
<string name="revanced_end_screen_suggested_video_summary_off">End screen suggested video is shown</string>
</patch>
<patch id="layout.hide.relatedvideooverlay.hideRelatedVideoOverlayPatch">