怎么在ubuntu環(huán)境中反編譯android apk?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
創(chuàng)新互聯(lián)專注于平城網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供平城營銷型網(wǎng)站建設(shè),平城網(wǎng)站制作、平城網(wǎng)頁設(shè)計(jì)、平城網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造平城網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供平城網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
使用ApkTool反編譯Apk
下載 apktool1.4.3.tar.bz2 、apktool-install-linux-r04-brut1.tar.bz2 兩個包,并解壓到統(tǒng)一個目錄中,解壓后得到aapt apktool apktool.jar 。解壓安裝完成后輸入以下命令解壓:
$ ./apktool d apk/xgd_android_test.apk
I: Baksmaling...
I: Loading resource table...
I: Loaded.
I: Loading resource table from file: /home/yangyupeng/apktool/framework/1.apk
I: Loaded.
I: Decoding file-resources...
W: Cant find 9patch chunk in file: "drawable-mdpi/navbar.9.png". Renaming it to *.png.
I: Decoding values*/* XMLs...
I: Done.
I: Copying assets and libs...
顯示如上,注意apktool的參數(shù),d表示decode,b表示build,此時在當(dāng)前目錄生成apk的解壓文件:
1/xgd_android_test$ ls AndroidManifest.xml apktool.yml lib res smali
這里有apk的源碼(smali)、圖片、xml配置和語言配置等等信息。
使用dex2jar和JD-JUI這兩個工具查看java源碼
下載dex2jar、JD-JUI 兩個包,解壓。
把a(bǔ)pk的后綴名改成zip,并解壓得到classes.dex文件,在dex2jar目錄中輸入如下命令得到.jar文件:
$ ./dex2jar.sh classes.dex
this cmd is deprecated, use the d2j-dex2jar if possible
dex2jar version: translator-0.0.9.9
dex2jar classes.dex -> classes_dex2jar.jar
Done.
再使用JD-JUI打開該文件就能查看源代碼:
與源代碼對比:
package xgd.android; import android.app.Activity; import android.os.Bundle; public class ICCardActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.iccard); } }
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。