用正確的方式做正確的漢化
2024-06-10 11:45:26
供稿:網友
一段時間來經常看到發布有關iphone的漢化帖子,其實基本的思路都是通過修改系統自帶的英文字符串資源文件來實現的。這里我推薦大家使用 蘋果 OS X自身操作系統的方式來漢化,既不損壞系統文件,又達到漢化目的,而且是正宗的OS X Native支持多語言的方式。
方法如下:
1、讓系統默認為簡體 中文 系統
現有iPhone都是默認英文系統的,語言縮寫是en_US,系統對此會自動尋找English.lPRoj,en.lproj以及 en_US.lproj是否存在,如果存在就調用其中的字符串來替換需要顯示的內容。我們要讓系統默認為中文系統,縮寫是zh_CN,系統對此會自動到 zh_CN.lproj里面去尋找字符串資源,如果沒找到,則自動切換成en。
先到iPhone上找到這個文件:/ var /root/Library/Preferences/.GlobalPreferences.plist
注意是個隱藏文件,需要用 ls -a 才能顯示出來。然后用 Mac 的 Pro perty List Editor修改這個文件,找到下面內容:
<key>AppleLanguages</key>
<array>
<string>en</string>
<string>jz</string>
......
<string>zh_CN</string>
......
<string>ko</string>
</array>
<key>AppleLocale</key>
<string>en_US</string>
然后把<array>...</array>里面的<string>zh_CN</string>移到最前面,再把<string>en_US</string>改成<string>zh_CN< /string>,改好后如下:
<key>AppleLanguages</key>
<array>
<string>zh_CN</string>
<string>en</string>
<string>jz</string>
......
<string>ko</string>
</array>
<key>AppleLocale</key>
<string>zh_CN</string>
把文件存盤,然后重新啟動iPhone,系統就默認為簡體中文環境了。
為什么仍然顯示英文?因為雖然系統默認為簡體中文環境,但是iPhone并沒有為每個應用程序配中文字符串資源,所以接下來我們就要自己加入中文字符串資源。
漢化方法很簡單,就是先把English.lproj所有的內容復制到另一個目錄zh_CN.lproj,然后把zh_CN.lproj里面的.strings文件漢化就可以了。比如說要漢化SpringBoard,先找到它的English.lproj目錄在:
/System/Library/CoreServices/SpringBoard.app/English.lproj
我們建一個新目錄:
/System/Library/CoreServices/SpringBoard.app/zh_CN.lproj
然后把English.lproj里面所有的文件都拷貝到這個zh_CN.lproj目錄里面。接下來把zh_CN.lproj里面的.strings文件漢化就可以了。具體的漢化方法,已經有很多教程了,這里就不再贅述了。
用這種方式,不會影響iPhone原有的系統。對任何應用,只要復制一份English.lproj(有些應用用en_US.lproj或者 en.lproj,這幾個都表示英文,都可以用來復制)到zh_CN.lproj,然后漢化zh_CN.lproj里面的.string文件就可以了。
如果什么時候你需要回到英文環境,只要簡單的把前面說的.GlobalPreferences.plist文件改回出廠時的樣子(AppleLanguages中en在最前面,AppleLocale中用en_US), 重啟 后,系統立即回到英文方式,是不是很方便?