cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Billau (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CB-4602) getPreferredLanguage platform inconsistencies
Date Tue, 29 Apr 2014 16:07:18 GMT

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

Mike Billau commented on CB-4602:
---------------------------------

I made some changes to the implementation above. I found out that Java 7 implements a method
called Locale#toLanguageTag(), so I followed that as much as possible. I pushed up a new branch
to the globalization plugin because there are a few other changes that we are in the process
of making, so we will just commit to that branch and then bump the major version once. 

https://github.com/apache/cordova-plugin-globalization/commit/baea8a295daebdb6cc2bfcdcb612d6c988a8e08a

Somehow git reverted some of the previous changes (changing new Long() to Long.valueOf), so
I'll figure out why and fix that.

> 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)

Mime
View raw message