Simulator\'s language already changed to Japanese, why [[NSLocale preferredLanguages] objectAtIndex:0] always return "en"
This is a bug. It was driving me crazy. Apple already knows it.
See this answers:
iOS8.1 Simulator always uses US keyboard layout despite german hardware keyboard
and this:
iOS 8.1 Simulator Localization broken (NSLocalizedString)
(In the answer there is a temporary fix changing the schema)
Best, gigi
My iOS simulator suddenly started reporting "en" rather than "en-US", so it seems this issue is still active.
Reproduced in:
I went into the language settings and English and United States were selected. I selected Canada and French, and got "fr-CA". I then switched it back and started getting "en-US" again. I've been unable to reproduce the "en" issue since.
So it appears we cannot pass the values of [NSLocale preferredLanguages] on assuming they will be Language-Region pairs.