How to do Reverse Engineering of Android apk 【2023】

Reverse Engineering is the process of analyzing software to understand its source code, programming languages, and how it was created.

How to do reverse engineering of Android app

How to do reverse engineering

Reverse engineering of an Android app allows you to understand its inner workings and source code. With the help of open-source tools like JADX, reverse engineering an Android app has never been easier.

How to decompile Android app with JADX

1. Download the jadx tool and unzip

2. Download the apk file of the app that you want to decompile, and paste it into the same folder where you extracted the jadx.

jadx decompiler

3. install JDK and set the environmental variables if you haven’t already.

java environment variables

4. open CMD with administrator privileges and change the directory to jadx folder using the CD command

Example: cd D:\Softwares\Decompiler\jadx
jadx in cmd

5. enter the following command: jadx-gui –show-bad-code “enter-apk-filename-here

Example: jadx-gui --show-bad-code "com.netflix.mediaclient.apk"
reverse engineering of apk with jadx

6. later the jadx-gui window will appear with the reverse engineering of the android apk done.

jadx gui

7. now you will see the source code of an android app.

Copying source code, or modifying the app without the publisher’s permission is illegal, but you can use it to take inspiration and improve your coding skills.


The above steps were about reverse engineering of android apk, but if you don’t have a PC or your intention was just to peek into the project file, you can do the following, and it can be done on your smartphone as well.

Step 1 – Download the apk file of an android app

Step 2 – Open the apk using zArchive or 7zip.

zarchive

Step 3 – You will see the project file where you can easily peek inside the apk.

how to view inside apk

Reverse engineering android games

Android apps are mostly either made of Kotlin or Java, but for Android games, you need to know which game engine is used, and you can do that by navigating to the assets folder inside an apk, most game studios use the OBB file to store graphics, so checkout .obb if you don’t find the assets folder in an apk.

once you know which game engine is used, you can search for its decompiler online. Most of the android games are either made of unreal engine or Unity. Below are some of the best decompilers for Unreal Engine and Unity.

Unity decompiler

  • uTinyRipper
  • EU Explorer
  • Unity assets explorer
  • DevX-Unpacker Magic Tools

Unreal engine decompiler

  • uTinyRipper
  • UnrealPakTool
  • DXDecompiler

2 Comments

    • Hello there

      I’ve described tools to decompile Unity and Unreal Engine games in this article, and they are very much functional as advertised. But when the game is created using alternative cross-platform development tools, such Flutter or ReactNative, things become tricky.

Leave a Reply

Your email address will not be published. Required fields are marked *