本篇文章介绍com.justep.cordova.plugin.baiduMapBase/com.justep.cordova.plugin.baiduMapSearch插件,以及如何使用它们,来开发一个原生的内嵌百度地图。

插件概述

com.justep.cordova.plugin.baiduMapBase/com.justep.cordova.plugin.baiduMapSearch(以下简称为baiduMapBase/baiduMapSearch)这两个插件分别封装了百度地图SDK的不同模块。其中,baiduMapBase中封装了基础地图的使用,包括定位,图层展示,坐标计算,离线地图等;baiduMapSearch插件则封装了地图的查询模块,主要能力是路线查询,兴趣点查询相关能力,并且,BaiduMapSearch插件依赖于baiduMapBase插件。通过这两个插件,我们可以开发出内嵌于应用的原生的百度地图,相比于js版地图而言,地图更加流畅,会带来更好的用户体验。

 

插件参数

 

在使用此插件之前,我们必须申请与之相对应的参数,前往百度地图开放平台然后将申请好的参数填入打包选项中即可。

baiduMap1 baiduMap2

请确认参数的准确性,一旦参数错误,会打开一个空白的地图!如下:

baiduMap3

API目录

 

基础地图API

open                                              close

removeEventListener            setPosition

getCurrentLocation                getLocationFromName

getNameFromLocation         showCurrentLocation

setCenter                                    getCenter

setZoomLevel                           setMapAttr

setRotation                                setOverlook

setScaleBar                                setCompass

setTraffic                                    setHeatMap

setBuilding                                setRegion

getRegion                                   zoomIn

zoomOut                                     addAnnotations

removeAnnotations               removeAllAnno

getAnnotationCoords            updateAnnotationCoords

annotationExist                       addLine

addPolygon                                addArc

addCircle                                     removeOverlay

getDistance                                 transCoords

offLineMapInit                          addOfflineListener

removeOfflineListener           getHotCityList

getOfflineCityList                      searchCityByName

getUpdateInfo                            getAllUpdateInfo

downLoad                                    update

pause                                              remove

 

搜索相关api

searchRoute                                drawRoute

removeRoute                              searchBusRoute

drawBusRoute                           searchInCity

searchNearby

 

navigator.baiduMap.base.open(args,success,error)

描述:打开百度地图

args: Object – 传入参数,示例如下:

{
position:Object – 地图的位置及尺寸,例如:{x:0, y:0, w:320, h:480},缺省全屏显示,
center:Object – 地图的中心位置,例如:{lon:116.397, lat:39.910},缺省北京天安门,
zoomLevel:Number – 缩放等级,取值范围3-21,缺省10 ,
events:Object – 可选参数,要监听的事件以及回调,可选值如下:{click:func, dbClick:func, longPress:func, viewChange:func},分别为单击事件、双击事件、长按事件、地图视图发生变化事件,
model:Object – 可选参数,当前model。如果传入model,则会在model onInActive时判地图是否已经被销毁,如果没有则会自动调用close销毁地图
}

success:Function  – 地图成功打开的回调(当地图完全渲染成功后才会调用此回调)

error:Function  – 地图打开出错的回调

navigator.baiduMap.base.close()

描述:关闭百度地图

 

navigator.baiduMap.base.removeEventListener(action)

描述:停止监听地图某一事件

action: String – 要移除监听事件的名称,比如:‘click’

navigator.baiduMap.base.setPosition(args)

描述:调整地图的显示区域及显示大小

args: Object – 传入参数,示例如下:

{
x:Number – 地图左上角的 x 坐标,
y:Number – 地图左上角的 y 坐标,
w:Number – 地图的宽度,
h:Number – 地图的高度,
}

navigator.baiduMap.base.getCurrentLocation(success,error)

描述:获取当前位置的经纬度

success:Function  – 成功回调,返回经纬度与时间戳,返回示例:

{

lon: Number – 经度,

lat:xx : Number – 纬度,

timestamp:String – 时间戳

}

error:Function  – error 失败回调

navigator.baiduMap.base.getLocationFromName(args,success,error)

描述:根据地址信息获取经纬度

args: Object – 传入参数,示例如下:

{
city:String – 地址所在城市,
address:String – 地址信息
}

success:Function  – 成功返回示例:

{lat:39.9151754663074,lon:116.4039058301959}

error:Function  – 失败回调

navigator.baiduMap.base.getNameFromLocation(args,success,error)

描述:根据经纬度查找地址信息

