AndroidPremium Content

Introduction – Android Application Reversing Using Android phone – Part 1

Preparing for the day quantum computing cracks public-key cryptography: What to do now

Reverse Engineering is the process by which a man-made object is deconstructed to reveal its designs, architecture or to extract knowledge from the object.

If your are viewing this article this means you want to learn about android application reversing. There are plenty of tutorials online on android application reversing but the thing that makes this article unique is that we are teaching android application reversing using android phone. In this article we will be talking about Introduction and tools used in this tutorial. In the next article we will discuss more.


What is Apk file?

Android application package file (APK) is the file format used to distribute and install application software and middleware onto Google’s Androidboperating system. APK files are ZIP file formatted packages based on the JAR file format with .apk file extensions.

What are the Contents you find inside Apk?

An APK file is an archive that usually contains the following directories:

  • META-INF directory:
    MANIFEST.MF : The Manifest File
    CERT.RSA : The certificate of the application
    CERT.SF : The list of resources and SHA-1 digest

Corresponding lines in the MANIFEST.MF file; for example:

Signature-Version: 1.0
Created-By: 1.0 (Android)
SHA1-Digest-Manifest: wxqnEAI0UA5nO5QJ8CGMwjkGGWE=
Name: res/layout/exchange_component_back_bottom.xml
SHA1-Digest: eACjMjESj7Zkf0cBFTZ0nqWrt7w=
Name: res/drawable-hdpi/icon.png
SHA1-Digest: DGEqylP8W0n0iV/ZzBx3MW0WGCA=

  • lib : the directory containing the compiled code that is specific to a software layer of a processor, the directory is split into
    more directories within it:
    armeabi : compiled code for all ARM based processors only
    armeabi-v7a : compiled code for all ARMv7 and above based processors only
    x86 : compiled code for x86 processors only
    mips : compiled code for MIPS processors only
  • classes.dex : The classes compiled in the dex file format
    understandable by the Dalvik virtual machine
  • res : The directory containing resources not compiled into resources.arsc (see below).
  • assets : a directory containing applications assets, which can be retrieved by AssetManager .
  • AndroidManifest.xml : An additional Android manifest file, describing the name, version, access rights, referenced library files for the application. This file may be in Android binary XML that can be converted into human-readable plain text XML with tools such as AXMLPrinter2, android-apktool, or Androguard
  • resources.arsc : A file containing precompiled resources, such as binary XML for example.


  • Apktool Mobile
  • Apk Editor
  • Axel
  • 920 Text Editor
  • aGrep

You can download these tools from Google. Most of them are available in Google Play Store too.

So this conclude the part 1 of our tutorial. If you want be uptodate with this tutorial dont forget to allow notification from this website and Like our facebook page too.

In our Next article we will discuss about how to remove or change advertisement from android application.



the authorABHIYAN
Abhiyan Chhetri is a cybersecurity journalist with a passion for covering latest happenings in cyber security and tech world. In addition to being the founder of this website, Abhiyan is also into gaming, reading and investigative journalism.


Leave a Reply