編輯:關於Android編程
當我們看到一款UI布局很漂亮的APP,想要了解別人是怎麼實現的時候,就可以通過Apktool工具來反編譯別人的apk,從而獲取圖片及布局資源來進行學習。
其實我們下載到的Android 應用,是可以直接把後綴名改成zip的,然後解壓zip就可以得到對應的文件目錄
其中,res為所有資源文件,META-INF為簽名信息,classes.dex為java源碼編譯後生成的字節碼。
原以為這樣輕松的就可以拿到別人的布局源碼了,實則不然,點開res/layout下的一個布局文件看看
然後發現裡面都是XML文件經過編譯的機器碼。那麼怎麼獲取別人的布局文件呢?這時,Apktool就派上用場了。
<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+ytfPyM/C1NiwstewQXBrdG9vbKO6PC9wPgo8cD7PwtTYtdjWt6O6PGEgdGFyZ2V0PQ=="_blank" target="_blank" href="http://ibotpeaches.github.io/Apktool/install/">http://ibotpeaches.github.io/Apktool/install/
下載對應版本
1.將wrapper script右鍵選擇連接另存為得到apktool.bat文件,
2.在https://bitbucket.org/iBotPeaches/apktool/downloads下載最新版本的apktool.jar包如現在最新的apktool_2.1.0.jar,並刪除版本號重名名為apktool.jar
3.將apktool.bat、apktool.jar、及想要編譯的apk文件放在同一文件夾下
4.通過cmd進入對應目錄運行apktool.bat d -f [apk文件 ] [輸出文件夾]就可以得到相應的布局資源文件了,截圖如下
這時打開res下的文件目錄會發現有很多abc及notfication開頭的文件,這些文件是自動生成的,並不是開發者真正寫的布局文件,我們需要看的是其他xml文件,如黃色部分。
點開就可以看到相應的xml布局源碼了
如果想要看別人java源碼,學習別人功能的實現的話,就要用到dex2jar及jd-gui了,
其中dex2jar可以將apk改成zip加壓後得到的classes.dex文件反編譯成jar文件。
jd-gui:可以查看dex2jar轉換出來的jar文件,就是我們想要的java源碼了。
想看詳細用法的可以參考:Android APK反編譯詳解
轉載請注明出處:http://blog.csdn.net/fzw_faith/article/details/51188815
說明: 視圖列表(ListView和ListActivity)與AutoComplete、Spinner類似,它們都需要一個供顯示的列表項,可以需
一開始接觸android,只知道拖拉布局,不靈活,難看很。後來才發現,原來和jsp一樣,可以靈活使用xml文件。 話不多說,直接上例子 任何布局既可以在代碼中實現,也可以
這一篇,給大家介紹一下ImageView控件的使用,ImageView主要是用來顯示圖片,可以對圖片進行放大、縮小、旋轉的功能。android:sacleType屬性指定
本文屬於學習分享,如有雷同純屬巧合 怎麼會有雷同呢? 本著技術分享,學習互助的原則,我在此分享一款已經開源的android 圖案解鎖的實現。 它也是參考了a