日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

反编译Android APK详细操作指南

發布時間:2025/3/11 Android 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 反编译Android APK详细操作指南 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

早在4年前我曾發表過一篇關于《Android開發之反編譯與防止反編譯》的文章,在該文章中我對如何在Windows平臺反編譯APK做了講解,如今用Mac系統的同學越來越多,也有很多朋友問我能否出一篇關于如何在Mac平臺上反編譯APK的文章,今天呢我就抽時間來寫一下在Mac平臺上如何反編譯APK,希望對感興趣的同學能有學幫助。

在開始講解反編譯之前呢,我們先來掃個盲:

什么是APK?

APK的全程是Android application package,是Android的應用程序包,平時我們安裝Android應用的時候需要將APK文件下載到本地然后安裝,Android系統會將其識別為Android應用包。另外,需要指出的是APK 其實是一個基于 ZIP 文件格式的文件,所以支持你用解壓軟件將其解壓,當你將APK文件解壓之后你會看到如下文件:

  • .dex代碼文件:它是classes文件通過DEX編譯后的文件格式,用于在Dalvik虛擬機上運行的主要代碼部分;
  • resources 資源文件:以resources以及res目錄為代表的Android程序中所需要的一些資源,如圖片資源,顏色資源,字符串,布局等;
  • assets文件:assets目錄下存放的是原生資源文件,比如在里面存放字體,鈴聲等;
  • manifest清單文件:以AndroidManifest.xml為代表的Android清單文件,清單文件向 Android 系統提供應用的必要信息,系統必須具有這些信息方可運行應用的任何代碼。

了解過,APK的之后,接下來就給大家介紹反編譯一個APK所需要那些工具:

反編譯一個APK需要那些工具?

無論是在Windows平臺還是在Mac平臺,反編譯APK都離不了ApkTool、dex2jar、JD-GUI 這三種工具,那么這三種工具都是做什么用的呢?

  • ApkTool:是一款應用在Apk上的逆向工程的工具,它有編譯、反編譯、簽名等功能,在這篇文章中會講解如何利用ApkTool查看apk的xml文件、AndroidManifest.xml和圖片等。
  • dex2jar:顧名思義,這款工具的作用主要是將dex文件轉換成jar文件,轉換成jar后我們才好借助JD-GUI來查看反編譯dex后的代碼;
  • JD-GUI:一款Java反編譯器GUI,通過它我們能查看到反編譯后的dex的代碼,通常需要配合dex2jar使用;

準備工作(安裝ApkTool、dex2jar、JD-GUI的具體流程)

介紹過ApkTool、dex2jar、JD-GUI 的作用后,接下來我們做一些反編譯前的準備工作,首先呢我們需要安裝ApkTool。

ApkTool

下載ApkTool

大家可以從https://ibotpeaches.github.io/Apktool/install/上下載ApkTool,也可以下載我為大家準備好的鏈接:https://pan.baidu.com/s/1DJ7duyv7nDZJ2VnGPhRDeg?
提取碼:w73v?? 。

