0

私はAndroidモバイル開発が初めてです。Location Manager クラスを使用して、ユーザーの経度と緯度を正常に検出しました。これらの値を使用して都市名を見つけたいと思います。地図は必要ありません。都市名を取得したいだけです。どうすればいいですか?

4

3 に答える 3

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にあります。次に、sbをStringに変換します(sb.toString()を使用)。

于 2012-06-01T12:38:20.047 に答える
1

を使用できます。Geocoder

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

経度と緯度は、ネットワークまたは GPS によって取得される値です。

于 2012-06-01T13:28:09.117 に答える
1

https://github.com/commonsguy/cw-lunchlist

https://github.com/commonsguy/cw-android

http://developer.android.com/reference/android/location/LocationManager.html

これらのサイトをご覧ください。これが役に立ちます!!!!!1

于 2012-06-01T12:26:23.577 に答える