How to decompile apk from Play Store

This is how you can decompile an application you have installed on your phone.

My phone is rooted, uses RootBox 3.5 and has BusyBox installed. You may need to have that too if you want to follow my steps completly.

Let's start:

1. Install application from market

2. Download apk to computer

First you need to locate the apk on the phone.

Connect to the phone:

 adb shell

Find the apk in the folder the apk are downloaded to. It is ussualy in '/data/app/' or '/system/app/'. The apk is called as the id from the Play Store, for example 'com.something.someapp.apk'. You can see this in the url from Play.

Next you need to pull it to the computer. Once you have located the apk and know it's name exit adb.

On your PC execute:

 adb pull /data/app/com.something.someapp.apk 

3. Transform apk to jar

I use dex2jar
dex2jar-0.0.9.11/d2j-dex2jar.sh com.something.someapp.apk

4. See the code inside the jar

I use Java Decompiler

Just open the program and open the jar.

5. Get the resources

You can just unzip the apk. This will allow you to get the images but not the xml and layouts.

Instead you could use android-apktool. After you download and install it, just run:
apktool d com.something.someapp.apk

I know it's not very complicated but I needed a place to put this so I can remember the details.

Enjoy!

Comments

Popular posts from this blog

Ways to map and query many-to-many in GORM

Update: Intellij 12 + Android Annotations 2.7 + maven