The Tool now supports resource config at app level. You can patch A app with X resources while patching B with Y resources. This can be done by providing supported download links for resources for the app. Another new major addition is to be able patch any supported app in the patches.json
, irrespective of the official apps present in the repository configs. Read more...
Are you tired of patching ReVanced apps on your mobile devices? Which version to patch and which apk to provide for patching? Is the waiting period long enough and still the patch doesn't work as it should? Device compatibility issues? Auto-updates?... All that can be accomplished with the help of this github repository (for patching & building) and this RVX-Builds project in Tasker (for interactive selection & automation).
Note: Neither the mentioned github repository nor the Tasker project are in anyway officially related to ReVanced Team. All this work falls under 3rd party so please don't ask for support from ReVanced Team regarding it.
- GitHub Account (Free)
- Tasker (Trial -> Paid)
- Join (Trial -> Paid; Optional)
I think that there might be possibility that some people would've already forked the parent repository of @nikhilbadyal or it's child repository (for example, of @Spacellary). So, here are listed files (may or may not replace originals) which you can copy to repository clone folder and push those changes. It'll make your repository eligible to be used in Automation and somewhat similar to mine. Proceed with patch methods.
There are actually two ways to patch apps - Manual & Automated. The Manual way simply requires the GitHub Repository only and you've to do all the work yourself like customizing the patches, downloading & installing built apks. The Automated way requires the GitHub Repository as well as the RVX-Builds project in Tasker. In the automated way, you can easily customize and configure many more properties using Tasker.
If you're doing it for the first time, I'd suggest you to go with Manual method to make yourself accustomed with the different patching terms in the repository and configure some necessary setups before automating.
Here's the manual way to patch apps.
- Create a GitHub account if you haven't.
- Fork this repository under any name.
- Read this page onwards. This is to customize the patching. After going through, you must have prepared an
.env
file. - Congrats, you're ready to patch these apps.
- Go to
Actions
tab. SelectBuild & Release
. Click onRun Workflow
button. - Wait for sometime while it patches and build all those apps mentioned in the
.env
file. - Once complete and successful, you'll get your patched apks in the
Releases
section. - Download & install those apks. Now, you've installed the patched apps!!
- Here are some extra things to configure.
It'll be better for yourself if you have some basic knowledge about Tasker like knowing about tasks, profiles, events, states, projects.
- Go to this page and
Generate new token > Classic
. EnterRVX-Builds
in Note, set any expiration period and select these scopes (sufficient) -repo, workflow, write:packages
. ClickGenerate Token
. Note the token -ghp_*
- Import RVX-Builds project on Tasker and setup the GitHub credentials. It'll popup itself for you to setup or you can run
RVX-Builds - Setup
Task inTasks
Tab insideRVX-Builds
Project. Projects are listed horizontally on bottom bar. - Once completed, you're ready to customize patches. Run
RVX-Builds - Manager
task to do so. It'll consist of menu items -- Apps: To modify app related properties. (Must configure)
- Downloads: To modify download & installation of app properties. (Must configure)
- Merge: To merge your customization (locally on Tasker) with the
.env
file in your GitHub Repo. Only shown if you've made customization changes in Apps or clicked it (i.e. always open Apps even when you don't need to change). - Releases: To build your patched apps and release them. Set the above options accordingly and make a stable or a pre-release.
- If you have access to Join paid version, enable
RVX-Builds - New Release [Join]
Profile inProfiles
Tab. Also enableRVX-Builds - Check For Updates
if you want it to handle cancelled or errored out downloads due to any reason. Also, you need to add JOIN API secrets. Here's how to do it. - If you don't have access to Join paid version, enable
RVX-Builds - Check For Updates
Profile inProfiles
Tab. DisableRVX-Builds - New Release [Join]
in this case. - After the successful release, the workflow would make an API call to Join (
RVX-Builds - New Release [Join]
) which would ultimately initialize an event and the downloader & installer task would run and work based upon your configuration ofDownloads
menu option inRVX-Builds - Manager
task. Another workaround is that this profileRVX-Builds - Check For Updates
would periodically (20 min; you can change) perform checks. It can also handle cancelled or errored out downloads. - Finally, after all the downloading or installation, there'll be a notification to let you know that it was successful. Note that, it requires ADB Wifi access to Tasker to let it install apps in the background.
- Patched apps have been installed and apks are at
/storage/emulated/0/Tasker/rvx-builds/downloads/REPO_RELEASE_TAG_NAME/*.apk
. Note that you shouldn't delete any of those apks otherwise you'd face infinite-looping of downloads because of6th - RVX-Builds - Check For Updates
. You may disable actionA11 - Handle Cancelled Downloads
in the linked task as a solution to it or select not to handle it inDownloads
menu options.
Note:
- Initialization of the tasks may take sometime at some-points due to heavy scripting process. Kindly don't worry about all that. Also, make sure that you've a decent internet connection speed.
- Read here for more details on the automation functionalities.
The patching is done using the CLI for all the builds. The /apks
folder is used as the base folder in which you can source your options.json
or whatever necessary files you need. Here's the list of patch apps and incompletely generated options.json
which you can look into.
Note: A possible error while installing the released patched apks can be due to signature mismatch of the apk and it's installed app. In this case, either provide the same the keystore file to sign apks in /apks
folder in GitHub repository and add GLOBAL_KEYSTORE_FILE_NAME=*.keystore
in .env
file OR simply delete (make backup if possible; one-time process) those already installed non-patched (same package) or patched apps.
The RVX-Builds - Project Updates
profile will let you know of any updates I push so, make sure it's enabled.
Taskernet - RVX-Builds
Changelogs
- Thanks to @ReVanced for ReVanced.
- Thanks to @inotia00 for ReVanced Extended.
- Thanks to @nikhilbadyal for his amazing work.
- Thanks to @Spacellary for his work in making the customized parent fork.
I'll try my best to help you regarding this project. Make sure you've read everything here, repository synced & tasker project up-to-date and outcome is same from multiple reproductions. Still if any issues persist, you're free to open discussions, issues & PRs. Kindly have some patience after creating them.