馬上加入Android 台灣中文網,立即免費下載應用遊戲。
您需要 登錄 才可以下載或查看,沒有帳號?註冊
x
ShakaApktool 使用方法:
-advance,--advanced 查看更多訊息.
-lng,--language <Locale> 顯示語言, e.g. zh-CN, zh-TW
//ShakaApktool特有功能,如果需要英文輸入直接修改apktool.bat 內 -Duser.language=en 中文即zh
-version,--version 查看版本訊息
5.安裝框架
if|install-framework
//框架檔案一般在system/framework/*.apk 每個系統不一樣框架也不一樣,有的是1個有的2個有的或更多
$ apktool if framework-res.apk
I: 框架安裝到: $HOME/apktool/framework/1.apk
$ apktool if com.HTC.resources.apk
I: 框架安裝到: $HOME/apktool/framework/2.apk
-p,--frame-path <dir> 保存框架檔案到指定目錄
$ apktool if framework-res.apk -p foo/bar
I: 框架安裝到: foo/bar/1.apk
$ apktool if framework-res.apk -t baz -p foo/bar
I: 框架安裝到: foo/bar/1-baz.apk
//foo/bra 為命令所在的目錄並非$HOME/apktool/
-t,--tag <tag> 保存框架檔案為指定名稱
$ apktool if com.htc.resources.apk -t htc
I: 框架安裝到: $HOME/apktool/framework/2-htc.apk
6.反編譯指令
d[ecode] [options] <file_apk>
//d 反編譯參數,一般命令主要是apktool d file.apk 以下參數為d 後面可選參數
--api <API> 將按照API級別生成檔案訊息, 例如.14是ICS.
-b,--no-debug-info 不輸出debug訊息 (.local, .param, .line, etc.)
-d,--debug 反編譯調試模式. 查看更多訊息.
--debug-line-prefix <prefix> 反編譯調試模式下, 給Smali新增行前綴 預設是 "a=0;// ".
-k,--keep-broken-res 當出現錯誤或者一些resources被放棄時使用,例如."Invalid config flags detected. Dropping resources", 即使在有錯誤的情況下,你還是想要強行反編譯. 你之後必須手動修復相關錯誤才能進行編譯.
-m,--match-original 保持盡可能的接近原始檔案.防止重新生成.
-df,--default-framework 使用默然的框架資源檔案
//ShakaApktool獨有功能,主要作用刪除$HOME/apktool/framework/1.apk然後釋放新的1.apk(主要解決apktool內android-framework.jar升級後本地1.apk版本太低導致反編譯失敗問題)
-f,--force 強制刪除目標資料夾
//這個應該用的比較多,在使用apktool d file.apk時候提示你目標資料夾已存在,加-f就會直接刪除目標資料夾
-fui,--fuck_unkown_id 反編譯遇到未知資源id繼續執行
//ShakaApktool獨有功能,主要是反編譯遇到一些未知的id直接跳過
-ir,--ignore_res_decode_error 忽略資源反編譯的錯誤
//ShakaApktool獨有功能,主要是忽略資源反編譯的錯誤
-mc,--more-recognizable-characters 顯示更多的可識別字符
//ShakaApktool獨有功能,顯示更多的可識別字符,比如中文不在以uxxxx編碼顯示,而是直接顯示中文,讓smali更容易讀
-n9,--no-9png 不解析.9格式的資源
//ShakaApktool獨有功能,在編譯時直接不解析.9格式的檔案
-o,--output <dir> 輸出資料夾名字. 預設是 apk.out
//輸出資料夾名,例如:apktool d -f file.apk -o out
-p,--frame-path <dir> 使用指定目錄下的框架檔案
//使用指定目錄下的框架檔案,例如:apktool d -f -p foo/bar file.apk -o out
//這裡的-p foo/bar按照安裝框架那一步來執行
-r,--no-res 不反編譯resources.arsc
//不反編譯resources.arsc,只反編譯classes.dex
-s,--no-src 不反編譯classes.dex
//不反編譯classes.dex,只反編譯resources.arsc
-t,--frame-tag <tag> 使用指定名稱的框架檔案
//使用指定名稱的框架檔案,例如:apktool d -f -t htc file.apk -o out
//這裡的-t htc按照安裝框架那一步來執行
-xn,--xml_attribute_name_correct xml attribute name correct. May be has problem, not recommended.
//ShakaApktool獨有功能,xml 屬性名實際是通過id來查找的,但是baxml中保留了一份顯示的屬性名。xml 屬性名實際是通過id來查找的,但是baxml中保留了一份顯示的屬性名,已經測試mobileqq,qq瀏覽器可以正常使用
7.回編譯指令
b[uild] [options] <app_path>
-a,--aapt <loc> 從指定路徑載入aapt
//從指定路徑載入aapt,例如:apktool b -a $HOME/sdk/build-tools/23.0.1/aapt out -o new.apk
-c,--copy-original 複製原始AndroidManifest.xml和META-INF檔案.可以查看項目更多訊息
-d,--debug 調試模式編譯. 檢查項目的更多訊息
-f,--force-all 跳過已編譯檢查,強制編譯所有檔案
//覆蓋已經存在的檔案,強制編譯resources.arsc 和 classes.dex
-o,--output <dir> 輸出apk路徑. 預設是 dist/name.apk
//輸出apk路徑,預設在dist/xxx.apk 例如:apktool b out -o new.apk(new.apk路徑在命令執行的目錄)
-p,--frame-path <dir> 使用指定目錄下的框架檔案
//使用指定目錄下的框架檔案,例如:apktool b -p foo/bar out
8.其他
-q 和 -v 命令
//-q 編譯時不輸出任何訊息,直接靜默模式編譯,例如:apktool -q d或apktool -q b
//-v 編譯時輸出更多詳細訊息,例如:apktool -v d或apktool -v b
也可以直接不借助apktool[apktool.bat] 直接使用
java -jar apktool.jar[ShakaApktool.jar]
ShakaApktool.jar目前版本已經完全支援smali和baksmali功能
apktool下載:http://apk.tw/thread-757511-1-1.html
ShakaApktool v2.0.0下載
ShakaApktool_2.0.0-20160225-release.jar
(7.07 MB, 下載次數: 52)
|
評分
-
查看全部評分
|