Android で緯度/経度から住所を取得する方法

Android で緯度/経度から住所を取得する方法

岩佐 孝浩
岩佐 孝浩
1 min read
Android GIS Java

android.location.Geocoder を使用すると、緯度/経度から住所を取得できます。

/**
 * Get address from latitude/longitude.
 * @param context
 * @param latitude
 * @param longitude
 * @return Address
 */
public static String getAddress(
        Context context, double latitude, double longitude) {

    Geocoder geocoder = new Geocoder(context, Locale.getDefault());
    List<Address> addresses;
    StringBuilder result = new StringBuilder();

    try {
        addresses = geocoder.getFromLocation(latitude, longitude, 1);
    }
    catch (IOException e) {
        return "";
    }

    for (Address address : addresses) {
        int idx = address.getMaxAddressLineIndex();
        // Omit the first record including a country name.
        for (int i = 1; i <= idx; i++) {
            result.append(address.getAddressLine(i));
        }
    }

    return result.toString();
}
岩佐 孝浩

岩佐 孝浩

Software Developer at KAKEHASHI Inc.
AWS を活用したクラウドネイティブ・アプリケーションの要件定義・設計・開発に従事。 株式会社カケハシで、処方箋データ収集の新たな基盤の構築に携わっています。 Japan AWS Top Engineers 2020-2023