漢化教程-工具


   現在隨處都可以找到功能強大的漢化工具,操作簡單,上手快,漢化不再是件麻煩事。想學漢化的朋友只要你用心,你也可以自己漢出優秀的作品,因為漢化根本沒啥技術含量,要的只是持之恆。
      不要再羡慕別人會漢軟件有多么多么牛X了,只要你有些不差的英語功底,有着熱愛漢化、分享資源的熱情,你也能成為“漢化達人”,一切皆有可能!

教程分三個部分:
第一部是強制漢化教程,是Android軟件比較早的漢化方法,方法是用漢化工具在原語言(英文、或軟件原帶的其它語言)的基礎上將單詞和語句強制修改成中文。
第二部是APKTool漢化、精簡教程,方法是用APKTool工具將軟件反編譯解包,直接用文本編輯工具修改語言包、精簡語言包或自行添加中文語言包。
第三部分是去廣告教程。


漢化工具(帖子已提供附件):
AndroidResEdit(arsc/xml漢化、簽名工具)
漢化狂人(arsc/xml漢化工具)
Notepad++ Portable(dex漢化、文本編輯工具)
APKTool(反編譯/編譯工具)
smali/ baksmali(dex解包/打包工具)
WinRAR(apk安裝包打包/解包工具)

* 基礎知識:
1、apk安裝包的文件結構
以知名桌面軟件“LauncherPro”為例,apk安裝包文件目錄如下圖:

 

文件目錄如下:
- META-INF
- res
  - anim
  - color
  - drawable
  - drawable-hdpi
  - drawable-land
  - drawable-land-hdpi
  - drawable-mdpi
  - drawable-port
  - drawable-port-hdpi
  - layout
  - layout-land
  - layout-port
  - xml
- AndroidManifest.xml
- classes.dex
- resources.arsc

- 多數情況都要漢化的是resources.arsc、classes.dex和res文件夾里的***.xml文件。
- META-INF文件夾里面存放的是證書文件,軟件修改后需要將里面的證書文件刪除(***.RSA、***.SF、***.MF三個文件),否則軟件無法安裝。
- res文件夾里存放的大部分是軟件所需的資源及布局文件(drawable存放資源、layout、xml存放布局文件***.xml),部分需要漢化的單詞、語句會在這些***.xml文件里。
- AndroidManifest.xml文件里包含了軟件名稱、版本、權限、引用的庫文件等信息。極少數軟件在這個文件里會有單詞、語句需要漢化。
- classes.dex文件是Java源碼編譯后的代碼文件。通常該文件里都有單詞、語句需要漢化。
- resources.arsc文件是編譯后的資源文件,大多數情況下,需要漢化的單詞、語句絕大多數都在這個文件里,漢化的時候首先就要看這個文件。

* 另外,一些需要漢化的***.png圖片文件、***.html文件、***.txt文件可能會在assets文件夾或res/raw文件夾內。圖片文件需要用Photoshop修改,html、txt文件可以直接用Notepad++ Portable文本編輯工具修改(不建議用系統自帶的記事本,這東西殺傷無數….)。

2、打包/解包
apk安裝包其實就是zip格式的壓縮包,只是文件擴展名改成了apk而已,所以可以直接用解/壓縮軟件WinRAR打開,若你的系統沒有關聯apk文件,請先安裝WinRAR,打開WinRAR——選項——設置——綜合,在“用戶自定義壓縮文件擴展名”處填上apk,點“確定”保存即可。之后就可以直接雙擊用WinRAR打開apk安裝包文件。
漢化軟件的時候,不需要把整個apk安裝包解包,對於需要漢化的文件,如resources.arsc、classes.dex等文件,直接用鼠標拖出來,漢完后再拖進apk安裝包后重新簽名就行了(簽名問題下面會講到)。

3、簽名
Android的軟件也需要簽名,不過和Symbian相比,卻要簡單方便得多,首先是不需要自己去申請證書,下載個簽名工具就可以簽名了。另外,我們從電子市場、軟件官網下載來的軟件都是已經簽好名的,可以直接安裝,這里講到的簽名,是針對軟件安裝包被修改過的情況(如漢化需要修改安裝包內的文件,原來的簽名文件就不能用了,所以要重新簽名軟件才能正常安裝。),正常情況下不需要簽名。
現在Android可用的簽名工具很多,想方便點的話可以用漢化浪子出品的AndroidResEdit,這個軟件自帶簽名包(工具在帖子附件有提供)。
簽名方法很簡單,刪除原簽名文件后(META-INF 文件夾內的***.RSA、***.SF、***.MF三個文件),打開AndroidResEdit——簽名——簽名apk文件,選擇需要簽名的apk安裝包后點擊“立即簽名”即可。

