在android中,我可以通过以下方式获取Locale
实例:
Locale locale = getContext().getResources().getConfiguration().locale;
或者通过:
Locale.getDefault().toString();
任何人都可以对这两者之间的差异进行具体解释 ?
是否一个用于应用级别区域设置而另一个用于系统区域设置?
另一个问题:有没有办法以编程方式更改设备级别区域设置? (非应用级语言区域)
提前致谢。
答案 0 :(得分:0)
来自android documentation for Locale:
您可以使用getDefault()为用户获取适当的区域设置 您正在运行的设备
来自android documentation for Configuration
的Andr区域设置:区域设置的当前用户首选项
所以是的,.getConfiguration()
语言环境是基于应用程序的用户首选项,而getDefault()
语言环境是(仍然是用户特定的)设备级别选择。