Extracting the Source Code of Android Applications

2 min readJul 28, 2020


In this short tutorial, I will show you how to extract the code source of an android application. Starting with the name of the application we will be able to generate the Java source code in 4 steps.

This tutorial assumes that the used operating system is based on Linux, in my case Ubuntu 16.04 but should work on most Unix-based systems.

Disclaimer: the following article is provided for learning and entertainment purpose only, with no guarantee that it will work and does not give the rights to apply the mentioned techniques on third-party applications.

Step-1: Download the APK File

The first step is to download the application apk file. For this, we can use tools that we find online. One of them is https://apkcombo.com/fr-fr/apk-downloader/ . Otherwise feel free to ask Google: “download apk”.

Step-2: Decompress the APK File

To decompress the APK just rename with a “zip” extension and then decompress it.

$ mv application.apk application.zip
$ unzip application.zip

Step-3: Extract Class Files

Among the extracted files, you will find a “classes.dex” file. This the file that contains the binary code in class file. To decompress it, use the “dextojar” command available at: https://github.com/pxb1988/dex2jar

$ d2j-dex2jar.sh classes.dex

This will generate a jar file containing the class file.

Step-4: Decompile Class Files

To decompile the class files we can use the jd-cli java decompiler available at https://github.com/kwart/jd-cmd

$ java -jar path-to/jd-cli.jar application.jar 
$ jar xvf application.src.jar


Here you go! You should now have access to the java source code…

Feel free to comment, ask questions, and/or clap.


To compile dex2jar use the following steps:

$ ./gradlew 
$ cd dex-tools/build/distributions
$ unzip dex-tools-2.1-SNAPSHOT.zip

Then use the d2j-jar2dex.sh found in the unzipped folder.

Reference: https://github.com/pxb1988/dex2jar/issues/170




Tech enthusiast with an interest in software and a love for cryptocurrencies. Check out my crypto donation page at: https://rb.gy/mqd43h