Android 使用网络提供程序获取当前位置名称
我试过使用这个代码。它没有给出位置名称。它只给出纬度和经度Android 使用网络提供程序获取当前位置名称,android,geolocation,Android,Geolocation,我试过使用这个代码。它没有给出位置名称。它只给出纬度和经度 String latLongString; if (location != null) { double lat = location.getLatitude(); double lng = location.getLongitude(); latLongString = "Lat:" + lat + "\nLong:" + lng; } else {
String latLongString;
if (location != null)
{
double lat = location.getLatitude();
double lng = location.getLongitude();
latLongString = "Lat:" + lat + "\nLong:" + lng;
}
else
{
latLongString = "No location found";
}
myLocationText.setText("Your Current Position is:\n" + latLongString);
试试这个:
LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
bestProvider = locationManager.getBestProvider(criteria, true);
location = locationManager.getLastKnownLocation(bestProvider);
if (location != null) {
lat = location.getLatitude();
lng = location.getLongitude();
} else {
location = new Location("");
location.setLatitude((double) 38.0000000000);
location.setLongitude((double) -97.0000000000);
lat = location.getLatitude();
lng = location.getLongitude();
}
默认情况下,“位置”是指坐标,即纬度和经度
这就是你得到的。以获取您需要的实际地址
对坐标进行地理编码
要获取当前位置名称,需要遵循两个步骤
1) 为了得到你现在所做的爱
现在
2) 使用Geocoder类将lat long转换为地址
有关链接和详细表达,请参见 您正在实际设备或emulator中进行尝试?这不是
Location
应该提供的吗?我正在实际设备中进行尝试,但它不提供不,它应该只提供当前的loation名称。但它给了我当前的位置lat和lon值,只是扩展了上面的答案。默认情况下,位置是指坐标,即纬度和经度,这是您得到的坐标。要获得实际地址,您需要对坐标进行地理编码。但要使用geocorder类获取位置名称,我们需要互联网连接。但是有没有一种方法可以在不连接互联网的情况下获取位置名称?