args: Object – 传入参数,示例如下:
{
“lon”:Number – 经度,
“lat”:Number – 纬度,
}

success:Function  – 成功返回示例:

{
    "status": 0, 
    "result": {
        "location": {
            "lng": 116.3969999999999, 
            "lat": 39.91000007743232
        }, 
        "pois": 
[ ], "poiRegions": [ { "direction_desc": "内", "name": "国家大剧院", "tag": "休闲娱乐" } ], "sematic_description": "国家大剧院内", "cityCode": 131, "addressComponent": { "adcode": "110102", "city": "北京市", "country": "中国", "distance": "66", "district": "西城区", "street": "前后井胡同", "street_number": "11号", "country_code": 0, "direction": "南", "province": "北京市" }, "business": "天安门,和平门,前门", "formatted_address": "北京市西城区前后井胡同11号" } }

error:Function  – 失败回调

navigator.baiduMap.base.showCurrentLocation(args)

描述:是否在地图上显示当前位置,如果显示设置显示的样式

参数:

args: Object – 传入参数,示例如下:

{
“isShow”:Boolean – 是否在地图上显示用户位置,
“trackingMode”:String – 如果isShow为否,则可以不传。当前位置显示形式,可选值为none(普通定位模式)/follow(定位跟随模式)/compass(定位罗盘模式),
}

navigator.baiduMap.base.setCenter(args)

描述:设置地图的中心的经纬度

args: Object – 传入参数,示例如下:

{
“lon”:Number – 经度,
“lat”:Number – 纬度
}

navigator.baiduMap.base.getCenter()

描述:获取地图中心点的经纬度

success:Function  – 成功回调,返回示例:{lon:xx,lat:xx,timestamp:xx}

error:Function  – error 失败回调

navigator.baiduMap.base.setZoomLevel(args)

描述:设置百度地图缩放等级,此接口自带动画效果

args: Number – 缩放等级 取值范围:3-21级

navigator.baiduMap.base.setMapAttr(args)

描述:设置百度地图相关属性,包括地图类型,手势

args: Object – 传入参数,示例如下:

{
“type”:String – 设置地图类型,none(空白地图)/standard(标准地图)/satellite(卫星地图)
“zoomEnable”:Boolean – 捏合手势是否可以缩放地图,
“scrollEnable”:Boolean -拖动手势是否可以移动地图,
}

navigator.baiduMap.base.setRotation(args)

描述:设置百度地图旋转角度

args: Number –  地图旋转角度,取值范围:-180 – 180

navigator.baiduMap.base.setOverlook(args)

描述:设置百度地图俯视角度

args: Number –  地图俯视角度,取值范围:-45 – 0

navigator.baiduMap.base.setScaleBar(args)

描述:设置百度地图的比例尺

args: Object – 传入参数,示例如下:

{
“isShow”:Boolean – 是否显示比例尺,
“position”:Object -比例尺的位置,设定坐标以地图左上角为原点,比如:{x:0,y:0},
}

navigator.baiduMap.base.setCompass(args)

描述:设置百度地图指南针位置,只有地图旋转或视角变化时才显示指南针

args: Object – 传入参数,示例如下:

{
“x”:Number – 指南针左上角的x坐标
“y”:Number – 指南针左上角的y坐标
}

navigator.baiduMap.base.setTraffic(args)

描述:设置是否显示交通状况

args: Boolean –  是否显示交通状况

navigator.baiduMap.base.setHeatMap(args)

描述:设定地图是否打开百度城市热力图图层(百度自有数据),注:地图层级大于11时,可显示热力图

args: Boolean –  是否显示热力图

navigator.baiduMap.base.setBuilding(args)

描述:设置是否显示3D楼块效果,地图放大,才会有3D楼快效果,倾斜视角3D效果会更明显

args: Boolean -是否现显示3D楼块效果

navigator.baiduMap.base.setRegion(args)

描述:设置百度地图显示的矩形区域,可以有两种设定方式,分别为(西南+东北的经纬度)/(中心点+经纬差),两种方式任选其一

args: Object – 传入参数,示例如下:

{
“lonDelta”:Number – 矩形区域经度差,当选择西南+东北经纬度的方式时,此参数不需要传入,
“latDelta”:Number – 矩形区域纬度差,当选择西南+东北经纬度的方式时,此参数不需要传入,
“center”:Object 中心点的经纬度,例如:{lon:116.397, lat:39.910},当选择西南+东北经纬度的方式时,此参数不需要传入,
“southwest”:Object 左下经纬度,{lon:116.397, lat:39.910},当选择中心点+经纬差的方式时,此参数不需要传入,
“northeast”:Object 右上经纬度,{lon:116.397, lat:39.910},当选择中心点+经纬差的方式时,此参数不需要传入,
“animation”:Boolean 设置地图的区域时,是否带动画效果,默认为True
}

