Multilingual IOS application
I have planned to create a multilingual IOS application. I planned to support language(content) support from server. How can I declare in my app it supports all the languages. The problem is native controls like email screen & print screen. So how can I declare app support all languages.
You could add the property 'Localized resources can be mixed' to your App's info.plist file, and set the value to YES. That have worked for me when trying to localize the MFMailComposeView to Danish.
But as Stackmonster mentions, Apple's guidelines is to follow the language set on the phone.
iOS native controls will use the localization context for the locale of the device. You dont have to worry about it.
The "Supported" languages shown in the iTunes App Store are based on the language resource files you add. I suppose you can add the resource files for ALL the languages and simply put nothing in them. You add those from the Project Info Settings in the Localization section. That will cause the application when it is in the store to show that it supports those languages. Make sure you actually DO support those languages on the server else Apple might reject the app if they test it for one of the supported languages (I don't know if they do that.)
Then you will need to send the Device language code to your server and return the correct strings. This is what we do for our AskingPoint App Analytics Ratings Booster. We report the device language string as part of the Device metrics we collect and then when the Ratings Booster is shown to a user the buttons and message are populated from the server side with the appropriate Ratings Prompt and button text from the server.
Step 1 :
click on project -> info -> scroll down -> localizations -> click on '+' and add your required language -> check as required -> Finish.
Step 2 :
click on 'Supporting Files' -> right click -> New File -> select Resource on left-side list -> select 'Strings Files' -> next -> name it 'Localizable' -> create
Step 3 :
click on newly created file -> go to Utilities -> file inspector -> click on 'Localize..' -> check all language
Step 4 :
open Localizable.strings(English) write "help" = "I can't help you";
here "help" is a key "I can't help you" is a value. You may change them as your wish.
open Localizable.strings(Franch) or the language you have set. write accordingly and you can translate "I can't help you" to any said language.
Step 5 :
// for test NSString *str = NSLocalizedString(@"help", Nil); NSLog(@"%@",str);
We have done it. You may check.
Now, to test goto settings of device -> general -> International -> language -> select said language or the language you have chosen (There are limited languages). Run your app. Hope is will help you. It help me.