如何在获得经度和纬度后获得用户的位置

时间:2012-06-01 12:23:20

标签: android location

我是Android移动开发的新手。我使用了Location Manager类并成功找到了用户的经度和纬度。我想使用这些值来查找城市名称。我不想要地图,我只想获得城市名称。我该怎么做呢?

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

首先使用Location和LocationManager类(已完成)获取纬度和经度。现在尝试以下代码获取城市,地址信息

    double latitude = location.getLatitude();
    double longitude = location.getLongitude();
    Geocoder gc = new Geocoder(this, Locale.getDefault());
    try {
    List<Address> addresses = gc.getFromLocation(lat, lng, 1);
    StringBuilder sb = new StringBuilder();
    if (addresses.size() > 0) {
    Address address = addresses.get(0);
    for (int i = 0; i < address.getMaxAddressLineIndex(); i++)
    sb.append(address.getAddressLine(i)).append("\n");
    sb.append(address.getLocality()).append("\n");
    sb.append(address.getPostalCode()).append("\n");
    sb.append(address.getCountryName());

城市信息现在是某人。现在将sb转换为String(使用sb.toString())。

答案 2 :(得分:1)

您可以使用Geocoder

Geocoder myLocation = new Geocoder(context, Locale.getDefault());
List<Address> myList = null;
try {
    myList = myLocation.getFromLocation(latitude, longitude, 1);
} catch (IOException e) {}

经度和纬度是网络或GPS检索的价值