電腦反編譯apk神器
1. apk反編譯/回編譯
再次記錄一次apk反編譯/回編譯過程,鏈接失效請留言,會及時更新。
參考博客: https://blog.csdn.net/w327918069/article/details/82761437
首先,我們需要一個apk,下圖是Android Studio編寫並打包的一個apk。
其實apk就相當於一個zip壓縮包,通過 WinRar 工具可以對其解壓縮,像這樣:
此時,祭出我們的神器----> apktool ,當當當當~~~~~~~。
一行命令進行apk反編譯:
apktool d -r app-debug.apk 一定要加入參數 -r ,不然後面回編譯回報錯。
apk反編譯到此結束。
回編譯就是通過 apk反編譯 生成的目錄文件轉換成一個apk。
十分簡單的一行命令:
apktool b app-debug
此時安裝apk到手機無法安裝成功,還需要對apk進行簽名才能安裝。
1.生成key.keystore
keytool -genkey -alias key.keystore -keyalg RSA -validity 30000 -keystore key.keystore
可以看到key.keystore已經生成。
2.對apk進行簽名
可用於沒有簽名和已經簽名的apk,再次簽名。
jarsigner -verbose -keystore [keystorePath] -signedjar [apkOut] [apkin] [alias]
命令格式及參數意義:
-verbose -> 輸出簽名過程的詳細信息
-keystore [keystorePath] -> 密鑰的庫的位置
-signedjar [apkOut] -> 簽名後的輸出文件名
[apkin] -> 待簽名的文件名
[alias] -> 證書別名
jarsigner -verbose -keystore key.keystore -signedjar app-debug_signed.apk app-debug.apk key.keystore
回編譯完成。
2. 怎樣反編譯一個apk,利用哪些工具
工具:
apktool:資源文件獲取,可以提取出圖片文件和布局文件進行使用查看
dex2jar:將apk反編譯成java源碼(classes.dex轉化成jar文件)
jd-gui:查看APK中classes.dex轉化成出的jar文件,即源碼文件
反編譯流程:
一、apk反編譯得到程序的源代碼、圖片、XML配置、語言資源等文件
下載上述工具中的apktool,解壓得到3個文件:aapt.exe,apktool.bat,apktool.jar ,將需要反編譯的APK文件放到該目錄下,
打開命令行界面(運行-CMD) ,定位到apktool文件夾,輸入命令:apktool.bat d -f test.apk test
(命令中test.apk指的是要反編譯的APK文件全名,test為反編譯後資源文件存放的目錄名稱,即為:apktool.bat d -f [apk文件 ] [輸出文件夾])
說明獲取成功,之後發現在文件夾下多了個test文件,點擊便可以查看該應用的所有資源文件了。
如果想將反編譯完的文件重新打包成apk,可以:輸入apktool.bat b test(你編譯出來文件夾)便可,之後在之前的test文件下便可以發現多了2個文件夾:
builddist(裡面存放著打包出來的APK文件)
3. 如何反編譯android的apk文件得到資源文件
首先下載apktool工具(apktool-install-windows-r04-brut1.tar.bz2和apktool1.4.1.tar.bz2):
下載完成後,解壓apktool-install-windows到任意文件夾,例如,解壓到F:apktool目錄下:
然後解壓apktool到任意文件夾,解壓完成後會得到一個apktool.jar文件
最後把apktool.jar文件解壓到apktool-install-windows同目錄下:
解壓完成後apktool.jar文件不能刪除,之後還會用到。
然後我們把我們要反編譯的apk文件(MyPolygon.apk)拷貝到apktool目錄下:
打開一個命令行窗口,進入apktool目錄下,輸入如下命令:
4. apktool反編譯apk怎麼操作
使用apktool會反編譯apk嗎?今天小編講解了使用apktool反編譯apk的操作方法,有需要的夥伴們一起來學習吧。希望可以幫助到有需要的朋友們!
想使用apktool,先要安裝該軟體。該軟體運行在Java環境下,若沒有則要安裝java後,在進行該程序的安裝。
安裝完成後的apktool。
apktool安裝完成後,進入到apk程序所在的文件目錄下,輸襲宏入命令apktoold-fxxxx.apk執行,apktool即對該apk程序進行反編譯。
反編譯完成後,在該apk目錄下生成了一個同樣名稱的文件夾,該文件夾就是apktool反編譯出拍消冊來的源文件。
打開該文件就能查看該apk的源代碼了橋唯。
5. 如何利用apktool反編譯apk
首先的知道一下幾條指令的意思
1,apktool d SysteUI.apk 12意思是將SystemUI.apk解包到12文件下,12文件夾不用創建,會自動生成
2,apktool b 12打包12文件夾(將會自動把12文件夾里的修改過得APK解包後修改完後自動打包,生成resources.arsc,文件,這就是我們反編譯的主要目的,當然還有其他目的,後面將會說明怎麼apktool需要反編譯的目的,生成的文件。
3,apktool if framework-res.apk這條語句很重要很多時候我們容易忽略這條語句導致打包不成功,這句語句的意思是,有些時候我們解包apk文件需要用framework-res.apk(framework是指系統框架。有時也會用到apktool if twframework-res.apk,同樣我們只需在前面輸入就行。當然得把framework-res.apk 這個文件目錄下。
4,apktool if twframework-res.apk ,當然 twframework-res.apk 也應該放在文件目錄下,不如反編譯Mms.apk.....會用到
知道這四條語句我們就可以進行反編譯了。
已反編譯SystemUI.apk為例,,下面開始講解
現在cmd下輸入apktool if framework-res.apk(並把framework-res.apk 放在文件目錄下)apktool if twframework-res.apk( twframework-res.apk 也應該放在文件目錄下 )其實這兩部就是搭建安卓系統環境 ,輸入完後在解包,apktool d SystemUI.apk 12就行了
6. 有沒有反編譯工具,可以把APK完全反成一個android項目的 , 這個android逆向助手只
我可以讓你看見項目的源碼,但是不知道怎麼才能將源碼放到eclipse中進行運行!~~我試了好多次,都不成功,導入工程後總是會出錯,不知道是我哪裡設置的和源碼中設置的不一樣!~~
方法是:第一步:你先把下載的包的後綴名改成.zip
第二步:到網上搜索dex2jar,下載一個,解壓到電腦磁碟中
第三步:打開你改完後綴名的.zip文件,將其中的.dex文件解壓出來,拷貝到dex2jar這個文件中,和lib文件夾放在同文件下
第四步:進入cmd命令,然後用cd 命令進入到dex2jar這個文件中,我的是這樣的cd C:\android反編譯工具\dex2jar-0.0.9.15\dex2jar-0.0.9.15,然後在執行dex2jar classes.dex這個命令,等待一會,反編譯好了後
第五步:到網上搜索jd_gui,然後下載一個解壓到磁碟,打開它然後點打開文件,找到剛剛反編譯好的那個文件夾,即dex2jar那個文件夾中找.jar文件,打開它就能看到源碼了!~~~
其它的資源文件什麼的就在剛剛你改完的那個zip文件中有。
不過你也可以將.apk文件再反編譯回來,在看資源和Androidmanifest.xml文件!~~~這個用到apktool,這個用起來挺簡單的,你可以到網上搜索一下!~~~
7. apk反編譯怎麼搞
??。?? 888585854487#89244+1585##*
8. 如何反編譯apk文件
工具/原料
1、apktool 它可以拿到apk裡面的資源文件,我們要下載兩個文件,分別是apktool1.5.2.tar還有apktool-install-windows-r05-ibot.tar,
2、dex2jar 它可以把apk裡面的dex文件轉換成jar文件
3、jd-gui 它可以把jar文件或class文件反編譯成java文件
方法/步驟
首先下載這三個軟體,然後解壓(注意apktool的兩個文件解壓到一個文件夾)。
把需要反編譯的APK放到apktool文件夾下,然後打開Cmd(運行),進入apktool文件夾下
輸入apktool d apk名字 ,注意apk名字需要帶有後綴,這個獲取的是apk的資源文件,可以看到資源文件全都在這里了
這一步獲取apk代碼文件,將需要反編譯的APK用壓縮軟體打開,提取裡面的classes.dex,然後把classes.dex放到dex2jar文件夾下(就是第二個軟體的解壓文件夾),cmd進入dex2jar下面輸入dex2jar classes.dex
就看到jar文件了
打開jd-gui文件夾,打開jd-gui.exe,然後打開jar文件,就可以看到源碼文件了