去除了防修改保護後,現在開始進行漢化。
打開 MTestApp_kill.apk 點擊查看進入安裝包内,點擊 resources.arsc 文件,選擇翻譯模式,打開後發現有好多的語言包,擁有強迫症的我決定删掉沒用的語言包,隻保留默認和簡體中文。
精簡語言包
要精簡語言包的話,需要使用 Arsc 編輯器。讓我們退出翻譯模式,再次點擊 resources.arsc 文件,選擇 Arsc 編輯器,進入 cc.binmt.mtestapp。
字符串資源一般存在于 string、array、plurals 三個類型中,在這邊我們隻看到 string 類型,所以我們隻需要精簡 string 裡面的配置就行了。
點擊 string 進入配置列表,因為我們隻保留默認和簡體中文,所以把除了 string 和 string-zh-rCN 之外的配置都删掉。
看到這邊你可能會問,明明有 string-zh-rCN 這個簡體中文語言包,為什麼這個 app 的界面還是英文的?
我們來找找原因吧,進入默認語言包往下拉,可以看到從 001F 到 0029 的文本,基本都是主界面上顯示的那些文字,但進入 zh-rCN 後卻找不到 001F 到 0029。也就是主界面上的那些文字隻存在于默認語言包,而在簡體中文語言包中沒有對應的條目。
所以我們在 string-zh-rCN 中點擊添加菜單,選擇 string 來源,把 001F 到 0029 的條目添加進來。
現在,我們完成了語言包的精簡,并且把簡體中文語言包中缺少的詞條添加進去了。點擊菜單保存文件,退出 Arsc 編輯器。返回主界面後 MT 會提示你更新文件,點擊确定。
開始漢化再次點擊 resources.arsc 文件,選擇翻譯模式,這次隻看到 [DEFAULT] 和 zh-rCN 了,即默認語言和簡體中文。如果你還看到其它語言包選項,那麼可能你還需要去 array 和 plurals 類型中删除配置。
選擇 zh-rCN 進入,我們需要翻譯的是這幾個文本:
使用谷歌自動翻譯後:
有些地方翻譯得不太正确,另外有個十分隐秘的錯誤,仔細看你會發現上圖左右兩邊的 % 長得不太一樣,右邊的 % 被谷歌翻譯整成全角符号了,這會導緻格式控制符失效。不知道什麼是格式控制符的話去看前面關于翻譯模式的文檔。
修正翻譯結果:
點擊菜單保存翻譯結果,返回後再點擊菜單保存文件,退出翻譯模式。(注意兩次保存)
效果測試更新完文件後,返回上級,對 MTestApp_kill.apk 進行簽名,然後安裝生成的 MTestApp_kill_sign.apk。
打開後你會發現,大部分已經完成漢化,并且點擊下面的按鈕,顯示的數字會不斷增加,更新提示中會顯示“新版本:1100”,如果這兩個地方顯示不正确,那就是你破壞了格式控制符。
歡迎頁面的 Welcome!、輸入框的 Password、第一個按鈕的 OK,這三處文本沒有完成漢化,我們要去其它地方找找。
XML 翻譯讓我們再次打開 MT,點擊 MTestApp_kill.apk 選擇 XML 翻譯模式功能,可以找到我們剛剛沒翻譯的那三個詞條了,直接進行翻譯并保存。
效果測試保存完後退出翻譯模式,對 MTestApp_kill.apk 進行簽名,然後安裝生成的 MTestApp_kill_sign.apk。
這次沒問題了,我們已經完成了所有的文字漢化,所以下面不需要去使用 Dex 翻譯模式了。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!