navigator.baiduMap.base.getRegion(suceess,error)

描述:获取地图显示范围(矩形区域)

success:Function  – 成功返回示例参照setRegion中args参数的第一种设置:即中心点+经纬差,如下:

{

lonDelta : 5,

latDelta : 5,

center : {lon:116.397, lat:39.910}

}

error:Function  – 失败回调

navigator.baiduMap.base.zoomIn()

描述:缩小地图,放大视角,放大一级比例尺,此接口自带动画效果

navigator.baiduMap.base.zoomOut()

描述:放大地图,缩小视角,缩小一级比例尺,此接口自带动画效果

navigator.baiduMap.base.addAnnotations(args,success,error)

描述:在地图上添加自定义标注

args: Array – 传入参数,示例如下:

[
{

id:Number – 标注的id,具有唯一性。移除标注时需要使用该id。

title:String – 标注的主标题,当点击标注时才会显示。

subTitle:String -标注的子标题,当点击标注的时候才会显示。

lon:Number – 要添加标注的经度,

lat:Number – 要添加标注的纬度,

draggable:Boolean – 设置标注是否可拖拽,

color:Number – 可选:navigator.baiduMap.annotationColor.Red(0),默认为红色,有红绿紫三色可选

}
]

success:Function  – 成功的回调

error:Function  – 失败回调

navigator.baiduMap.base.removeAnnotations(args)

描述:移除自定义的标注

args: Array – 由标注的id组成的数组

navigator.baiduMap.base.removeAllAnno()

描述:移除地图上的所有标注

navigator.baiduMap.base.getAnnotationCoords(args,success,error)

描述:获取指定标注的经纬度

args:  Number – 标注的id

success:Function  – 成功的回调,返回示例:{lon:xx,lat:xx},

error:Function  – 失败回调

navigator.baiduMap.base.updateAnnotationCoords(args)

描述:设置某个已添加标注的经纬度

args: Object – 传入参数,示例如下:

{

“id” :Number – 标注的id,
“lat” :Number – 纬度值,
“lon” :Number – 经度值

}

 

navigator.baiduMap.base.annotationExist(args,success,error)

描述:根据id判断某一标注是否存在

args:  Number – 标注的id

success:Function  – 成功的回调,该标注存在

error:Function  – 失败回调,该标注不存在

navigator.baiduMap.base.addLine(args)

描述:在地图上添加自定义折线

args: Object – 传入参数,示例如下:

内部字段

