Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CyanogenMod: Translate a Project

I have translated a project in CyanogenMod (the Email app) to Hebrew by adding a values-he folder, and compiled the entire repository (make). I have made sure that the full languages make file includes the Hebrew language.

However, when I loaded the update zip to the phone and switched the language to Hebrew, I still received the English strings. I'm pretty sure I am missing a step.

Any idea, please?

EDIT: Again, my phone supports Hebrew - as evident by other applications that do switch locale according to the values-he folder content. It's just for the Email application that it doesn't work.

like image 855
Erez A. Korn Avatar asked Feb 22 '11 06:02

Erez A. Korn


2 Answers

According to ISO 639, he is the correct ISO 639-1 code for the hebrew language. Whereas iw was deprecated back in 1989. The reason some Android devices use iw is thanks to Sun, you can read the details.

Devices like the Nexus S, sold in the US use iw. If you go to Israel and check the locale on a phone sold there (Galaxy S for example), the language will most likely be reported as "He IL N/A עברית", so it correctly uses he and not the deprecated iw.

If you want to support this fully, you should include both variations to account for these differences.

like image 183
Error 454 Avatar answered Oct 02 '22 14:10

Error 454


The reason this is happening is that Android is following legacy Java local codes: Hebrew is locale IW - not HE. Change it and it will likely work. Hope this is useful for someone who finds this question ...

like image 39
Yossi Avatar answered Oct 02 '22 13:10

Yossi