views:

228

answers:

0

I have an app for OS 3.0. It is localized for Chinese (in addition to the base support of English).

It works perfectly on all devices with OS 3.0, 3.1.x, even on iPad with 3.2. That is, when I select Chinese in system settings, the app will show resources using Chinese. Localization works in app itself, the settings bundle, and the app name in home screen. (And of course, if system is set to English, my app will show English resources)

However, when running it on 3GS + OS4.0, it always shows English resource no matter what language I choose in system settings. The app itself always shows English, settings bundle is in English, and app name in Home screen shows the English version too.

I tried many things such as restart the device, reinstall the app, add CFBundleLocalizations in info.plist, etc. No help.

What have I done wrong that might cause the localization to fail on OS4.0 (although still works on 3.x)?

Here's my localization folder structure, which I believe is very normal:

+---en.lproj
|       InfoPlist.strings
|       Localizable.strings
|
\---zh.lproj
        InfoPlist.strings
        Localizable.strings

Thanks in advance for any suggestions.