OK, -[NSLocale autoupdatingCurrentLocale] works, but only if I
[[NSUserDefaults standardUserDefaults] setObject:whateverCode forKey:@"Locale"]

So, firstly: Thanks a lot, this solves my problem!
But secondly I think for setting up GNUstep on Android it’s not enough to just 
[NSUserDefaults setUserLanguages:] as mentioned in 
https://github.com/gnustep/tools-android#status-and-known-issues and the sample 
app.

Stefan

> Am 17.09.2020 um 10:41 schrieb Frederik Seiffert <[email protected]>:
> 
> Hi Stefan,
> 
> Can you try using -[NSLocale autoupdatingCurrentLocale] as suggested by 
> Wolfgang?
> 
> I think currentLocale gets initialized once doesn’t change when updating the 
> user default value.
> 
> Frederik
> 
> 
>> Am 16.09.2020 um 17:37 schrieb Stefan Pauwels <[email protected] 
>> <mailto:[email protected]>>:
>> 
>> But how? Even if I do this:
>> [[NSUserDefaults standardUserDefaults] setObject:@"de_CH" forKey:@"Locale"];
>> I will always get „en_US_POSIX“ for
>> NSLog(@"Current Locale: %@", [NSLocale currentLocale]);
>> 
>> 
>>> Am 16.09.2020 um 14:59 schrieb Wolfgang Lux <[email protected] 
>>> <mailto:[email protected]>>:
>>> 
>>> Hi Stefan
>>> 
>>>> Am 16.09.2020 um 12:23 schrieb Stefan Pauwels <[email protected] 
>>>> <mailto:[email protected]>>:
>>>> 
>>>> Hi
>>>> 
>>>> I am initializing GNUstep on Android as advised in the tools-android 
>>>> README, i.e. I am calling
>>>> [NSUserDefaults setUserLanguages:]
>>>> which seems to work for just setting the language, but when I try to rely 
>>>> on the currentLocale (for other information like region, metric system 
>>>> usage, etc.) I always get „en_US_POSIX“ as the locale.
>>>> 
>>>> Is there a way to manually init the locale correctly?
>>> 
>>> The user’s current locale is initialized from the user defaults. This 
>>> should normally be modified by the defaults tool from the command line or 
>>> by the SystemPreferences application.
>>> To override that programmatically in your own application set the "Locale" 
>>> default in the standard user defaults. You may also need to use 
>>> autoupdatingCurrentLocale to see the effect of the change.
>>> 
>>> Wolfgang
>> 
> 

Reply via email to