我需要确定设备所在的国家/地区(iso3),即使用户的设备已关闭GPS并且不允许应用访问它的位置。
我还需要考虑没有SIM卡的平板电脑,因此无法使用telephonyManager。
出于这个原因,我不相信我可以使用位置管理员(也是因为以下原因:LocationManager requestLocationUpdates doesn't work)
我认为我需要的方法是向第三方ip位置api发出一个简单的HTTP请求: 例如 http://www.ipinfodb.com/ip_location_api.php 要么 https://freegeoip.net
这是最好的方法吗?什么是最好的开放API?
答案 0 :(得分:6)
答案 1 :(得分:3)
您可以使用TelephonyManager
TelephonyManager tm = (TelephonyManager)this.getSystemService(this.TELEPHONY_SERVICE);
String countryCode = tm.getNetworkCountryIso();
<强>更新强> 由于您无法使用电话,我建议您尝试这样做,因为用户在设置设备时会输入。
String locale = context.getResources().getConfiguration().locale.getCountry();