4

Geocoder から場所の名前を取得し、getFromLocation() で住所を取得する例を数多く見てきましたが、場所の geoPoint を名前で取得するにはどうすればよいでしょうか。ユーザーが都市名を入力すると、それらがジオポイントに変換され、地図上に表示されます。Android または Google API に方法はありますか。

現在の場所ではなく、名前を付けることで任意の場所を意味します。基本的に、ユーザーが遠隔地の都市の天気予報を取得できるようにしたい.現在の場所を取得することで、現在の場所を取得することができます.

4

3 に答える 3

8

Try this, you'd better run it in a separately thread rather than UI-thread. You can both get Address and GeoPoint by this method.

public static Address searchLocationByName(Context context, String locationName){
    Geocoder geoCoder = new Geocoder(context, Locale.getDefault());
    GeoPoint gp = null;
    Address ad = null;
    try {
        List<Address> addresses = geoCoder.getFromLocationName(locationName, 1);
        for(Address address : addresses){
            gp = new GeoPoint((int)(address.getLatitude() * 1E6), (int)(address.getLongitude() * 1E6));
            address.getAddressLine(1);
            ad = address;
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
    return ad;
}
于 2012-04-16T02:18:43.220 に答える
4

以下の URL を使用して、リバース ジオ コーディングによって住所から緯度と経度を取得します。

http://maps.googleapis.com/maps/api/geocode/json?address=hyderabad&sensor=false

また

http://maps.googleapis.com/maps/api/geocode/xml?address=hyderabad&sensor=true
于 2012-04-16T02:13:20.797 に答える
-1

住所から緯度と経度の座標を取得することは、逆ジオコーディングではなくジオコーディングです。ジオコードを使用して簡単に住所を変換し、座標を取得したら、地図上に位置を表示します。

于 2013-02-07T12:32:13.907 に答える