我已经尝试了以下代码来获取国家/地区代码名称
TelephonyManager tm = (TelephonyManager)getActivity().getSystemService(getActivity().TELEPHONY_SERVICE);
String countryCodeValue = tm.getNetworkCountryIso();
但是如果我想获得用户所在的当前国家/地区代码,我想这不起作用。
例如,如果用户从一个国家/地区旅行到另一个国家/地区,我想获取他所在的国家/地区代码。
我有一个获取用户当前国家/地区代码的解决方案,但我遇到了问题:
但是有什么方法可以从android中的国家名称获取国家/地区代码吗?
如果有更有效的方法,也请告诉我。
谢谢:)
答案 0 :(得分:0)
您可以getResources().getConfiguration().locale.toString().split("_")[1]
获取ISO 3166-1 alpha-2(美国,GB等)。
答案 1 :(得分:0)
对于以后遇到此问题的任何人。使用SmartLocation
科特琳:
SmartLocation.with(this).location(LocationGooglePlayServicesProvider()).oneFix().start {
SmartLocation.with(this).geocoding().reverse(it, OnReverseGeocodingListener { location, mutableList ->
val countryCode = mutableList[0].countryCode
})
}