我想根据设备的当前位置获取国家/地区代码。我使用了LocationListener
如下:
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
makeUseOfNewLocation(location);
}
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER, 0, 0, locationListener);
...但返回该位置需要很长时间。
如何更快地获取国家/地区代码?
答案 0 :(得分:0)
您可以使用Locale而不是位置吗?
例如:
国家代码:
Locale.getDefault().getCountry
语言代码:
Locale.getDefault().getLanguage()
希望它有所帮助。
答案 1 :(得分:0)
如果您使用GPS提供商,则可能需要等待GPS信号。鉴于您只是想确定国家/地区,NETWORK_PROVIDER
应该提供足够的粒度,并且应该给您更快的响应。
您还可以使用上一个已知位置来更快地修复您的位置:
Location lastKnownLocation = locationManager.getLastKnownLocation(locationProvider);
请参阅:http://developer.android.com/guide/topics/location/strategies.html#FastFix