新聞中心
對于軟件開發(fā)人員來說,保護(hù)代碼安全也是比較重要的因素之一,不過目前來說Google Android平臺選擇了Java Dalvik VM的方式使其程序很容易破解和被修改,首先APK文件其實就是一個MIME為ZIP的壓縮包,我們修改ZIP后綴名方式可以看到內(nèi)部的文件結(jié)構(gòu),類似Sun JavaMe的Jar壓縮格式一樣,不過比較去別的是Android上的二進(jìn)制代碼被編譯成為Dex的字節(jié)碼,所有的Java文件最終會編譯進(jìn)該文件中去,作為托管代碼既然虛擬機(jī)可以識別,那么我們就可以很輕松的反編譯。所有的類調(diào)用、涉及到的方法都在里面體現(xiàn)到,至于邏輯的執(zhí)行可以通過實時調(diào)試的方法來查看,當(dāng)然這需要借助一些我們自己編寫的跟蹤程序。Google最然在Android Market上設(shè)置了權(quán)限保護(hù)app-private文件夾的安全,但是最終我們使用修改定值的系統(tǒng)仍然可以獲取到需要的文件。

創(chuàng)新互聯(lián)公司主營吳忠網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,APP應(yīng)用開發(fā),吳忠h5微信小程序開發(fā)搭建,吳忠網(wǎng)站營銷推廣歡迎吳忠等地區(qū)企業(yè)咨詢
具體方法如下:
一:所需工具(點擊各自連接進(jìn)入下載頁面):
AXMLPrinter2.jar
dex2jar:
查看Jar包的GUI工具
二,開始行動
1.用AXMLPrinter2.jar查看apk中的布局xml文件:
將apk文件(為了方便起見放到tools目錄里)用WinRAR等工具打開,將res/layout/main.xml解壓出來(也還是放在tools目錄里哦)
打開main.xml文件,內(nèi)容如下(一堆天文):
這時候AXMLPrinter2.jar派上用場了,打開cmd終端,一直進(jìn)入到tools目錄下,輸入如下命令:
java -jar AXMLPrinter2.jar main.xml > main.txt. (如下圖所示)
2:通過dex2jar工具進(jìn)行反編譯。
把apk中的class.dex拷貝到dex2jar.bat所在目錄。運行dex2jar.bat class.dex,將會在其文件夾下生成classes.dex.dex2jar.jar。
3、可以將jar文件重新命名后拷貝到GUI文件夾下,運行JD-GUI工具(它是綠色無須安裝的),打開上面的jar文件,即可看到源代碼。
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- android:id="@+id/apk_web"
- android:layout_height="wrap_content"
- android:layout_width="fill_parent"
- />
- android:orientation="1"
- android:layout_width="-1"
- android:layout_height="-1"
- >
- android:id="@7F050000"
- android:layout_width="-1"
- android:layout_height="-2"
- >
【編輯推薦】
- 反編譯Android部署程序
- Android程序反編譯的方法
- Android 多任務(wù)多線程斷點下載
- Android Activity和Intent機(jī)制學(xué)習(xí)筆記
文章題目:Android反編譯方法
URL鏈接:http://m.fisionsoft.com.cn/article/ccshehp.html


咨詢
建站咨詢
