在有APKTool之前,Android軟件的漢化是一件非常痛苦的事情。例如漢化狂人的漢化工具,那都是直接修改二進制文件的,首先
是尋找需要修改的字符串苦難(當然漢化狂人已經做得不錯了),然后修改的字符串長度還要注意中文長度不能長過原來的文字……個中郁悶就不細說了。
APKTool可以說是一個革命性的工具,有了APKTool之后,可以說,俺拽軟件的漢化工作到了一個前所未有的簡單程度。
閑話不說,我們用漢化實例來證明APKTool的方便簡單,在動手之前,需要去 APKTool 的網站把工具下載下來。當然也可以下載我已經打包的 APKTool.zip(Windows下使用)。
確保你的電腦已經安裝了JDK1.6(JRE1.6也可以),而且安裝了一個優秀的編輯軟件(推薦UltraEdit),把APKTool解壓到隨便哪個你認為操作起來方便的目錄。如果都好了,我們動手吧:

第一步,把需要漢化的文件(以漢化ColorNote為例)放到APKTool所在目錄,然后命令行進入APKTool目錄,執行下面的命令:
apktool d ColorNote.apk ColorNote
這句命令的意思是,對ColorNote.apk這個程序進行反編譯,獲得的文件放在當前目錄下的ColorNote目錄中。正常反編譯的話,能看到下面的提示:
I: Baksmaling…
I: Decoding resource table…
I: Decoding resources…
I: Copying assets and libs…
反編譯完成,會在APKTool的目錄下面,出現一個名叫ColorNote的目錄,進去看看,是這個樣子的!

用UltraEdit打開這個AndroidManifest.xml看看?哈哈,是純文本文件呀!在打開res目錄中的values中隨便一個文
件看看?也是純文本文件啊!也就是說,只要一個UltraEdit,我們就可以輕輕松松進行漢化了(就把需要的字符串轉換成中文就可以了,也不用考慮長度
了!)至于要漢化哪些內容,這個大家自己研究吧,不用我詳細說,也沒有辦法詳細說的吧?(事實上,除了XML的文本資源文件外,老外寫的很多程序,字符串
都是hard
coding在執行代碼里面的,APKTool反編譯會得到smali偽代碼,有些在XML資源里面找不到的字符串,去看看smali的代碼吧。)
中間的翻譯過程我們跳過去,例如我們已經翻譯好了,就在APKTool目錄下執行下面的命令行:
apktool b ColorNote
這條命令是告訴APKTool,把這個ColorNote目錄里的東西編譯打包成APK程序
I: Checking whether sources has changed…
I: Smaling…
I: Checking whether resources has changed…
I: Building resources…
I: Building apk file…
生成的APK程序在哪里呢?在ColorNote\Dist目錄里面,名字是out.apk
我們把這個out.apk文件簽名之后安裝看看?哈哈!完美中文漢化的俺拽程序來了!(當然,這要看漢化者的功力了。)
Popularity: 76%