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
With the frequent participation of smartphone man...
In the prevention and fighting of forest fires, p...
Key Points Xiaomi is a well-known mobile phone an...
The cold wind is blowing People always yearn for ...
Honda Aircraft Company (HACI), Honda's aircra...
Definition of wing Part 1 Definition of Wing Supp...
Information flow advertising has developed rapidl...
Review expert: Wang Xuejiang, professor of pathop...
Expert of this article: Zhu Guangsi, science writ...
One writer once said: "Go deeper into the ar...
I look older but my voice is younger, so please d...
If one day people were to live on the uninhabited...
[[269084]] On June 26, Zhou Hongyi attended the &...
The advantages of Toutiao are that it has a large...
Leonardo da Vinci's "Mona Lisa" is ...