久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

apk反編譯問題總結(轉)

 CevenCheng 2011-07-06

 http://www./thread-30768-1-1.html

 

今天反編譯一個apk,,遇到了很多問題,,查了好幾個文檔,現(xiàn)在把前人的一些經驗和自己碰到的問題記錄下來,作一個總結,,與大家分享,,希望對大家有幫助

一、找到apk中的class.dex:
把apk文件改名為.zip,,然后解壓縮其中的class.dex文件,,它就是java文件編譯再通過dx工具打包成的。

二,、得到java源文件

工具準備:
1,、把dex文件反編譯為jar文件的工具。(dex2jar)
http://code.google.com/p/dex2jar/downloads/list 

2,、把jar反編譯為java的工具,。(JD-GUI)
http://java.decompiler./?q=jdgui

反編譯步驟:
1、把class.dex拷貝到dex2jar.bat所在目錄,,直接拖動class.dex到dex2jar.bat,,生成classes.dex.dex2jar.jar。
   或者:1.在cmd下進入dex2jar.bat所在路徑,,然后輸入“dex2jar.bat XXX”,,XXX指的是你要反編譯的apk中的classes.dex文件所在路徑及名稱,比如:我的dex2jar.bat在D:\Android\apk_decode\dex2jar-0.0.7-SNAPSHOT路徑下, classes.dex在D:\Android下,,所以: 你進入dex2jar.bat路徑下后,,輸入dex2jar.bat D:\Android\classes.dex,這樣會生成一個jar文件,。

2.用rar解壓出jar文件中的class文件,,然后用jad或DJ Java Decompiler反編譯工具將.class文件反編譯成.java文件

3、運行JD-GUI工具(它是綠色無須安裝的),,打開上面的jar文件,,在File下有個Save JAR Source,它可以生成src源代碼,。

三,、上面操作只能得到class文件,下面利用Google提供的apktool得到xml文件

1. 下載apktool,,可以去Google的官方下載,,地址:http://code.google.com/p/android-apktool/得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip兩個包都要下,。解壓apktool-1.0.0.tar.bz2得到apktool.jar放到 C:\Windows ,,解壓apktool-install-windows.zip到任意文件夾(例如E盤根目錄),。(我是兩個包解壓后都放在C:\Windows下)

2. Win+R 運行CMD,,用cd命令轉到apktool-install-windows所在文件夾,輸入apktool看看。會列出一些幫助的話就成功了(解釋d為加壓 第一個路徑為你的apk所在的位置,。第二個是要輸出的位置)
   在這一步中我碰到這樣一個問題:
   Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version n
umber in .class file
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
4)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)

版本問題,,裝了個jre6,在360中的軟件管家可以找到的,,記得裝完后配置path路徑,,果然,ok,。
繼續(xù):

apktool d e:\a.apk(apk路徑)ABC(文件夾名稱)

這時當前目錄下生成 ABC文件夾,,里面就是我們想要的東東了

四、將“二”中得到的java文件和“三”中得到的xml文件組合成一個android工程,,即可得到完整的apk源碼,。

但是好像項目中用到的包沒用弄進來,很是郁悶,,希望哪位大俠弄懂之后教我,,謝謝

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,,謹防詐騙,。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報,。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多