kotlin 如何获取当前器械所在地区/国家?

cunj1qz1  于 2023-01-05  发布在  Kotlin
关注(0)|答案(4)|浏览(232)
  • 如何才能得到当前地区的代码一样(即,我们,英国)在Android设备中选择.
    *我不想从区域设置获取地区/国家代码因为它只返回所选语言的国家代码。使用区域设置:
  • 字符串cCode =区域设置.getDefault().getCountry();*
  • 无论用户何时明确更新地区/国家,都必须反映在应用程序中。I need code to get current selected region/country of device

lrpiutwd

lrpiutwd1#

我希望这能起作用。

TelephonyManager tm = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE);
String countryCodeValue = tm.getNetworkCountryIso();
dy1byipe

dy1byipe2#

我也在做同样的事情。这对我很有帮助:
当前区域设置= getResources().getConfiguration().区域设置;

zte4gxcn

zte4gxcn3#

要获取国家/地区代码,可以使用Locale类的getCountry()方法,如代码所示。
要获取完整的地区/国家名称,可以使用Locale类的getDisplayCountry()方法,如上面的代码所示。这将以设备的语言返回设备当前区域设置的国家的完整名称。

Locale currentLocale = Locale.getDefault();
String countryCode = currentLocale.getCountry();
String regionName = currentLocale.getDisplayCountry();

例如,如果设备的当前区域设置为美国,则国家代码将为“US”,区域名称将为“United States”。如果设备的当前区域设置为法国,则国家代码将为“FR”,区域名称将为“France”。因此,这将同时返回国家名称和区域名称。

7kqas0il

7kqas0il4#

可以使用TelephonyManager类的getNetworkCountryIso方法获取设备当前网络的国家/地区代码

TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
        String countryCode = tm.getNetworkCountryIso();

相关问题