According to the Java reference, Locale.getLanguage() is supposed to return the 2-letters lowercase ISO code of the language (e.g. en), while get
Locale.getLanguage()
en
get
Use
getResources().getConfiguration().locale.getLanguage()
and it will work just fine even though I would consider your observed behaviour a bug worth reporting..