2015-11-25 3 views
0

Мне нужно получить код страны ISO3 на основе страны, введенной пользователем для моего приложения для Android. Есть ли какой-либо возможный способ доступа к нему напрямую, а не хранить его в массиве.Как получить код ISO3 по стране, введенный пользователем в Android

ответ

1

Вы можете получить текущий код страны ISO2 с помощью диспетчера телефонии или с помощью IP-адреса. Затем введите код страны ISO3, используя Locale.

Вот пример:

TelephonyManager tm = (TelephonyManager)getSystemService(getApplicationContext().TELEPHONY_SERVICE); 
    String countryCode = tm.getNetworkCountryIso(); 
    String currentISO3CountryCode = new Locale("", countryCode).getISO3Country(); 

Также здесь образец, чтобы получить код ISO3 все страны:

for (String country : Locale.getISOCountries()) { 
     Locale locale = new Locale("", country); 
     Log.v(TAG, "ISO3 country code: " + locale.getISO3Country().toUpperCase()); 
    } 
Смежные вопросы