欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android SDK 百度地图通过poi城市内检索简介接口的使用

程序员文章站 2024-02-17 09:37:04
百度地图 sdk 不仅为广大开发者提供了炫酷的地图展示效果、丰富的覆盖物图层,更为广大开发者提供了多种 lbs 检索的能力。通过这些接口,开发者可以轻松的访问百度的 lbs...

百度地图 sdk 不仅为广大开发者提供了炫酷的地图展示效果、丰富的覆盖物图层,更为广大开发者提供了多种 lbs 检索的能力。通过这些接口,开发者可以轻松的访问百度的 lbs 数据,丰富自己的移动端地图应用。

目前百度地图 sdk 为开发者提供的检索服务有:

poi 检索:可以检索百度 poi 数据信息;

线路规划:利用百度的引擎帮助开发者规划线路;

在线建议检索、短链接分享、地理编码等等....

本文将以一个很简单的 poi 城市内检索为例,像广大开发者介绍接口的使用。

第一步,选择并下载 sdk;

这个例子我们只使用检索功能,因此我们到百度 lbs 开放平台的 android 的统一资源下载平台下载检索功能模块就可以了,具体地址如下:http://lbsyun.baidu.com/sdk/download

Android SDK 百度地图通过poi城市内检索简介接口的使用

第二步,创建 android 工程,并将下载好的 sdk 导入工程中;

导入完成后效果如下图所示:

Android SDK 百度地图通过poi城市内检索简介接口的使用

第三步,设计应用程序的交互界面;

Android SDK 百度地图通过poi城市内检索简介接口的使用

第四步,在 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 sdk 百度地图通过poi城市内检索简介接口的使用,希望对大家有所帮助。