当我的应用程序第一次启动时,我想检测用户的当前语言环境并相应地设置 SharedPreference。我从 getResources() 中获取用户当前的语言环境,我了解到这是在应用程序第一次启动时设置的:
// Set the locale
Locale locale = getResources().getConfiguration().locale;
if(locale != Locale.US)
{
Log.i("ActivityDownloader", "Locale: " + locale.toString() + ", (" + Locale.US.toString() + ")");
}
不幸的是,我在控制台中看到带有以下文本的日志条目:
I/ActivityDownloader: 语言环境: en_US, (en_US)
为什么两个 Locale 不匹配?我应该匹配 Locale.toString() 吗?