4、安裝Java
這個是最基本的,漢化相關的軟件都需要用到Java,必須要安裝,否則漢化過程中出現各種奇奇怪怪的問題不要問我。
安裝地址:http://www.java.com/zh_CN/ 
                                                   APK漢化教程
一、基礎知識
1APK文件結構
1)何為APK

APKAndroid Package的縮寫,即Android安裝包,類似Symbian Sis Sisx的文件格式。通過將APK文件傳到Android 模擬器或Android手機中執行即可安裝。和sis一樣,apk文件最終把android sdk編譯工程通過特殊打包形成一個安裝文件,其本質是壓縮文件,只是擴展名被修改為apk。在Android系統安裝時,APK程序會被存放在系統默認的APP目錄中。

2APK文件分解

一般APK文件的大致結構如下圖:
<ignore_js_op> 
我們先來逐個了解這些文件的意義和內容:
1Manifest 文件
AndroidManifest.xml是每個應用都必須定義和包含的,它描述了應用的名字、版本、權限、引用的庫文件等信息。要把apk上傳到Google Market上,也要對這個xml做一些配置。
2META-INF目錄
META-INF目錄下存放的是簽名信息,用來保證apk包的完整性和系統安全。在eclipse編譯生成一個api包時,會對所有要打包的文件做一個校驗計算,並把計算結果放在META-INF目錄下。而在Android平台上安裝apk包時,應用管理器會按照同樣的算法對包里的文件做校驗,如果校驗結果與META-INF下的內容不一致,系統就不會安裝這個apk。這就保證了apk包里的文件不能被隨意替換。比如拿到一個apk 包后,如果想要替換里面的一幅圖片,一段代碼,或一段版權信息,想直接解壓縮、替換再重新打包,基本是不可能的。如此一來就給病毒感染和惡意修改增加了難度,有助於保護系統的安全。
3classes.dex文件
classes.dexjava源碼編譯后生成的java字節碼文件。但由於Android使用的dalvik虛擬機與標准的java虛擬機不兼容,dex文件與class文件相比,不論是文件結構還是opcode都不一樣。目前常見的java反編譯工具都不能處理dex文件。但是不表示dex文件不能反匯編,目前網上有兩款常用的dex文件反匯編工具:
(a) dexdump工具:由Android模擬器提供。啟動Android模擬器,把要查看的dex文件用adb push上傳的模擬器中,然后通過adb shell登錄,找到要查看的dex文件,執行dexdump xxx.dex
(b) Dedexer工具。Dedexer可讀取dex文件,生成類似於匯編語言的輸出。這種輸出與jasmin[ ]的輸出相似,但包含的是Dalvik的字節碼。我們會在下一節詳細介紹一下Dedexer
4res 目錄
res目錄存放應用程序的所有原始資源文件。
5resources.arsc
編譯后的二進制資源文件

2、漢化流程概述
1)漢化的本質

  開始工作之前確立工作目標和對象很關鍵,我們現在的工作目標是漢化,工作對象是APK程序。和VC一樣,一個Android程序大致上可分為邏輯程序和資源兩部分,讓我們無奈的是邏輯程序部分必須由洋文完成,那么可供我們漢化的就只有資源部分了。所謂資源,其實就是一些表達程序主題文本內容或者圖片文件,因此漢化可分為文本漢化和圖片漢化,但本職工作都是做翻譯。需要指出的一點是APK程序的圖片資源都是PNG格式的位圖。

2)漢化步驟:

1)解壓縮:用WinRAR之類的壓縮解壓縮工具,將APK文件解壓縮;
2)漢化關鍵文件:一般只需漢化解壓所得到的.ARSC的文件和res目錄下的圖片;
3APK更新:用解壓縮工具打開APK文件,用漢化的ARSC文件和資源文件替換相應原始文件,然后刪除【META-INF】目錄下除MANIFEST.MF 外的其他文件。本質是資源替代;
4)重新簽名:用簽名工具重新簽名APK。注意:簽名工具都需要安裝JAVA環境。
簽名完成后的APK程序,就漢化成功了,可以安裝了。

二、軟件方案

