Deodexing Android is hard. Writing a program that can deodex Android for you is even harder.
Whenever Google come up with a new version of the OS, they change how the odexed rom is put together. Which means that a new method to deodex it is required. Working out what that method is and how to automate the process can be really time-consuming. So what happens is many great deodexing tools fall into disuse because the developer isn't able to keep it updated.
That's where TOAD comes in. The idea behind The Open-source Android Deodexer is that it uses short, easy to read, batch files to process the odexed files. These batch files, or 'Methods' as I'm calling them, can be easily added to for new versions of Android.
Or they can be modified if they need to be. I'm not the best coder in the world, and I'm hardly an expert on deodexing. I don't even have a device on which I can test these Methods on right now. So, if somebody looks at the code and thinks it can be improved, those improvements can be made.
In fact, I'm not just encouraging people to make contributions if they can..I'm practically begging for them to. With the help of the community, this tool could theoretically last for years..
How To Deodex Your Files
To use TOAD, you first need to download the latest version from the link above. This is self-extracting EXE file which you can put anywhere. I suggest putting it in C: though just to minimise any issues.
When you run the EXE, you'll get a folder that looks like this:
The "Method_Files" folder contains all the batch files TOAD uses for the actual deodexing. The "Tool_Files" folder contains various files TOAD needs to run properly. And the "Your_Files" folder is empty - this is where your files need to go.
So copy into that folder your "build.prop" and "framework" folder. TOAD won't be able to do anything without those two things.
If you'd like to deodex your "app", "priv-app", "vendor/app", "vendor/priv-app", or "vendor/framework" folders, copy those in as well.
Once you've done that, run the tool.
TOAD will ask you if you want to deodex the framework folder or not. That's up to you but please bear in mind that, for any version of Android past KitKat (4.4.4. - API 19), you won't be able to deodex anything without an odexed framework folder.
The tool will now read the build.prop file and find out which version of Android you're using. This is done by finding out the API used to make the rom. Every version of Android has its own, unique API and there's a page that lists them all here: https://source.android.com/setup/start/build-numbers.
Every Android version that TOAD can handle will have its own individual Method file. This is a batch file in the "Method_Files" folder. If there's one that matches your files, TOAD will ask you if you want it to try to deodex everything.
Click on "YES" and sit back. TOAD will take care of everything else for you.
TOAD will go through the various files and try to deodex them, using the method outlined in the relevant batch file. If a file can't be deodexed, the tool will make a note of the error and move onto the next one.
As long as it's able to deodex at least one file, TOAD will make a ZIP file for you when it's finished.
Flash this in recovery and your rom should now be deodexed.
However, because every rom is different and developers like to do their own things, there is a chance that this ZIP won't work. So make sure you do a full backup before you try it. The ZIP shouldn't brick your phone but I can't guarantee you won't end up in a bootloop.
If it works, let me know. If it doesn't work, let me know as well so I can try and work out a solution. The more we know, the better TOAD will be!
TOAD - The Open-Source Android Deodexer, Tool/Utility for all devices (see above for details)
Last Updated 2019-09-21