安裝ApkTool

  • 將下載好的apktool文件與apktool_2.3.1.jar文件準備好,并將apktool_2.3.1.jar更名為apktool.jar;
  • 將apktool.jar與apktool移動到/usr/local/bin目錄下(可以通過在終端中輸出命令open /usr/local/bin來打開這個目錄);
  • 為上述兩個文件增加可執行權限,即在終端中輸入并執行:

    chmod +x apktool.jar
    chmod +x apktool
  • 在終端輸入apktool看是否可以運行,如果不可以需要在系統偏好設置中打開安全與隱私中點擊仍要運行apktool.jar;
  • 至此ApkTool的安裝便完成了,在終端運行apktool命令會看到如下輸出:

    dex2jar

    下載dex2jar

    大家可以從https://sourceforge.net/projects/dex2jar/files/上下載dex2jar,也可以下載我為大家準備好的鏈接:https://pan.baidu.com/s/1DJ7duyv7nDZJ2VnGPhRDeg?
    提取碼:w73v?? 。
    下載后直接解壓即可。

    JD-GUI

    下載JD-GUI

    大家可以從http://jd.benow.ca/上下載JD-GUI,也可以下載我為大家準備好的鏈接:https://pan.baidu.com/s/1DJ7duyv7nDZJ2VnGPhRDeg?
    提取碼:w73v?? ?。

    使用ApkTool反編譯APK得到xml文件、AndroidManifest.xml和圖片

    cd /你存放apk的目錄或在下面命令中使用xxx.apk文件的絕對路徑 java -jar apktool.jar d xxx.apk //該命令執行后會在同級目錄下生成一個與你編譯的apk同名的目錄

    通過上述命令就可以反編譯apk了。

    然后在反編譯后生成的目錄中你會看到相關的資源文件:

    由于APkTool只能將資源文件提取處理,對于.dex類型的文件是無法查看的,這里就需要用到dex2jar了。

    dex2jar將dex反編譯成jar

    第一步,解壓apk獲得dex文件

    使用解壓軟件將apk進行解壓:

    也可將apk文件的后綴改為.rar然后雙擊進行快速解壓。

    使用解壓軟件打開apk 和使用apktool反編譯出的apk不同

    • 直接解壓apk和使用apktool反編譯apk都能獲得AndroidManifest.xml,但直接解壓獲得的AndroidManifest.xml是亂碼的,無法直接查看;
    • 直接解壓apk獲得res資源文件是不包含resources.arsc部分的,而使用apktool反編譯出來的res是包含的;

    從上圖中可以看到有2個classes.dex文件(這是因為應用了MultiDex所致)這就是項目的源碼 將這個兩個文件拷貝到下載解壓的dex2jar目錄下:

    然后執行如下代碼進行反編譯:

    cd /你的dex2jar解壓目錄 也就是上面圖中存放class.dex文件的目錄 sh d2j-dex2jar.sh classes.dex sh d2j-dex2jar.sh classes2.dex

    通過上述命令會得到兩個.jar文件:

    使用JD-GUI查看反編譯后的程序源碼

    將dex轉換成jar之后接下來我們就可以使用JD-GUI來查看反編譯后的程序源碼了:

    操作步驟很簡單,只需雙擊運行jd-gui-1.4.0.jar,然后將classes-dex2jar.jar拖拽到JD-GUI界面上即可:

    FAQ

    Permission denied d2j_invoke.sh

    為d2j_invoke.sh增加權限:

    sudo chmod +x d2j_invoke.sh //sudo chmod +取消權限

    Exception in thread “main” brut.androlib.AndrolibException: Could not decode arsc file

    Apktool的bug使用其他版本的Apktool,我在使用apktool_2.3.3.jar中遇到了這個問題,使用如apktool_2.3.1.jar是好的,如果你也遇到了這個問題不妨換個Apktool版本試一下。

    Exception in thread “main”

    參考

    • Android開發之反編譯與防止反編譯
    • 下載ApkTool、dex2jar、JD-GUI
    創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的反编译Android APK详细操作指南的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲人精品午夜射精日韩 | 中文字幕第100页 | 激情文学88 | 亚洲av永久无码精品三区在线 | 国产精品1区2区3区4区 | 六十路息与子猛烈交尾 | 国产精品亚洲一区二区三区 | av调教| 国产视频高清 | 成年人拍拍视频 | www.96av | 免费欧美大片 | 嫩草视频入口 | 午夜精品小视频 | 男人的天堂视频 | 中国大陆高清aⅴ毛片 | 色综合久久精品亚洲国产 | 一本色道久久综合无码人妻 | 亚洲精品第二页 | 亚洲国产精品999 | 天天搞天天干 | 成人免费看 | 日韩毛片在线播放 | 国产又爽又黄免费软件 | 国产亚洲黄色片 | 91久久人人 | 在线中文视频 | 色婷婷综合视频 | 亚洲一级片av | 精品成人免费视频 | 日韩伦理一区二区 | 91精品国产综合久久精品 | 国产成人tv | 国产精品久久久久影院老司 | 免费在线观看国产精品 | 影音先锋中文字幕人妻 | 在线观看国产免费av | 51av视频 | 女人张开双腿让男人捅 | 精品女同一区 | 国产剧情精品在线 | 1000部多毛熟女毛茸茸 | 成人性爱视频在线观看 | 99成人免费视频 | 老司机精品视频网站 | 色射视频 | 一级做a爱片性色毛片 | 五月花婷婷| 欧美日韩精品免费 | 色欧美视频 | 人妻少妇偷人精品视频 | 久久精品国产成人av | 日韩污视频在线观看 | 免费人成年激情视频在线观看 | 高清免费视频日本 | 国产一区二区播放 | 亚洲国产网 | 欧美日韩字幕 | 亚洲专区在线播放 | 超碰日本 | 四虎一国产精品一区二区影院 | 精品视频一区二区三区 | 欧美成人免费看 | 亚洲人成777| 国内精品久久久久 | 伊人网中文字幕 | 亚洲午夜av| 亚洲永久精品一区二区 | 一卡二卡三卡 | 亚洲女优在线观看 | 亚洲av色一区二区三区精品 | 国产男女在线 | 国产黄色大片在线观看 | 日本xxxxxxxxx69 | 手机看片日韩福利 | 精品久久久久久久 | 欧美性色网站 | 国产乱淫av片 | 亚洲大逼 | 你懂的网址在线观看 | 欧美性猛交xxx乱大交3蜜桃 | av中文天堂 | 美女扒开粉嫩的尿囗给男生桶 | av一片 | 极品销魂美女一区二区三区 | 国产精品3 | 97日韩精品 | 亚洲熟女乱色一区二区三区 | 精品在线不卡 | 欧美激情国产日韩精品一区18 | 少妇激情偷人三级 | 亚洲天堂免费看 | 久久综合综合久久 | 中文字幕欧美视频 | 非洲黄色大片 | 91快色| 免费看又黄又无码的网站 | 免费看60分钟黄视频 | 亚洲免费影院 |