百度地圖 Android SDK - 檢索功能使用的簡單樣本

來源:互聯網
上載者:User

標籤:百度地圖   android   sdk   poi檢索   

百度地圖 SDK 不僅為廣大開發人員提供了炫酷的地圖展示效果、豐富的覆蓋物圖層,更為廣大開發人員提供了多種 LBS 檢索的能力。通過這些介面,開發人員可以輕鬆的訪問百度的 LBS 資料,豐富自己的移動端地圖應用。

目前百度地圖 SDK 為開發人員提供的檢索服務有:

POI 檢索:可以檢索百度 POI 資料資訊;

線路規劃:利用百度的引擎協助開發人員規劃線路;

線上建議檢索、短連結分享、地理編碼等等....

本文將以一個很簡單的 POI 城市內檢索為例,像廣大開發人員介紹介面的使用。

第一步,選擇並下載 SDK;

這個例子我們只使用檢索功能,因此我們到百度 LBS 開放平台的 Android 的統一資源下載平台下載檢索功能模組就可以了,具體地址如下:http://lbsyun.baidu.com/sdk/download


第二步,建立 Android 工程,並將下載好的 SDK 匯入工程中;

匯入完成後效果如所示:


第三步,設計應用程式的互動介面;


第四步,在 AndroidManifest 中添加要求的權限和 SDK 開發所需要的 Key;

<uses-permission android:name="android.permission.GET_ACCOUNTS" />  <uses-permission android:name="android.permission.USE_CREDENTIALS" />  <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />  <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  <uses-permission android:name="android.permission.INTERNET" />  <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />  <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />  <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  <uses-permission android:name="android.permission.READ_PHONE_STATE" />  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  <uses-permission android:name="android.permission.BROADCAST_STICKY" />  <uses-permission android:name="android.permission.WRITE_SETTINGS" />  <uses-permission android:name="android.permission.READ_PHONE_STATE" />
<meta-data  android:name="com.baidu.lbsapi.API_KEY"android:value="GBm9SbM00C7Cd6vFi2evzSgK" />
注意上面的 key 請開發人員換成自己申請的 key,具體方法請參考之前的部落格介紹。

第五步,編程;

分別定義三個變數,PoiSearch、PoiCitySearchOption、OnGetPoiSearchResultListener。從這三個名字大家也能看得出,這三個變數分別是檢索對象、檢索參數和檢索結果的監聽方法。

在執行 POI 檢索之前,需要先初始化 PoiSearch 對象,方法如下:

poiSearch = PoiSearch.newInstance();
初始化完成之後,緊接著需要設定它的監聽方法,注意 SDK 中所有的檢索請求都是非同步實現的,代碼如下:

poiSearch.setOnGetPoiSearchResultListener(onGetPoiSearchResultListener);

準備工作完成後,我們在 Button 的點擊響應中,添加真正的檢索執行代碼,如下所示:

button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubpoiCitySearchOption = new PoiCitySearchOption().city(city.getText().toString()).keyword(keyword.getText().toString());poiSearch.searchInCity(poiCitySearchOption);}});
補充一下監聽方法的實現,如下所示:

OnGetPoiSearchResultListener onGetPoiSearchResultListener = new OnGetPoiSearchResultListener() {@Overridepublic void onGetPoiResult(PoiResult poiResult) {// TODO Auto-generated method stubString poiname = poiResult.getAllPoi().get(0).name;String poiadd = poiResult.getAllPoi().get(0).address;String idString = poiResult.getAllPoi().get(0).uid;textView.setText("第一條結果是:\n名稱=["+poiname+"]\nID = ["+idString+ "] \n地址=["+poiadd+"]");}@Overridepublic void onGetPoiDetailResult(PoiDetailResult arg0) {// TODO Auto-generated method stub}};
如上的監聽方法是將結果中得第一條資訊進行了展示,執行程式如效果:



到這,我們就實現了利用百度地圖 Android SDK 的一個最簡單的 POI 檢索樣本。更多功能歡迎大家登陸我們的官方網站進行查詢,謝謝!

http://developer.baidu.com/map/index.php?title=androidsdk


百度 LBS 開放平台向廣大開發人員推出開發人員眾測計劃,參與我們的研發測試,第一時間體驗我們新產品的功能,提 BUG 還能獲獎,是不是很爽呢?!~

詳細資料請參考:http://bbs.lbsyun.baidu.com/viewthread.php?tid=15300&extra=page%3D1

百度地圖 Android SDK - 檢索功能使用的簡單樣本

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.