Is it possible to handle support for multiple variations of the same language with BlackBerry API 7.x? - blackberry

I'm working with BlackBerry API 7.1 on Eclipse and I want to know if it's possible to add localization for variations of the same language.
I'm working on an app that needs to be localized for 10 countries that speak Spanish, but every country uses different manners of speech.
The problem I'm seeing is that BlackBerry API 7.x's Locale class only has constants for Spain Spanish and Mexican Spanish. Does that mean localization for Spanish speaking countries such as Panama, Argentina, Colombia, etc. get a default localization as if it were Spain Spanish?
Also for this case where multiple variations of the same languages must be dealt with, how should I name the files? I tried adding locale_es-AR.rrc but the - is not admissible on Resource files names, but I don't know if locale_es_AR.rrc is the correct format.
I want to know before adding ten Resource files for these countries that may or may not be usable.
Is it possible what I'm looking for?

What you are trying is correct. Have a look at Localizing Your Files
This file must have the same name as the resource header file,
followed by an underscore (_) and the language code, and then,
optionally, by a single underscore (_) and a country code (for
example, AppName_en_GB.rrc).

Related

iOS 9 App localization

I'm working on a "cook book" app that has multiple (language) versions.
Apple says I can't upload multiple apps that are almost the same, so how can I achieve what is mentioned below in single app release ?
multiple languages (possible)
multiple logos (possible)
different "config" file for each language - e.g. file with API URLs
Each language version "separately" on App store so a user can download both english and spanish versions
My biggest problem is #4, it has to be possible that one can decide which language version he downloads.
You're most likely still looking at one app with multiple languages included in it, which are picked based on user local. If you want the user to decide which language they'd like after install, give them an option. Many apps do this already.
I think you can follow these steps to create the app you'd like to make.
Localize your application. (This tutorial might be useful.)
Add a language parameter to your API calls and return the data based on the language parameter. Thus you won't be displaying a content which is not available in that language.
For your 4th requirement if you'd like to use versioning on each language (I do not know why but if you must) then you can use the language paramter you'll add on API calls. Just create a releation between the languages and the versions you are using then display the views and contents based on the relation.

Blackberry AppWorld - Description language

I'm adding an application to AppWorld, and on the Description field I'm adding a spanish description (wich my application supports).
The thing is that our app it only supports english since is targeted for a local market. Unfortunately it still asks me for English details of it (like descriptions), so my question is.... is it mandatory to provide an English descriptions? Even tho our app doesn't support (or will) support any other language.
Thanks
Yes, you do need to include an English description, as it is mandatory regardless of the language the application runs in.
Why? Applications are not filtered by language like they can be by device model or OS. Since any device, regardless of language, can view or download the app, English is used as a default when a language-specific description doesn’t exist.
If your application is published in Spanish, I'd highly recommend to include a statement that explains fact in a brief English description, followed by a more detailed separate description of the application submitted in Spanish.

Best way to switch languages in the software or website?

I want to know the best programming technique to switch languages in the software or website. So anyone can give me some suggestions? Thanks!
There is no standard. But I used the following technique in websites.
Put all the visible strings (eg. "file", "menu", "contact us") in a file or database. It can be xml, json or any format that you easily parse later. Make sure all the data is saved in different directory/db tables according to locale/language.
Wrap all the strings with a function or static class method. Every time they are displayed they'll go through some processing.
When you first load the software or web determine the locale or language that user wants to use.
According to users choice select the string source. database, filepath etc. For e.g. if user want to see strings in en_GB locale, find strings in en_GB folder or in lang_en_GB table. Naming format is in your hand.
Now each time the function or static class method is called find strings in the source you selected on Step 4.
It depends on the language you are using. Many have built in support for it. In android for example what you do is store all strings into an xml file that is named based on the region. And the operating system will automatically use the appropriate resources based on the phones region.
Look into what support your language/platform includes. You will want to externalize all your string constants such as "Press the menu button" into an external file. Then just get this file translated to each language you want to support, and use the OS to automatically use the correct resource file. Or if the platform/OS does not support such a thing write some code to determine which resource file to use yourself.

Danish localization when publishing app

I'm trying to figure out how to localize the title and description of our app in Danish, English and German.
When i add a new app in itunes connects it asks me to enter the information in english. When i then go to manage localizations i only get a limited list of languages to add - Danish is NOT one of them.
I read the iTunes connect developer guide which mentions the following: "This is in addition to the English (or other default language you set on your defaults page) metadata you’ve
already supplied during your initial app creation."
But i can't find anywhere to set Danish as the default language to then get the option to add english and german as extra languages.
So how do i go about making sure that my app is available with a local title and description in the Danish store as well as the english and german stores?
Any help is GREATLY appreciated since I can't seem to get an answer from Apple.
Unfortunaly you cannot change the default language as far as I know (and this has created some major headache for developers in the past as the default language appears in ALL stores that have no custom language. If you for example chose your native language instead of english, you will have that displayed all over the world and can create a lot of exceptions for the countries in the list). (Edit since recently the default language can be changed per App)
As for the language list: you only get what is there and have to rely on apple to extend the list in the future (never a bad idea to send en enhancement request).
Unfortunaly probably not what you wanted to hear but localization handling is still somewhat suboptimal. The only thing you can do is enter the information in the default language in Danish (and thus create a danish page for some parts of the world as well) and fill ALL of the other languages with a localized description (or english if you cannot localize) which at least gives an english description for some of the larger markets.
I'm not sure how/if Apple allows the default description in Danish if the setting is English but I already had to fill all localizations in the list with english text (even Japanese, French etc.) and had the app approved.

setting up a countries table for Rails i18n

In preparation to internationalize our Rails app, I'm finding we need to create a countries table and model that would contain (among other things) the default locale for each country. I found a 4 year old resource http://snippets.dzone.com/posts/show/1727 that has most of what I want, but not locale. Does everybody have to piece this part together by hand or am I overlooking some easier way to map country to a default locale.
P.S. We already look up a users country using GeoIpCountry which works nicely, but that table only provides country name and 2-letter abbreviation. I also want to use country to assign the users default locale, currency, and 3-letter abbreviation (needed by a third party integration)
The best way to identify user's locale is to look up the HTTP request's Accept-Language setting.
e.g., mine says: Accept-Language: fr-BE
Which gives you my locale, my language (fr: french) and my country (BE: Belgium).
Also, remember that locale identification based on country is wrong in many countries, such as mine: Many websites identify my country (Belgium) correctly and assume a default locale: nl-BE because 60% of belgian people speak Dutch (nl). Hence these sites have it wrong for 40% of belgian visitors (including me).
Their site is a bad experience for me because it displays in a language which is not mine and the first thing I must do is look for their tiny language popup menu.
Had they simply looked up my Accept-Language, they would have shown me their site in my language right away.
have a look at: https://github.com/mm1/country-list

Resources