Android Apk 混淆請看這篇文章:Android混淆 照葫蘆畫瓢一次成功!
混淆方式下打包APK成功後,怎麼檢查自己的APK是否混淆成功了呢?
此時需要用到Android 反編譯 三件套apktool 、dex2jar、jd-gui (本文末尾有下載)
0、前提:your.apk和apktool 、dex2jar、jd-gui 處於同一目錄下
例如 C:\Users\xxx\Desktop\androidThreeGuns
1、解壓apk
把your.apk 後綴名改爲zip後解壓,解壓後的目錄結構如下:
2、二進制轉jar:dex2jar
把classes.dex文件拷貝到dex2jar 目錄下,在dex2jar 目錄 下執行
d2j-dex2jar classes.dex
順利的話將直接生成 classes-dex2jar.jar,進入下一步。
如果不順利,將收到錯誤:
此時就需要對classes.dex做出一點處理:使用二進制編輯工具打開classes.dex
在編輯工具中把 038 修改爲 035,保存並關閉。再次執行
d2j-dex2jar classes.dex
這樣就可以得到classes-dex2jar.jar ,位置在dex2jar 目錄下。
二進制編輯工具可以使用nodepad++,見參考文章。
3、class文件反編譯成java源代碼:jd-gui
雙擊jd-gui.exe, 順利的話,可以打開圖形界面
如果不順利,將收到錯誤
此時可以在前提的目錄下cmd執行
java -jar jd-gui-1.6.6.jar
也可以打開上面的圖形界面。
接下來打開上一步得到的classes-dex2jar.jar 就可以看到反編譯後的源代碼了。
此時源代碼可能混淆的連自己都不認識了,怎麼確認這是自己的apk呢。
4、使用apktool反編譯apk
CMD切換到前提中的目錄下,運行
java -jar apktool_2.3.4.jar d -f your.apk -o vpn
your.apk (要反編譯的apk名字) ,vpn(反編譯後存到vpn目錄下)
運行成功後查看vpn目錄,大概長這樣:
查看一下res目錄中的資源文件,或者直接看AndroidManifest.xml就行了。
---------That’s All! Thank you!----------------
Android反編譯三劍客下載
參考文章:
Android反編譯三件套 apktool 、dex2jar、jd-gui
Notepad++查看、編輯二進制文件——安裝附加組件HexEditor實現