導航:首頁 > 源碼編譯 > java實現反編譯xml文件

java實現反編譯xml文件

發布時間:2022-12-08 16:39:54

❶ 如何反編譯xml文件

網上很多發編譯apk的例子,方法也很多,我只取最簡單的用。
首先說一下這個xml文件,就是.apk文件改成.zip文件後用解壓縮工具解壓出來的。比如
反編譯這個xml用到的軟甲是A2. AXMLPrinter2

第一步:把上面提到過的需要發編譯的.xml文件和下載下載的AXMLPrinter2.jar這兩個文件都拷貝到android-sdk-windows/tools文件夾中。

第二步:運行cmd,進入tools目錄,鍵入
java -jar AXMLPrinter2.jar AndroidManifest.xml > main.txt

用java -jar 命令配合AXMLPrinter2.jar這文件把AndroidManifest.xml編譯寫入到main.txt文件中
(說明一下,我的xml是AndroidManifest.xml,如果你拷進去的不是這個,請自己改文件名)

回車後沒有報錯的話,就成功了
打開../android-sdk-windows/tools/目錄,找到main.txt,打開看一下

❷ 如何反編譯apk文件得到源碼和XML文件

1.下載反編譯工具
需要下載四個工具:dex2jar、JD-GUI、apktool、apktool-install-windows-r05-ibot
dex2jar:將apk中的classes.dex轉化成Jar文件。
JD-GUI:反編譯工具,可以直接查看Jar包的源代碼。
apktool:反編譯工具,通過反編譯APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:輔助windows批處理工具。

2.解壓縮APK包
apk文件也是一種常見的zip,常用的壓縮軟體就可輕松地解壓apk文件。用壓縮軟體將apk文件中的文件解壓到一個文件夾中,得到APK中的資源包括XML文件和classes.dex文件,classes.dex就是java文件編譯再通過dx工具打包而成的。

3.反編譯dex文件
解壓apk文件後,你會發現res目錄的圖片沒有加密,但java源碼編譯成了一個classes.dex文件,無法用普通的反編譯class文件的方法來處理,dex2jar可以將dex文件轉換成普通的jar包。
解壓下載的dex2jar,把解壓後的文件夾放到系統盤跟目錄中並把這個目錄加到系統path變數中,就可以直接用:dex2jar.bat或dex2jar.sh轉換dex文件了。
DOS行命令如下:dex2jar.bat xx\classes.dex(xx是classes.dex文件所在的路徑)。
將在同目錄得到普通jar包:classes_dex2jar.jar,就可以用處理普通jar包的方法來反編譯這個jar包得到原文件。

4.反編譯jar包
得到jar包後,下載自已喜歡的反編譯工具,推薦使用JD-GUI,有比較簡單的圖形界面,可以反編譯單個class文件,也可以反編譯jar包,比較方便。
打開壓縮文件JD-GUI,運行jd-gui.exe,打開上面生成的jar包,即可看到源代碼了。

5.反編譯xml文件
打開解壓的res\layout目錄,有很多xml文件,如果你想看下作者是如何設計界面的,你會很失望,因為你看到的是一大堆亂碼!這個時候我們需要用到的是apktool。
具體操作方法:將下載的apktool和apktool-install-windows-r05-ibot兩個包解壓到同一個文件夾下,這個文件夾有三個文件:aapt.exe,apktool.bat,apktool.jar。把這個文件夾也放到系統盤的根目錄中並把這個目錄加到path變數中。以HelloWord.apk為例:
在DOS命令行中輸入:apktool d xx\HelloWord.apk HelloWord得到HelloWord文件夾,此文件夾中的xml文件就是編譯好的可以正常查看的文件。
這樣就得到了可以得到編譯的源碼和XML資源。
注意:文件的路徑中最好不要出現中文!

❸ java的反編譯怎麼使用,說具體點

使用SDK提供的反編譯器javap.exe可以將位元組碼反編譯為源碼。

❹ 教我怎樣 java反編譯可以嗎

反編譯的工具有好多, 在眾多的JAVA反編譯工具中,有幾種非常著名的工具使用了相同的核心引擎——JAD,其中主要包括:Front End Plus、mDeJava、Decafe Pro、Cavaj Java Decompiler、DJ Java Decompiler、NMI』s Java Class Viewer和國產的JAVA源代碼反編譯專家。
jad是java的反編譯工具,是命令行執行,反編譯出來的源文件可讀性較高。可惜用起來不太方便。還好

找到eclipse下的插件,叫jadclipse,安裝好之後,只要雙擊.class文件,就能直接看源文件,包括jar

包中的class文件,也可以直接反編譯。

1.下載jad1.5.8e

下載後解壓。解壓縮後將jad.exe拷貝到JRE的bin目錄下,如d:/Java/jre1.5/bin

2.下載net.sf.jadclipse_3.2.4.jar

3.安裝插件,有如下兩種方法

A.將net.sf.jadclipse_3.2.4.jar復制到D:/leaf/eclipse/plugins目錄下。

B.在d:/leaf下建立ecliplsePlungin/jadclipse/eclipse/plugins目錄,將net.sf.jadclipse_3.2.4.jar放到該目錄。在d:/leaf/eclipse/links下建jadclipse.link,內容為path=d/://leaf//ecliplsePlungin//jadclipse

3.啟動Eclipse後,在Windows(窗口)-->Perference(首選項)-->Java下面應該會多出一個JadClipse目錄,相關的設置可以在此修改配置jadclipse:設置path to decompiler為jad.exe的全路徑,如:d:/Java/jre1.5/bin/jad.exe,在Directory for temporary files中指定臨時文件的路徑,如:C:/Java/temp

