HaChau
Super V.I.P
Cách Việt hoá ứng dụng trên iPhone
So với Việt hoá ứng dụng trên Windows Mobile thì việc Việt hoá ứng dụng trên iPhone vừa dễ, vừa khó. Tuy nhiên, nếu đã có chút kinh nghiệm với iPhone thì các bạn đều có thể thực hiện rất dễ dàng.
(Mình mới nhập môn với iPhone, chưa có kinh nghiệm nhất định với hệ điều hành này. Do vậy, rất mong mọi người góp ý cho những sai sót nếu có)
* Điều kiện:
- Máy tính đã cài Perl (PERL được viết tắt của cụm từ Practical Extraction and Report Language hoặc là Pathological Eclectic Rubbish Lister). Tuy nhiên bạn không phải quan tâm về Perl vì đây không phải là mục đích của bài viết này.
Download Perl tại đây.
Bản cho Windows.
- Trình xem/sửa file XML. Không nhất thiết phải có vì bạn hoàn toàn có thể dùng Notepad để xử lý file XML.
- Chương trình quản lý file trên PC để truy xuất iPhone (WinSCP, iPhoneSuite, ....)
- File plutil.pl đính kèm ====> các bạn download về, giải nén ra 1 thư mục trên ổ cứng. Đây chính là file chạy trên nền PERL nên nếu thiếu PERL là hỏng hết. Dùng file này có ưu điểm là không cần phải vào các trang online để xử lý file cần Việt hoá, không sợ rớt mạng mà phải bó tay.
- Cuối cùng, điều không thể thiếu là sự yêu thích việc Việt hoá. Kinh nghiệm cho thấy đây là thử thách khó vượt qua nhất
* Sơ lược về cách tổ chức file bản địa hoá của ứng dụng iPhone:
Để các bạn dễ hình dung, mình lấy luôn ví dụ 1 soft điển hình của iPhone là MCleaner (hình chụp trong trình quản lý WinSCP):
Như các bạn thấy, các thư mục tương ứng với ngôn ngữ đã được bản địa hoá.
Trong mỗi thư mục là các file có thể dịch (dạng *.strings).
Mẹo: Nếu có thể bạn nên sử dụng ngôn ngữ của chính quốc gia đã viết ra phần mềm đó vì thường các strings sẽ đầy đủ nhất. Đối với MCleaner các bạn có thể so sánh thư mục en.lproj và thư mục zh_CN.lproj sẽ thấy dung lượng khác nhau rất lớn biểu thị số chuỗi đem ra dịch được khác nhau quá xa.
* Thực hiện: (Trình tự thực hiện được ví dụ cho ứng dụng chặn cuộc gọi/SMS là MCleaner)
- Tải file plutil.pl đính kèm về, giải nén vào thư mục D:\iPhone\Converter (ví dụ mẫu, bạn để ở đâu thì tuỳ).
- Copy file Localizable.strings trong thư mục zh_CN.lproj vào đó (nên chọn file này vì nó đủ nhất). Bạn có thể copy cả file InfoPlist.strings vào đó cũng được nhưng file này thực tế không chứa dữ liệu quan trọng, chỉ là mô tả tên ứng dụng
(Nếu bạn dùng Total Commander mà bấm F3 View thử file Localizable.strings sẽ thấy ký tự loằng ngoằng. Đây chính là file XML đã được mã hoá thành dạng nhị phân. Ta sẽ dùng plutil để giải mã nó.)
- Mở 1 cửa sổ DOS (Start>Run>cmd), chuyển vào thư mục Converter vừa tạo.
- Gõ lệnh: plutil.pl Localizable.strings (có dấu cách giữa 2 từ)
Kết quả như hình:
Bạn kiểm tra thư mục Converter sẽ thấy file Localizable.text.strings mới được tạo ra khi thực hiện các dòng lệnh trên. Đây là sản phẩm đầu vào để các bạn Việt hoá.
- Dùng ứng dụng quản lý XML đã nêu ở đầu để mở file này, bạn sẽ thấy tổ chức của 1 cặp chuỗi cần dịch và chuỗi dịch như sau:
<key>chuỗi gốc</key>
<ustring>chuỗi sẽ dịch ra</ustring>
(Chữ KKK hiển thị là do diễn đàn tự động sửa, thực chất là k.e.y - không có dấu chấm)
Mẹo: Một số file cần bản địa hoá (đặc biệt là khi Việt hoá hệ điều hành) sẽ có dạng
<key>chuỗi gốc</key>
<string>chuỗi sẽ dịch ra</string>
Nếu bạn cứ dịch thì kết quả sẽ ra không đúng, do vậy ta dùng thủ thuật đổi tất cả các chuỗi string thành ustring để biểu thị chuỗi của ta là Unicode, vậy kết quả mới chính xác.
- Sau khi Việt hoá xong thì chạy lệnh sau tại cửa sổ DOS đang mở:
plutil.pl Localizable.text.strings
Nhìn qua các bạn đã thấy đây chính là file ta vừa dịch xong. Lệnh này được thực hiện sẽ cho ra kết quả là file đã được mã hoá thành nhị phân (binary) như ban đầu. Các bạn đổi tên lại file này thành Localizable.strings, copy ra thư mục hay chứa soft Việt hoá (có thể là D:\iPhone\Viethoa\MCleaner.app\vn.lproj) rồi copy vào iPhone như tôi thường hướng dẫn. Xin trích lại như sau:
- Nếu đang dùng gói tiếng Việt => copy thư mục vn.lproj vào thư mục cài MCleaner (Applications\MCleaner.app).
- Nếu đang dùng tiếng Anh => copy file Localizable.strings trong thư mục file nén vào thư mục en.lproj đường dẫn như trên.