I am using MSDKUI to display UI elements with navigation. I can't find the way to change the default language to the phones local language.
The HERE Mobile SDK UI Kit for iOS should have already support for 14+ languages. Please check the documentation to verify what languages are available.
Within Xcode you have to add the desired languages you want to support. If the language is not yet supported, then the device will fallback to English.
For example, Xcode 9 and Xcode 10 already support base internationalization. Verify that the checkbox is marked:
Select your project in Xcode's file navigator. Make sure the project and not the target is selected. You should see the checkbox labelled 'Use Base Internationalization'. If it is not selected, please select it.
With the +/- buttons above you can add or remove supported languages for your app. Make sure the selected language will match the ones from the HERE Mobile SDK UI Kit.
Set a language on the device via phone settings. Restart your app: The components should be localized now.
Note that this procedure does not contain any HERE specific steps. It's just the standard way on iOS how to add localization to your app. Once the app is properly localized the HERE Mobile SDK UI Kit will recognize the language and display the current language, if available.
Related
We are developing a React Native app supporting three languages. For various reasons, we must have specific language selection logic in the app and a language selector within the app.
In iOS 13 there is a new "Preferred language" selector in the system settings for the app. We would want the in-app language selector to change the preferred language, and conversely that the user could also change their language in the system settings.
How can I read/write the iOS "Preferred language" in a React Native app?
The preferred language setting cannot be explicitly fetched or set. Changing the preferred language appears to the app just like the whole system language is changed to the selected language.
We implemented in-app language selection so that the app uses the system language until the user explicitly changes the language in the app. Thus, if the user changes the preferred language, the app language changes. After the user changes the language in the app, the preferred language no longer matches the app language and changing it has no impact. (The user knows where to find the language setting after they have changed it once.)
You simply add it to Xcode (see image).
Then grab the languages in your app by using react-native-localize
I added support for multiple languages for a react native project using i18nJs. Since we are handling the localization manually, I added the language keys to CFBundleLocalizations. However, upon the release of the app, iTunes is not showing the languages specified in CFBundleLocalizations. It's showing only English.
Go to the Project > Info tab, under Localization add one entry for each language the app supports. This will create one folder for each, e.g. es.lproj, fr.lproj etc. In itunes the localization's will be recognized.
Update:
Change the content of localized files, to do the same follow this link here https://hackernoon.com/localize-an-application-name-in-react-native-c36c4b2be7c3
How to change the language in Facebook-Account-Kit for iOS?
Facebook said that: Localization support is also provided by the SDK. The supported languages are packaged with the SDK. You don't need anything else to display text in the appropriate locale.
But it's not enough, you must add your language in Project Info like image below
I just change the simulator/device language. The display language on AccountKIT UI will be changed automatically . It worked for me
I also don't need to add localization config as "Thành Ngô Văn" answer
I had changed the device language. Now working fine.
I have to support different languages like English, Arabic, Japanese, etc., but the language changing option is available within the app itself. Earlier we have handled the right to left and left to right language changes in code.
From iOS 9 onwards, designed the UI with auto layout will be handled this properly, while changing the language in iPhone settings.
As per my requirement, I have changed the language within the app and updated the "AppleLanguages" key directly. But the storyboard is not updating properly. Once I force quit the app and relaunch it, then it working fine.
I have doubts in that,
Is there any solution to change this (language within the app) without restarting the app?
There is this (https://github.com/marmelroy/Localize-Swift/blob/master/README.md), a nice library I've been playing with which will change languages on the fly and not require you to restart the app. Does take some practice to figure out and uses NSObserver based strategy to update all the strings in the UI.
I have integrated Braintree Drop-In UI in my app and every thing is working perfectly :)
I just want to know that can I show localized UI? Is it supported in current version of iOS SDK? For example if current locale is french.. i can set it by doing some thing like [self.braintree setLocale:#"fr"] etc.
I have searched several Braintree forums and haven't got any answer regarding this.
On an iOS integration, yes it's supported.
Currently, the Drop-in option is available in 18 languages on iOS and Android, but only in English (US) on the web.
Here's the SDK details on iOS localization bundles
If you're integrating via Cocoapods, then the localizations are automatically available to you when you switch the device language.
However, if you're doing a manual integration (i.e. dragging and dropping the raw Braintree SDK files into your project), you will need to create a resource bundle named Braintree-Drop-In-Localization, add the localized .strings files for the desired languages, and add that resource bundle to the app.