apktool編譯命令
A. linux apktool怎麼使用
APKTool是GOOGLE提供的APK編譯工具,能夠反編譯及回編譯apk,同時安裝反編譯系統apk所需要的framework-res框架,清理上次反編譯文件夾等功能。需要java支持。
常見命令:
decode
該命令用於進行反編譯apk文件,一般用法為
apktool d <file.apk> <dir>
<file.apk>代表了要反編譯的apk文件的路徑,最好寫絕對路徑,比如C:\MusicPlayer.apk
<dir>代表了反編譯後的文件的存儲位置,比如C:\MusicPlayer
如果你給定的<dir>已經存在,那麼輸入完該命令後會提示你,並且無法執行,需要你重新修改命令加入-f指令
apktool d –f <file.apk> <dir>
這樣就會強行覆蓋已經存在的文件
build
該命令用於編譯修改好的文件,一般用法為
apktool b <dir>
這里的<dir>就是剛才你反編譯時輸入的<dir>(如C:\MusicPlayer),輸入這行命令後,如果一切正常,你會發現C:\MusicPlayer內多了2個文件夾build和dist,其中分別存儲著編譯過程中逐個編譯的文件以及最終打包的apk文件。
install
install-framework命令用於為APKTool安裝特定的framework-res.apk文件,以方便進行反編譯一些與ROM相互依賴的APK文件。
B. 請問apktool怎麼使用
APKTool是GOOGLE提供的APK編譯工具,需要JAVA運行環境,推薦使用JDK1.6或者JDK1.7。
如果你想對APK文件進行修改,那麼就不可避免的要使用到APKTool。論壇里有很多關於ROM美化的帖子都需要自己動手修改APK文件,比如修改framework-res.apk、systemUI.apk等等。
相信各位有不少人看了後都想親自來修改一番,但是結果卻是遇到了各式各樣的錯誤卻無法進行改正,甚至都不知道自己錯在哪裡。
一.APKTOOL使用環境配置
1.安裝JAVA並設置環境變數。
下載安裝都很簡單,關鍵是安裝完後還需要親自設置環境變數以方便其他程序能夠條用JAVA。
以WIN7為例,在桌面上右鍵點擊計算機——>屬性——>高級系統設置——>環境變數——>在下邊的系統變數里新建一個變數,變數名為JAVA_HOME,值為JAVA的安裝路徑,比如我的是H:\ProgramFiles\Java\jdk1.6.0_26
二.APKTool的安裝
1.其實這個談不上安裝,不過如果你願意的話可以把下載到的APKTOOL中的三個文件(aapt.exe、apktool.bat、apktool.jar)解壓縮到你的Windows安裝目錄下,以方便使用Dos命令.
2.可能有些人下載的APKTOOL里有個安裝的bat文件,並且有另外兩個方便使用的bat文件,在這里我不推薦大家使用這些bat文件,雖然使用起來很方便(其實我並不覺得方便),但是如果出現錯誤不方便查看。
三.APKTool的使用
1.decode
該命令用於進行反編譯apk文件,一般用法為
apktool d <file.apk> <dir>
<file.apk>代表了要反編譯的apk文件的路徑,最好寫絕對路徑,比如C:\MusicPlayer.apk
<dir>代表了反編譯後的文件的存儲位置,比如C:\MusicPlayer
如果你給定的<dir>已經存在,那麼輸入完該命令後會提示你,並且無法執行,需要你重新修改命令加入-f指令
apktool d –f <file.apk> <dir>
這樣就會強行覆蓋已經存在的文件
2.build
該命令用於編譯修改好的文件,一般用法為
apktool b <dir>
這里的<dir>就是剛才你反編譯時輸入的<dir>(如C:\MusicPlayer),輸入這行命令後,如果一切正常,你會發現C:\MusicPlayer內多了2個文件夾build和dist,其中分別存儲著編譯過程中逐個編譯的文件以及最終打包的apk文件。
3.install-framework
該命令用於為APKTool安裝特定的framework-res.apk文件,以方便進行反編譯一些與ROM相互依賴的APK文件。具體情況請看常見問題
四.常見問題
1.關於安裝和管理framework文件
以下大部分其實是翻譯自http://code.google.com/p/android-apktool/wiki/FrameworkFiles
一般來說,你在使用apktool進行反編譯前不需要做其他的事情,然而由於有的廠商,如HTC,三星等,他們定製了framework文件並且在他們的系統應用中使用了這些文件,這時,為了能正常的反編譯這些apk文件,你就必須從你的設備中拷貝出framework文件並且安裝到apktool中。
舉一個例子,比如你想反編譯HTCHero這款手機中的HtcContacts.apk,當你嘗試反編譯的時候,你會得到以下錯誤信息。
$ apktool d HtcContacts.apk
I: Loading resource table...
I: Decoding resources...
I: Loading resource table from file: /home/brutall/apktool/framework/1.apk
W: Could not decode attr value, using undecoded value instead: ns=android, name=drawable, value=0x02020542
...
W: Could not decode attr value, using undecoded value instead: ns=android, name=icon, value=0x02020520
Can't find framework resources for package of id: 2. You must install proper framework files, see project website for more info.
復制代碼
這就是在通知你必須
C. 怎樣使用Android APKTool工具反編譯與編譯APK應用
建議用APKide集成了apktool反編譯、回編全部一體化不用一行一行地輸命令。當然如果你想輸命令還是選擇apktool吧,你想問命令怎麼寫網路有教程
D. 用apktool回編譯apk後生成的classes.dex,有什麼用怎麼再變成apk
在DOS下打入命令
apktool b ABC New-Contacts.apk
這里「b」表示要打包
ABC是子目錄名,是解包時產生的子目錄,用來存放所有解包後的和修改後的文件。
New-Contacts.apk是打包後產生的新的APK文件。
E. 如何使用apktool.jar進行反編譯
命令:
java -jar apktool.jar d android.jar c:\android
其中:android.jar 要進行反編譯的jar, c:\anroid 生成到這個路徑下
F. 安卓APK反編譯輸入以下命令:apktool.bat d -f test.apk test 無法執行
如同字面意思,你真的有把test.apk放到同一個目錄嗎,右鍵單擊看看它是不是只讀的
還有,android sdk的環境變數有添加嗎
G. APKTOOL怎樣用的,我反編譯成功之後回編譯失敗,出現下圖這樣的情況是怎樣的
編譯失敗是操作過程中錯誤造成的。解決方式如下:
1、首先去官方網站點擊下載可用的最新ApkTool。