Decompiling Android APKs
About a year ago I built APK Decompiler which makes it easy to decompile Android APKs. Under the hood, it bundles two utilities together: APKTool and Dex2Jar. It doesn’t yet convert the .class files into .java files, but you can easily grab a Java decompiler (I’d recommend JD-Gui) to do the work for you.
Once you have APK Decompiler downloaded you will need to connect an Android device to your computer and type “decompile” followed by a keyword from the command line. For example, “decompile blocks”. The keyword can be any word or group of letters that match the package of the application. After you press “enter”, APK Decompiler will do the following:
- Pull the first matching APK file from the plugged in device
- Extract the Java class files
- De-encrypt the application’s resource files
- Zip the output into a single zip file.
While it’s running you’ll see all the output from APKTool or Dex2Jar. This whole process should not take long.
APK Decompiler isn’t perfect, but it should at least get you the AndroidManifest.xml, some resources, and the majority of the Java .class files. Usually, this is enough to figure out how applications function.
If you try out APK Decompiler, let me know how it works for you! Please share this article if you liked it, or let me know what I can do to improve!