apk反編譯——基礎是內功,得牢,飛躍還得多看源碼,不同思想的碰撞才能產生火花,加油!!!!!!!!

1、獲取java源代碼

1.1 dex2jar&jd-gui

dex2jar:將apk反編譯成class文件(classes.dex轉化成jar文件)

jd-gui:查看APK中classes.dex轉化成出的jar文件(save既得java源碼文件壓縮包rar)

1.2 smali2java(適用於只是選擇性查看個別文件的情況)

smali2java:這個軟件比較好的地方是可以直接解析apk查看java源碼http://www.hensence.com/cn/smali2java/

2、獲取圖片和佈局文件

2.1 apktool

apktool:資源文件獲取,可以提取出圖片文件和佈局文件進行使用查看

      cmd命令:apktool d xxx.apk yyy(反編譯)

                   apktool b yyy(回編譯)

      http://ibotpeaches.github.io/Apktool/install/能下載最新的apktool.jar文件,要實現apktool的反編功能還需aapt.exe、apktool.bat兩個文件配套使用,這兩個文件隨便在網上下載一個apktool版本就有,這裏不再提供網址下載

2.2 AXMLPrinter2.jar(適用於單純查看AndroidManifest.xml的情況)

AXMLPrinter2.jar:apk裏的AndroidManifest.xml 爲二進制文件,可通過AXMLPrinter2.jar包反編譯出來 

      cmd命令行運行一下命令:java -jar AXMLPrinter2.jar AndroidManifest.xml > AndroidManifest2.xml 

      apktool如果反編成功,就會有AndroidManifest.xml文件存在,AXMLPrinter2.jar只是針對apktool反編不成功,需要單獨反編AndroidManifest.xml的情況

3、小結:

3.1 較出名的apk項目一般都有自己的加密策略(比較大衆的加密工具有梆梆加固、愛加密等),直接反編出來的東西一般都不能直接看,這時就需要有針對性的解密反編策略

3.2 反編工具儘量用最新,技術在不斷進步,Google對android的升級也是出於保護包括我們在內的程序員的知識產權,交流和保護從來都是個博弈的局面,希望我們都能成長起來,保護自己的產出,尊重他人的勞作

4、特別說明

反編的目的在於提高程序員個人代碼技術,強烈鄙視並反對諸如打包黨利用反編技術惡意套用他人勞動成果爲己牟利等有損行業整體健康發展的行爲

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章