{

“id” :Number – 折线id,唯一性,移除折线时需要使用该参数,
“points” :Array – 折线的多个点组成的数组,用经纬度表示一个点,例如:[{lon:116.297,lat:40.109}],
“styles” :Object – 折线的样式,例如:{borderColor:’#000′, borderWidth:3},颜色支持十六进制,线宽类型为Number,

}

navigator.baiduMap.base.addPolygon(args)

描述:在地图上添加自定义多边形

args: Object – 传入参数,示例如下:

内部字段

{

“id” :Number – 多边形id,
“points” :Array – 多边形的多个点组成的数组,例如:[{lon:116.297,lat:40.109}],
“styles” :Object – 多边形的样式,例如:{borderColor:’#000′,fillColor: ‘#000’,alpha:0.5, borderWidth:3},画笔色与填充色均只支持16进制,透明度取值为0-1

}

navigator.baiduMap.base.addArc(args)

描述:在地图上添加自定义弧形

args: Object – 传入参数,示例如下:

内部字段

{

“id” :Number – 弧形id,
“points” :Array – 弧形的各个点(弧形两端点和弧形中间点)组成的数组,例如:[{lon:116.297,lat:40.109}],
“styles” :Object – 弧形的样式,例如:{borderColor:’#000′, borderWidth:3}

}

navigator.baiduMap.base.addCircle(args)

描述:在地图上添加自定义圆形

args : Object – 传入参数,示例如下:

{

“id” :Number – 圆id,
“center” :Object – 圆形中心点的经纬度,例如:{lon:116.297,lat:40.109},
“radius” :Number – 圆的半径,
“styles” :Object – 圆的样式,例如:{borderColor:’#000′, alpha:0.5,fillColor:’#000′,borderWidth:3}

}

navigator.baiduMap.base.removeOverlay(args)

描述:移除指定id的覆盖物(addLine/addPolygon/addArc/addCircle添加的覆盖物)

args :  Number – 覆盖物的id

navigator.baiduMap.base.getDistance(args)

描述:获取地图两点间的实际距离

参数:

args:Object – 传入参数,示例如下:

{

“start”:Object – 起点经纬度,例如:{lon:106.486654, lat:29.490295},
“end”:Object – 终点经纬度

}

success:Function  – 成功的回调,返回Number类型,单位:米,

error:Function  – 失败回调

navigator.baiduMap.base.transCoords(args)

描述:将其他坐标系坐标转换为百度坐标

args:  Object – 传入参数,示例如下:

内部字段

{

“type”:String – 原始地理坐标类型,gps(GPS设备采集的原始GPS坐标)/common(google地图,soso地图,aliyun地图,mapabc地图和amap地图所用坐标)
“lon”:Number – 原始地理坐标经度
“lat”:Number – 原始地理坐标纬度

}

success:Function  – 成功的回调,返回示例:{lon:xx,lat:xx},

error:Function  – 失败回调

 

离线地图API

navigator.baiduMap.base.offLineMapInit()

描述:离线地图对象初始化,在使用离线地图之前必须调用此接口,返回一个离线地图对象offlineMap

示例:offlineMap = navigator.baiduMap.base.offLineMapInit();

 

offlineMap.addOfflineListener(callBack)

描述:监听离线地图的相关事件

callBack:Function – 当事件触发会调用该方法,并返回状态参数,参数值如下:

{
type: 0, //数字类型;事件类型,取值范围如下:
//0:下载或更新
//1:检测到的压缩包个数
//2:当前解压的离线包
//3:错误的离线包
//4:有新版本
//5:扫描完毕
//6:新增离线包

state: //数字类型;事件状态,
//当 type为 0 时,表示正在下载或更新城市id为state的离线包
//当 type 为1时,表示检测到state个离线压缩包
//当 type 为2时,表示正在解压第state个离线包
//当 type 为3时,表示有state个错误包
//当 type 为4时,表示id为state的城市离线包有更新
//当 type 为5时,表示扫瞄完成,成功导入state个离线包
//当 type 为6时,表示新安装的离线地图数目

updateInfo://JSON对象,当type为0时才有该参数,表示下载进度等信息

内部字段:

{

cityName:String – 正在现在/更新的城市的名字,

cityID:Number – 正在下载/更新的城市的id,

size:Number – 数据包总大小,

serversize:Number – 服务端数据大小,当update为YES时有效,单位:字节,

update:Number- 更新状态,离线包是否有更新(有更新需重新下载),

ratio:Number – 下载比率,100为下载完成,下载完成后会自动导入,status为4时离线包导入完成,

pt:Object – 城市中心经纬度坐标:{lat:xxx,lon:xxx},

status://数字类型;下载状态,

//-1:未定义

//1:正在下载 

//2:等待下载 

                //3:已暂停 

                //4:完成

//5:校验失败

//6:网络异常

//7.读写异常

//8:Wifi网络异常

//9:离线包数据格式异常,需重新下载离线包

                //10:离线包导入中

}

}

offlineMap.removeOfflineListener()

描述:停止监听离线地图的相关事件

offlineMap.getHotCityList(success,error)

描述:获取热门城市列表

success:Function  – 成功的回调,返回值为Array对象,每个数组元素字段如下:

[{

cityName: String – 城市的名字,

cityID: Number – 城市的id,

size: Number – 数据包的大小,

cityType:Number – 城市类型,0:全国;1:省份;2:城市;如果是省份,可以通过childCities得到子城市列表

childCities:Array – 子城市列表 [{name:String-城市的名字 ,cityID:Number-城市的id}]

}]

error:Function  – 失败回调

offlineMap.getOfflineCityList(success,error)

描述:获取支持离线地图的城市列表

success:Function  – 成功的回调,返回值为Array对象,每个数组元素字段如下:

[{

cityName: String – 城市的名字,

cityID: Number – 城市的id,

size: Number – 数据包的大小,

cityType:Number – 城市类型,0:全国;1:省份;2:城市;如果是省份,可以通过childCities得到子城市列表

childCities:Array – 子城市列表 [{name:String-城市的名字 ,cityID:Number-城市的id}]

}]

error:Function  – 失败回调

offlineMap.searchCityByName(args,success,error)

描述:根据城市名搜索该城市离线地图记录

args: String – 城市的名称,

success:Function  – 成功的回调,返回值为Array对象,每个数组元素字段如下:

[{

cityName: String – 城市的名字,

cityID: Number – 城市的id,

size: Number – 数据包的大小,

cityType:Number – 城市类型,0:全国;1:省份;2:城市;如果是省份,可以通过childCities得到子城市列表

childCities:Array – 子城市列表 [{name:String-城市的名字 ,cityID:Number-城市的id}]

}]

error:Function  – 失败回调

offlineMap.getUpdateInfo(args,success,error)

描述:获取指定城市id离线地图更新信息

args: Number – 城市的id,

success:Function  – 成功的回调,返回值为JSON对象,字段如下:

{

cityName:String – 正在现在/更新的城市的名字,

cityID:Number – 正在下载/更新的城市的id,

size:Number – 数据包总大小,

serversize:Number – 服务端数据大小,当update为YES时有效,单位:字节,

update:Number- 更新状态,离线包是否有更新(有更新需重新下载),

ratio:Number – 下载比率,100为下载完成,下载完成后会自动导入,status为4时离线包导入完成,

pt:Object – 城市中心经纬度坐标:{lat:xxx,lon:xxx},

status://数字类型;下载状态, //-1:未定义 //1:正在下载  //2:等待下载  //3:已暂停  //4:完成 //5:校验失败 //6:网络异常 //7.读写异常 //8:Wifi网络异常 //9:离线包数据格式异常,需重新下载离线包 //10:离线包导入中

}

error:Function  – 失败回调

offlineMap.getAllUpdateInfo(success,error)

描述:获取各城市离线地图更新信息

success:Function  – 成功的回调,返回值为Array对象,每个数组元素的字段如下:

[ {

cityName:String – 正在现在/更新的城市的名字,

cityID:Number – 正在下载/更新的城市的id,

size:Number – 数据包总大小,

serversize:Number – 服务端数据大小,当update为YES时有效,单位:字节,

update:Number- 更新状态,离线包是否有更新(有更新需重新下载),

ratio:Number – 下载比率,100为下载完成,下载完成后会自动导入,status为4时离线包导入完成,

pt:Object – 城市中心经纬度坐标:{lat:xxx,lon:xxx},

status://数字类型;下载状态, //-1:未定义 //1:正在下载  //2:等待下载  //3:已暂停  //4:完成 //5:校验失败 //6:网络异常 //7.读写异常 //8:Wifi网络异常 //9:离线包数据格式异常,需重新下载离线包 //10:离线包导入中

}]

error:Function  – 失败回调

offlineMap.downLoad(args,callBack)

描述:启动下载指定城市 id 的离线地图

args: Number – 城市的id,

callBack: Function  – 回调函数,启动成功返回YES,否则返回NO

 

offlineMap.update(args,success,error)

描述:启动更新指定城市 id 的离线地图

args: Number – 城市的id,

successFunction  – 回调函数,启动成功返回YES,否则返回NO

error:Function  – API调用失败的回调

 

offlineMap.pause(args)

描述:暂停下载指定城市id的离线地图

args: Number – 城市的id,

offlineMap.remove(args,callBack)

描述:移除指定城市 id 的离线地图

args: Number – 城市的id,

callBack: Function  – 回调函数,成功返回YES,否则返回NO

 

 

搜索相关API

注意:

使用此类API之前,请先引入com.justep.cordova.plugin.baiduMapSearch插件

由于有些数据结构过于复杂,本文并没有一一列出

由于原生地图SDK的问题,Android平台与iOS平台返回数据结构有稍微差别

navigator.baiduMap.search.searchRoute(args,success,error)

描述:搜索路线方案,可有两种搜索方式,通过经纬度/地名

args: 搜索时传入的参数,示例如下:

{
“type” :String – 路线类型,可选值:drive/transit/walk,
“mode” :String – 传入起点终点的类型是名称还是坐标 name/coor
“policy” :Number – 路线策略0-7,type 为 walk(步行)时,此参数可不传,参考如下:

baiduMapSearch.prototype.routePolicy = {
ecar_fee_first : 0,//驾乘检索策略常量:较少费用
ecar_dis_first : 1,//驾乘检索策略常量:最短距离
ecar_time_first : 2,//驾乘检索策略常量:时间优先
ecar_avoid_jam : 3,//驾乘检索策略常量:躲避拥堵
ebus_no_subway : 4,//公交检索策略常量:不含地铁
ebus_time_first : 5,//公交检索策略常量:时间优先
ebus_transfer_first : 6,//公交检索策略常量:最少换乘
ebus_walk_first : 7//公交检索策略常量:最少步行距离
};
“startCoor” :Object – 当mode为coor时起点的位置,例如:{lon:116.297,lat:40.109},当mode为name时此参数不传
“endCoor” :Object – 当mode为coor终点的位置,当mode为name时此参数不传
“sCityName” :String – 当mode为name时,起点城市的名称,当mode为coor时,此参数不传
“startName” :String – 当mode为name时,起点的名称,当mode为coor时,此参数不传
“eCityName” :String – 当mode为name时,终点城市的名称,当mode为coor时,此参数不传
“endName” :String – 当mode为name时,终点的名称,当mode为coor时,此参数不传
}

successFunction  – 回调函数,返回线路方案对象,示例如下:

{

taxiInfo : Object – 打车信息,可能为空,

suggestAddrResult : Object – 路线搜索地址结果.当输入的起点或终点有多个地点选择时,或者选定的城市没有此地点,但其它城市有(驾乘或步行),返回该实例

routes : Array – 路线方案组成的数组,由于该结构比较复杂,在此不一一列出

}

error:Function  – API调用失败的回调

navigator.baiduMap.search.drawRoute(args)

描述:在地图上显示指定路线

args: 传入的参数,示例如下:

{
“id” :Number – 路线id,removeRoute时使用此id 移除路线,
“autoresizing” :Boolean – 路线渲染结束是否自动调整地图可视区域,默认为True,
“type” : String – 路线的类型,可选值:drive/transit/walk,
“route” :Object – 路线方案,在 searchRoute 时返回的多个路线方案组成的数组中的某一个元素,
}

navigator.baiduMap.search.removeRoute(args)

描述:根据id移除地图上显示的线路

args: Array – 线路id组成的数组

 

navigator.baiduMap.search.searchBusRoute(args,success,error)

描述:搜索公交线路

args: 搜索时传入的参数,示例如下:

{
“city” :String – 城市
“line” :String – 公交、地铁线路号(例如:1路,1号线),
}

successFunction  – 回调函数,返回公交线路信息,示例如下:

{

busCompany : String – 公交公司,

busLineName : String – 公交线路名称

uid : String – 公交线路uid

startTime : String – 首班车时间

endTime : String – 末班车时间

isMonTicket : Number – 是否有月票

busStations : Array – 所有公交站点信息

busSteps : Array – 公交线路分段信息

}

error:Function  – API调用失败的回调

 

navigator.baiduMap.search.drawBusRoute(args)

描述:根据 searchBusRoute 搜索返回的查询线路详情并绘制在地图上

args: 传入的参数,示例如下:

{
“id” :Number – 地图上显示的公交、地铁路线的 id,removeBusRoute 时使用此 id
“autoresizing” :Boolean – 路线渲染结束是否自动调整地图可视区域,默认为True,
“busLine” :Object – searchBusRoute查询后成功返回的结果
}

navigator.baiduMap.search.searchInCity(args,success,error)

描述:根据单个关键字搜索兴趣点

args: 搜索时传入的参数,示例如下:

{
“city” :String – 城市
“keyword” :String – 搜索的关键字
}

successFunction  – 回调函数,返回检索信息,示例如下:

{

totalPoiNum : Number -本次POI搜索的总结果数,

currPoiNum : Number -当前页的POI结果数,

pageNum : Number -本次POI搜索的总页数

pageIndex : Number -当前页的索引

poiInfoList : Array -POI列表

cityList : Array -城市列表

}

error:Function  – API调用失败的回调

 

navigator.baiduMap.search.searchNearby(args,success,error)

描述:根据单个关键字在圆形区域内搜索兴趣点

args: 搜索时传入的参数,示例如下:

{
“lon” :Number – 指定区域中心的经度,
“lat” :Number – 指定区域中心的纬度,
“radius” :Number – 搜索的半径,单位m(米)
“keyword” :String – 搜索的关键字
}

successFunction  – 回调函数,返回检索信息,示例如下:

{

totalPoiNum : Number -本次POI搜索的总结果数,

currPoiNum : Number -当前页的POI结果数,

pageNum : Number -本次POI搜索的总页数

pageIndex : Number -当前页的索引

poiInfoList : Array -POI列表

cityList : Array -城市列表

}

error:Function  – API调用失败的回调

 

 

由于作者水平有限,文章难免会有所疏漏,如您对于文章中的内容有异议,欢迎论坛反馈!本文会持续更新。