0

Android アプリケーションでユーザーが入力した国に基づいて、ISO3 国コードにアクセスする必要があります。配列に格納するのではなく、直接アクセスする方法はありますか。

4

1 に答える 1

2

テレフォニー マネージャーまたは IP アドレスを使用して、現在の ISO2 国コードを取得できます。次に、 Localeを使用して ISO3 国コードを取得します。

サンプルは次のとおりです。

  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());
    }
于 2016-08-17T12:54:54.130 に答える