解壓工具:選用【WinRAR】;
漢化工具:文本漢化選用【AndroidResEdit】;圖片漢化選用【Adobe FireWorks CS5】;
簽名APK:簽名工具選用【Auto-sign】,AndroidResEdit自帶,但必須另外安裝JAVA環境;
安裝地址:http://www.java.com/zh_CN
驗證平台:選用Android2.3.4DEFY+一部。

三、漢化過程

這里選用的漢化對象是專業版的桌球大師V10版本—Pool Master Pro 2.0(V10)

1、設置文件格式關聯

打開【WinRAR】程序,點擊菜單欄上的【選項】->【設置】->【綜合】,找到『用戶自定義壓縮文件擴展名(U)』,輸入:【APK】確定。現在apk文件的圖標就變成壓縮文件圖標了。  

<ignore_js_op> 
2、解壓APK文件

右鍵點擊【Pool Master Pro 2.0(V10).apk】,解壓到『Pool Master Pro 2.0(V10)
注:解壓時,最好解壓到單獨的文件夾,以后升級漢化會很方便。

3、漢化開始

打開漢化浪子的最新作品“ARSC文件漢化工具”,找到『Pool Master Pro 2.0(V10)』文件夾里的【resources.arsc】並打開。

<ignore_js_op>
4、英文翻譯

英文翻譯有兩種方式:

1)逐條翻譯:

針對每行原始英文,又有兩種翻譯方式:一是人工翻譯,這個要看英文功底了,不過一般不會太復雜,多數童鞋還是都可以做的;二是自動翻譯,在需要翻譯的行上面【右鍵】->Google翻譯】或【Google自動漢化】,【Google翻譯】本質是打開Google網頁詞典的【翻譯】功能,但是可惜的是<ARSC文件漢化工具>本身為20104月出的,至今已有多日,此期間Google網頁詞典應該發生了不少改動,因此此功能已經無效了。

<ignore_js_op>
2)批量:

這種方式包括三個子過程:【導出字典】->【翻譯】->【導入字典】
1)【導出字典】:其實是把原始資源的英文部分以特定格式另存為txt文檔而已。這里之所以選擇“大寫字母開頭的詞條”是因為需要翻譯的英文資源一般都是大寫字母開頭。
<ignore_js_op> 
2)【翻譯】:這里的翻譯就只能人工翻譯了。
<ignore_js_op> 
3)【導入字典】:與【導出字典】類似。導入后【保存文件】,漢化完成,如圖:

<ignore_js_op>
5、圖片漢化:

屬於圖像處理技術部分,這里不介紹。
提醒:選用【Adobe FireWorks CS5】處理圖片時,最好選擇導出圖片,而不是另存為之類。

6、簽名APK1)更新APK

實際是打包收尾工作,請注意觀察圖解操作過程。
用解壓縮工具打開APK文件,用漢化的ARSC文件和資源文件替換相應原始文件,然后刪除【META-INF】目錄下所有文件。顯然更新APK的本質是資源替代;
操作:(1)替換resources.arsc
<ignore_js_op>
2)替換res目錄所有文件
<ignore_js_op>
3)刪除APK程序META-INF目錄下官方原有簽名信息

<ignore_js_op>
2)安裝JDK

JAVA環境,過程略去。

3)開始簽名:

【簽名】->【簽名APK文件】->【選擇更新后的APK文件】->【立即簽名】
<ignore_js_op> 
<ignore_js_op> 
上圖之所以選擇失敗的圖片,是為了更清晰的告訴大家簽名的注意事項是什么。
簽名完成后,漢化過程就全部結束了。我最后想說的是:看圖識圖很重要,如果你失敗了,請再從頭仔細讀圖。

四、漢化驗證

最后把漢化並簽名完成的APK文件,復制到DEFY+SD卡,如果手機上有原版,請先卸載原版文件再安裝漢化版。漢化版界面如下:
<ignore_js_op>  <ignore_js_op>  


附件: <ignore_js_op> 漢化狂人.rar (599.27 KB, 下載次數: 4277) 
            <ignore_js_op> AndroidResEdit.rar (741.29 KB, 下載次數: 2613) 
            <ignore_js_op> APKTool v1.3.2.rar (4.85 MB, 下載次數: 4911) 
            <ignore_js_op> Notepad Portable.rar (9.9 MB, 下載次數: 5389) 
            <ignore_js_op> smali baksmali(dex解包打包工具).rar (10.51 MB, 下載次數: 4507) 
            <ignore_js_op> WinRAR.rar (1.39 MB, 下載次數: 582) 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM