2016-06-20 35 views
1

我不知道是不是每个Android手机预装了en_US区域设置?我必须预先设置Locale以防止逗号分隔符问题。每个android手机都有en_US语言环境吗?

目前,我使用下面的方法来强制更改,但是我担心在某些设备上可能会出现异常。

  Locale locale = new Locale("en_US"); 
      Locale.setDefault(locale); 
      Configuration config = new Configuration(); 
      config.locale = locale; 
      getBaseContext().getResources().updateConfiguration(config, 
        getBaseContext().getResources().getDisplayMetrics()); 

回答

0

他们最有可能拥有它。

如果你想不管来检查,你可以做这样的事情:

Locale locale = new Locale("en_US"); 
List availableLocales = Arrays.asList(Locale.getAvailableLocales()); 

if(!availableLocales.contains(locale)) { 
    // en_US locale not available, do your stuff here accordingly 
} 
1

我奇怪的是每一个Android手机一直en_US环境预装?

99.99%会拥有它。

+0

我同意,这是非常不可能的Android设备不具有该区域设置。但是,不是说它缺少的可能性就越小。 – oiZo

相关问题