Saturday, December 15, 2012

Android app locale settings suggestions

To all Android developers:

I am writing this message due to the fact that it is incorrect for a lot of Android app's locale settings to display Simplified Chinese instead of Traditional Chinese if the system setting is "Hong Kong". This makes a lot of noise in Hong Kong recently.

Except for China, all Chinese based region including Hong Kong, Taiwan and Macao are using Traditional Chinese but not Simplified Chinese. It is inconvenient for Traditional Chinese users to read Simplified Chinese. Hence, if your apps would like to provide both Traditional Chinese and Simplified Chinese, please use below settings:

res/value-zh <- Traditional Chinese
res/value-zh-rCN <- Simplified Chinese

Or if you would like to keep the standard TW locale:

res/value-zh <- Traditional Chinese
res/value-zh-rTW <- Traditional Chinese
res/value-zh-rCN <- Simplified Chinese

Or if you would like to specify for all region:

res/value-zh <- Traditional Chinese
res/value-zh-rHK <- Traditional Chinese
res/value-zh-rTW <-Traditional Chinese
res/value-zh-rCN <- Simplified Chinese

Never use Simplified Chinese string in value-zh as you can use value-zh-rCN to get the right result. If devices do not support rHK, all these devices could still get the correct locale if value-zh string is Traditional Chinese.

As English is also an official language in Hong Kong, if your apps support Simplified Chinese only, please put the English string to res/value-zh-rHK (At least the rHK supported device can get the right locale). Or you can send me an email with the Simplified Chinese string.xml attach, I'll try my best to help you to organize and translate the Simplified Chinese to Traditional one.

Best Regards,

Allen Chan
(An Android developer in Hong Kong)