Often, for the purpose of learning or security testing, we need to decompile the installation files of the Android app to view the source code. Let's build a decompilation environment under Mac OS. Installation Environment Create a basic folder mkdir -p ~/study/apkkiller/soft/bin mkdir -p ~/study/apkkiller/soft/src mkdir -p ~/study/apkkiller/output/ The installation file of andorid app is apk package. To decompile apk file, you need to download apktool and dex2jar, both of which are hosted on google code: http://code.google.com/p/android-apktool/ http://code.google.com/p/dex2jar/ Find the download address from the above two pages. Here we find the download address of apktool1.5.2 and dex2jar-0.0.9.15: cd ~/study/apkkiller/soft/src wget http://android-apktool.googlecode.com/files/apktool1.5.2.tar.bz2 wget http://dex2jar.googlecode.com/files/dex2jar-0.0.9.15.zip The decompressed files are stored in the following directory: ~/study/apkkiller/soft/src/apktool1.5.2 ~/study/apkkiller/soft/src/dex2jar-0.0.9.15 For ease of use, create two soft links: ln -s ~/study/apkkiller/soft/src/apktool1.5.2/apktool.jar ~/study/apkkiller/soft/bin/apktool ln -s ~/study/apkkiller/soft/src/dex2jar-0.0.9.15/dex2jar.sh ~/study/apkkiller/soft/bin/dex2jar Test decompilation environment Let's start decompiling our test apk file to see if the environment can run normally
To view the decompiled files, you can download the jd-gui tool and open the ./output/test/source/classes_dex2jar.jar file generated above. This tool can export all the source code packages. Download jd-gui from the following address: http://jd.benow.ca/ http://jd.benow.ca/jd-gui/downloads/jd-gui-0.3.5.osx.i686.dmg The apk resource files are stored in the folder ./output/test/source/test that we unzipped above. There are many xml files in it, but they are encrypted and cannot be viewed directly. At this time, you need to use the apktool tool: java -jar ~/study/apkkiller/soft/bin/apktool d ./test.apk ./output/test/source/test_resource Merge the exported source code and resource files to get the result we want. |
<<: Learn more about iOS 9 every day 5: Xcode Code Coverage Tools
On May 27, at the 2018 China International Big Da...
ASO , which is the abbreviation of App Store Opti...
So far, more than 60 women have been in space. Wh...
Is drinking realgar wine like drinking arsenic? C...
In the end, Trump won the US presidential electio...
Early stage of operation : quickly familiarize yo...
The changes of the times and channels will bring ...
As the annual flagship new product, Samsung has h...
This article should have been written in the firs...
After an electronic beep, two lines of words appe...
For quite a long time, domestic automobile manufa...
According to statistics, the current number of sm...
In the green kingdom of the earth, trees are like...
[Smart Farmers][Food Talk] A picture to understan...
On June 8, BYD issued an announcement regarding &...