revanced-patcher
revanced-patcher copied to clipboard
💉 ReVanced Patcher used to patch Android applications
# 🐞 Issue Add a contributing.md in the repo so it's easier for new developers to know contributing guidelines. # ❗ Solution Add a contributing.md. # ❓ Motivation Sets guidelines...
Nice project! I know it's new but it would be beneficial to add some information, a few lines even, about this repo in the `README.md`. * What's this repo? *...
A proposal was made by @Lucaskyy to fork dexlib2 and make all fields mutable by default. The gain of that would be, that we do not have to create a...
## Problem Currently, the patcher iterates twice through all instructions if a signature contains both opcodes and strings. ## Solution The opcodes should be iterated once if both opcodes and...
# Description Currently, `MethodResolver` iterates through all classes to find the methods matching the required signatures. Due to recent api changes, the `resolve` method is being called multiple times. Before...
# Issue Currently the [CLI uninstalls application](https://github.com/revanced/revanced-cli/pull/84) by getting the package name from input apk, to do so it relies on decompiling the full apk which takes longer time than...
Patch bundles should have metadata such as a name, origin, or licenses. This metadata can be useful to categorize patches into a bundle in the context of the patcher.
Current idea is that you can do: ```patch this.addInstruction( index, - "invoke-static { v$register }, Lapp/revanced/integrations/patches/HideHomeAdsPatch;->HideHomeAds(Landroid/view/View;)V".toInstruction() + "invoke-static { v$register }, ${TypeDescriptor.of(HideHomeAdsPatch::HideHomeAds)}".toInstruction() ) ``` A side effect of this is...
The `MethodSignature` uses a list for the parameter field. Instead, a string should be used. This will require migrating over existing signatures.
The constructor of `SignatureResolverResult` is public, instead, it should be internal. Some patches currently could make use of this API, thus a dedicated API should be created when making the...