簡體   English   中英

在 res/layout 中提取 Android .apk 並讀取 XML 文件的內容

[英]Extracting Android .apk and reading contents of XML file in res/layout

我正在嘗試對現有的 android 應用程序進行逆向工程,並了解特定 UI 的構建方式。 我發現我可以將 apk 重命名為 zip 並查看一些已編譯的源代碼。 res/layout 目錄中填充了所有定義 UI 的 xml 文件,雖然它們有 xml 擴展名,但它們不是 XML 格式。 有沒有辦法將這些文件轉換回基於文本的標記?

我認為你可以使用android-apktool XML 文件看起來非常好。

創建一個新文件夾並將要解碼的 .apk 文件放入其中。

這里下載最新版本。

打開 cmd 然后導航到 APKtool 的根目錄並鍵入以下命令:

apktool d myApp.apk 

(其中 myApp.apk 是您要解碼的文件名)

現在您在該文件夾中獲得了一個文件夾,並且可以輕松讀取 apk 的 xml 文件。

這是更多詳細安裝說明的鏈接

對於那些喜歡捷徑的人:並使用 ubunto,

轉到 cmd :ctl+alt+t

類型:

sudo apt install apktool

按 Enter 然后轉到您的 apk(反編譯)文件夾。 通過使用

cd ~/folder_name

然后輸入:

apktool d yourAppName.apk

和繁榮,你完成了。

首先將您的.apk 轉換.zip 在里面,您將獲得一個名為.dex的 Java 類文件的編譯捆綁版本。 應用以下技巧將該 dex 轉換為類文件

有一種方法可以做到這一點。 一個稍微不典型的方法是下載這個開源工具dextojar http://code.google.com/p/dex2jar/

這會將您的 dex 文件轉換為 Jar 文件。 解壓這些文件以獲取 java 類文件。

然后對java類文件進行逆向工程,得到java代碼。 不要用它來破壞一些商業項目。

謝謝

如果您只想了解 UI 構造,可以使用 Hierarchy Viewer

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM