編輯:關於Android編程
百度地圖 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() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub poiCitySearchOption = new PoiCitySearchOption() .city(city.getText().toString()) .keyword(keyword.getText().toString()); poiSearch.searchInCity(poiCitySearchOption); } });
補充一下監聽方法的實現,如下所示:
OnGetPoiSearchResultListener onGetPoiSearchResultListener = new OnGetPoiSearchResultListener() { @Override public void onGetPoiResult(PoiResult poiResult) { // TODO Auto-generated method stub String 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+ "]"); } @Override public void onGetPoiDetailResult(PoiDetailResult arg0) { // TODO Auto-generated method stub } };
如上的監聽方法是將結果中得第一條信息進行了展示,執行程序如下圖效果:
以上所述是小編給大家介紹的Android SDK 百度地圖通過poi城市內檢索簡介接口的使用,希望對大家有所幫助。
Android開發中的MVC設計模式的理解1. Android系統中分層的理解: (1).在Android的軟件開發工作中,應用程序的開發人員主要是應用Android A
只是簡單的實現了效果,界面沒怎麼做優化,不過那都是次要的啦!!相信大家都迫不及待的想看效果圖了吧,其中主要的彩票視圖類和橡皮擦類都是通過代碼的方式構建視圖,布
Android Studio 大家應該都很熟悉了,但是可能很多人都僅限基本的功能使用,而 Android Studio 非常強大,有很多非常實用卻又鮮為人知的小技巧,熟練
前一段時間更新了Android Studio,目前最新的穩定版是1.4。更新之後沒看到什麼大的變化。今天去逛官方的更新日志,發現1.4版本著實增加了不少使用的