[ 
https://issues.apache.org/jira/browse/CB-4602?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14051560#comment-14051560
 ] 

ASF GitHub Bot commented on CB-4602:
------------------------------------

GitHub user eweit opened a pull request:

    https://github.com/apache/cordova-plugin-globalization/pull/15

    CB-4602 Changed CDVGlobalization.m so that the return string of getPrefe...

    ...rredLanguage returns a string that is the same as other devices, such as 
Android.  IOS was displaying simple language tags for certain languages, like 
have US as the locale and English as the language, getPreferredLanguage would 
return en.  Changed so it returns en-US and similiar for other languages.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/eweit/cordova-plugin-globalization CB-4602-2

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cordova-plugin-globalization/pull/15.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #15
    
----
commit b5d8e3ff801d48f5b9dfe1c30eb096992d868e3c
Author: Eric Weiterman <[email protected]>
Date:   2014-07-03T15:10:50Z

    CB-4602 Changed CDVGlobalization.m so that the return string of 
getPreferredLanguage returns a string that is the same as other devices, such 
as Android.  IOS was displaying simple language tags for certain languages, 
like have US as the locale and English as the language, getPreferredLanguage 
would return en.  Changed so it returns en-US and similiar for other languages.

----


> getPreferredLanguage platform inconsistencies
> ---------------------------------------------
>
>                 Key: CB-4602
>                 URL: https://issues.apache.org/jira/browse/CB-4602
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Android, Plugin Globalization
>    Affects Versions: 2.6.0, 3.0.0
>         Environment: Android
>            Reporter: Jon Whitlock
>            Assignee: Mike Billau
>            Priority: Minor
>
> In;
> https://github.com/apache/cordova-docs/blob/master/docs/en/edge/cordova/globalization/globalization.getPreferredLanguage.md
> "Returns the language identifier string to the successCallback with a 
> properties object as a parameter. That object should have a value property 
> with a String value."
> navigator.globalization.getPreferredLanguage(
>    function (language) {alert('language: ' + language.value + '\n');},
>    function () {alert('Error getting language\n');}
> );
> On Android the function doesn't seem to return an identifier as such, it 
> returns *a string describing the language localised to that language*, e.g. 
> "English" for English or "中文" for Japanese. Naturally this is less than ideal 
> for subsequent string operations, furthermore on that page "Windows Phone 8 
> Quirks - Returns the ISO 639-1 two-letter code for the current language" 
> which is an identifier, and also what I would expect (or an ISO 639-2 code, 
> as per http://www.loc.gov/standards/iso639-2/php/code_list.php)
> Android seems to support 639-2 
> http://developer.android.com/reference/java/util/Locale.html#getISO3Language()
> I have no idea what it returns on other platforms, but to keep client code 
> consistent I guess it would good if this could be normalised in the API.
> Have tested this on v3.0 and 2.6, is the same.
> As an aside, the locale is not really what I want here, as the user may be in 
> the US but have Japanese as their preferred language.
> Thanks,
> jon
> (first go at using Jira, apols if I got something wrong!)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to