Android中使用百度地圖API:根據經緯度查詢地址資訊

來源:互聯網
上載者:User

百度地圖移動版API不僅包含構建地圖的基本介面,還整合了眾多搜尋服務,包括:位置檢索、周邊檢索、 範圍檢索、公交檢索、駕乘檢索、步行檢索、地址資訊查詢等。

百度地圖移動版API提供的搜尋服務主要是 通過初始化MKSearch類,註冊搜尋結果的監聽對象MKSearchListener來實現非同步搜尋服務。首先需要自訂一 個MySearchListener類,它實現MKSearchListener介面,然後通過實現介面中不同的回調方法,來獲得對應的 搜尋結果。MySearchListener類的定義如下:

/**  * 實現MKSearchListener介面,用於實現非同步搜尋服務,得到搜尋結果  *   * @author liufeng  */public class MySearchListener implements MKSearchListener {      /**      * 根據經緯度搜尋地址資訊結果      * @param result 搜尋結果      * @param iError 錯誤號碼(0表示正確返回)      */    @Override    public void onGetAddrResult(MKAddrInfo result, int iError) {      }            /**      * 駕車路線搜尋結果      * @param result 搜尋結果      * @param iError 錯誤號碼(0表示正確返回)      */    @Override    public void onGetDrivingRouteResult(MKDrivingRouteResult result, int iError) {      }            /**      * POI搜尋結果(範圍檢索、城市POI檢索、周邊檢索)      * @param result 搜尋結果      * @param type 返回結果類型(11,12,21:poi列表 7:城市列表)      * @param iError 錯誤號碼(0表示正確返回)      */    @Override    public void onGetPoiResult(MKPoiResult result, int type, int iError) {      }            /**      * 公交轉乘路線搜尋結果      * @param result 搜尋結果      * @param iError 錯誤號碼(0表示正確返回)      */    @Override    public void onGetTransitRouteResult(MKTransitRouteResult result, int iError) {      }            /**      * 步行路線搜尋結果      * @param result 搜尋結果      * @param iError 錯誤號碼(0表示正確返回)      */    @Override    public void onGetWalkingRouteResult(MKWalkingRouteResult result, int iError) {      }  }

說明:上面的類定義只是在說明MKSearchListener類的5個方法的作用,全都是空實現,並未給出 具體的實現。根據你要檢索的內容,再去具體實現上面對應的方法,就能擷取到搜尋結果。例如:1)你想通 過一個地理座標(經緯度值)來搜尋地址資訊,那麼只需要具體實現上面的onGetAddrResult()方法就能得到 搜尋結果;2)如果你想搜尋駕車路線資訊,只需要具體實現onGetDrivingRouteResult()方法就能得到搜尋結 果。

緊接著,需要初始化MKSearch類:

// 初始化MKSearch  mMKSearch = new MKSearch();  mMKSearch.init(mapManager, new MySearchListener());

經過上面兩步之後,就可以通過調用 MKSearch所提供的一些檢索方法來搜尋你想要的資訊了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.