revanced-patches-template
revanced-patches-template copied to clipboard
feat: download patch support for vanced.
TODO
- [ ] Compatibility with
com.vanced.android.youtubeforsettingspatch dependency
Can you restrain the Vanced package to the latest version or the version you tested the patch on? And do the settings properly work?
Yes sure and no settings don't work in vanced.
Then the patch is not fully compatible with Vanced.
What is the point of the downloads patch for Vanced if there are no settings? Users would be limited to the NewPipe downloader (default). Is that acceptable? If so, it doesn't matter if it doesn't have settings.
To make this patch properly compatible with com.vanced.android.youtube, the patches dependencies should succeed too, such as the settings patch. If this can not be guaranteed, this PR should be closed and re-opened once this issue is solved.
If @Aunali321 wants to continue on this PR, it should be converted to a draft, not closed. @oSumAtrIX Only if they don't want to continue should we close the PR :)
The settings patch needs to work on Vanced for this patch to be fully compatible. If it doesn't, support for it needs to be added. When that's done, this PR can be merged.
A TODO section in the PR description has been added for that.
I tried to patch it, but i got that error:
SEVERE: downloads failed:
app.revanced.patcher.patch.PatchResultError: 'downloads' depends on 'downloads' but the following error was raised: 'downloads-resource-patch' depends on 'downloads-resource-patch' but the following error was raised: java.lang.NullPointerException
at app.revanced.patcher.Patcher.applyPatch(Patcher.kt:259)
at app.revanced.patcher.Patcher.access$applyPatch(Patcher.kt:46)
at app.revanced.patcher.Patcher$applyPatches$1.invokeSuspend(Patcher.kt:383)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:127)
at app.revanced.utils.patcher.PatcherKt.applyPatchesVerbose(Patcher.kt:92)
at app.revanced.cli.patcher.Patcher.start$revanced_cli(Patcher.kt:24)
at app.revanced.cli.command.MainCommand.run(MainCommand.kt:157)
at picocli.CommandLine.executeUserObject(CommandLine.java:1939)
at picocli.CommandLine.access$1300(CommandLine.java:145)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
at picocli.CommandLine.execute(CommandLine.java:2078)
at app.revanced.cli.main.MainKt.main(Main.kt:7)
Exception in thread "main" java.lang.NoSuchMethodError: 'app.revanced.patcher.fingerprint.method.impl.PatternScanResult app.revanced.patcher.fingerprint.method.impl.MethodFingerprintResult.getPatternScanResult()'
at app.revanced.patches.youtube.misc.clientspoof.patch.ClientSpoofPatch.execute(ClientSpoofPatch.kt:30)
at app.revanced.patches.youtube.misc.clientspoof.patch.ClientSpoofPatch.execute(ClientSpoofPatch.kt:18)
at app.revanced.patcher.Patcher.applyPatch(Patcher.kt:285)
at app.revanced.patcher.Patcher.access$applyPatch(Patcher.kt:46)
at app.revanced.patcher.Patcher$applyPatches$1.invokeSuspend(Patcher.kt:383)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:127)
at app.revanced.utils.patcher.PatcherKt.applyPatchesVerbose(Patcher.kt:92)
at app.revanced.cli.patcher.Patcher.start$revanced_cli(Patcher.kt:24)
at app.revanced.cli.command.MainCommand.run(MainCommand.kt:157)
at picocli.CommandLine.executeUserObject(CommandLine.java:1939)
at picocli.CommandLine.access$1300(CommandLine.java:145)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2358)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2352)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2314)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2179)
at picocli.CommandLine$RunLast.execute(CommandLine.java:2316)
at picocli.CommandLine.execute(CommandLine.java:2078)
at app.revanced.cli.main.MainKt.main(Main.kt:7)