Reverse Geocoding

この章では目的地を設定するために位置から住所、施設を検索(逆ジオコーディング)するための方法を紹介します。

逆ジオコーディングについて

逆ジオコーディングでは指定した位置から最も近い住所、施設を検索することができます。

ユーザーがタップした地図上の位置が本来ユーザーが設定したい目的地(住所、施設)から少し外れている場合でも、逆ジオコーディングで近くの住所、施設をユーザーに提示、選択してもらうことにより適切なルートを探索することができるようになります。

逆ジオコーディングイメージ図

おおまかな処理の流れ

逆ジオコーディングの流れは以下の通りです。

  1. SearchJP.ReverseGeocodingRequestのインスタンスを生成します。
    • 検索したい場所の緯度経度を設定します。
  2. 設定済みのSearchJP.ReverseGeocodingRequestオブジェクトを引数に、SearchJP.search()を呼び出します。
  3. 検索が完了すると、Listenerにて検索結果が通知されます。これで検索完了です。
    • 設定した緯度経度から直線距離で一番近い住所地点を取得することができます。
    • また、設定した緯度経度から半径100m以内の施設を取得することができます。
GeoCoordinate position = new GeoCoordinate(35.689595, 139.692221);

SearchJP.ReverseGeocodingRequest request = new SearchJP.ReverseGeocodingRequest(position);

SearchJP.getInstance().search(request, new SearchJP.ReverseGeocodingListener() {
    @Override
    public void onCompleted(SearchJP.ErrorCode errorCode, SearchJP.ReverseGeocodingResult reverseGeocodingResult) {
        // addressesに検索結果が格納されています
    }
});