4、在Eclipse的Windows-->Perference-->General->Editors->File Associations中修改「*.class」默認關聯的編輯器為「JadClipse Class File Viewer」

5、安裝完成,雙擊class文件,Eclipse將自動反編譯了。

6、把*.java 和*.class文件放在同一文件夾下,在反編譯時它回自動去尋找*.java的文件。

反編譯工具jad簡單用法

以下假設jad.exe在c:/java目錄下

一、基本用法

Usage: jad [option(s)]

直接輸入類文件名,且支持通配符,如下所示。

c:/java/>jad example1.class

c:/java/>jad *.class

結果是將example1.class反編譯為example1.jad。將example1.jad改為example1.java即得源

文件。

二、Option -o

不提示,覆蓋源文件

三、Option -s

c:/java/>jad -sjava example1.class

反編譯結果以.java為擴展名。

四、Option -p

將反編譯結果輸出到屏幕

c:/java/>jad -p example1.class

將反編譯結果重定向到文件

c:/java/>jad -p example1.class>example1.java

五、Option -d

指定反編譯的輸出文件目錄

c:/java/>jad -o -dtest -sjava *.class

❺ 有沒有比較完美的JAVA反編譯方法

1、Java反編譯插件 —— Jadclipse JadClipse是Jad的Eclipse插件,是一款非常實用而且方便地Java反編譯插件,我們只需將下載的插件包復制到eclipse的plugins目錄下,然後修改window -> Preferences -> Java -> JadClipse

❻ 如何反編譯apk文件得到源碼和XML文件

相信很多開發者都知道反編譯APK,正常情況下,如果我們想要看看xml,看看java源代碼,是看不了的。用壓縮工具解壓apk得到的文件也都是二進制文件,打開後全是亂碼。
開發者能夠用的也僅僅是圖片資源,這往往也滿足不了開發者的需求。

下面我就給大家詳細講解一下Android-apk的反編譯步驟:
注意:反編譯的前提是:開發者沒有使用proguard(java代碼混淆的工具)。

1.下載反編譯工具
需要下載四個工具:dex2jar、JD-GUI、apktool、apktool-install-windows-r05-ibot
dex2jar:將apk中的classes.dex轉化成Jar文件。
JD-GUI:反編譯工具,可以直接查看Jar包的源代碼。
apktool:反編譯工具,通過反編譯APK中XML文件,直接可以查看。
apktool-install-windows-r05-ibot:輔助windows批處理工具。

❼ java反編譯的幾種方式

第一種方式:Help——Eclipse Marketplace
安裝eclipse自帶的插件( Decompiler )
第二種方式:使用反編譯工具(XJad2.2等)
第三種方式:在cmd中的輸入javap -verbose HellloWorld.class 回車,此處的HelloWorld.class為自己創建的HelloWorld.java編譯後的class文件

❽ 如何進行JAVA程序的反編譯

JAVA是採用一種稱做「位元組編碼」的程序結構,分為小程序(嵌入到HTML文件中)和應用程序(直接在命令狀態下執行)兩種類型。無論哪種結構,一旦用JAVAC 命令編譯後,均變成後綴為CLASS的同名可執行文件。這種文件是不可閱讀的代碼。 經查閱了SUN公司的JDK(JDK1.1.3)文檔資料後,我找到了一個據稱是可反編譯JAVA的JAVAP文件(EXE),這個文件位於\JDK\BIN\ 下面,經按說明使用後,感到失望,原來這個「反編譯」僅可反編譯出JAVA程序的數據區(定義)、若干方法和類的引用等。 這里我用了一個簡單例子來說明問題。 詳情見: http://java.e800.com.cn/articles/2010/1115/1289796925240_1.html

❾ java的反編譯怎麼做的

你做了很多了吧!很好,繼續學吧!
class.forName():載入的是指定的一個類
.class文件是由JAVA虛擬機載入,解釋執行的
閣下 可能把 方向搞錯了。

JAVA的反射機制很強大,基本上所有的涉及到配置文件的,都有反射的影子。尤其是JAVA編程中的框架SSH,ibates等等。

這些框架因為使用了反射機制,在普通程序員眼裡,就只有類和配置。這樣系統很容易擴展和維護。

反射機制 也不要研究得太深,對於中國這個JAVA軟體行業,還是應用維多,你應該不會想自己開發一個框架吧。

閱讀全文

與java實現反編譯xml文件相關的資料

熱點內容
程序員理發店生意怎麼樣 瀏覽:601
程序員羅技 瀏覽:180
軟考初級程序員課程2021下載 瀏覽:487
杭州程序員奶奶 瀏覽:878
不聽命令造成錯誤 瀏覽:979
kool系統源碼 瀏覽:608
流氓app在哪裡看 瀏覽:98
域名購買了怎麼指向伺服器 瀏覽:121
安卓手機如何讓照片顏色反轉 瀏覽:859
怎麼下載卓睿安手機版 瀏覽:514
h3crange命令 瀏覽:468
php前景和python 瀏覽:338
php壓縮圖片內存大小 瀏覽:495
在哪裡可以查看雲伺服器的信息 瀏覽:70
python讀取非txt文件 瀏覽:799
艾莫迅用什麼編程軟體好 瀏覽:227
android文件存儲讀取 瀏覽:214
php基礎教程第5版 瀏覽:543
伺服器裡面怎麼刷東西 瀏覽:194
榮耀手機如何快速把app切換頁面 瀏覽:798