作者:孟令文
百度地图iOS SDK v3.0.0 Sample共有24个Demo,每个Demo的说明如下:
-------------------------------------------------------------------------------------
一、
Demo名称:基本/个性化地图功能
文件名: MapViewBaseDemoViewController.mm
简介:创建一张百度地图并管理地图的生命周期
详述:
(1)创建一张最简单的百度地图;
(2)管理地图的生命周期,具体请参看代码部分的相关注释;
(3)基本地图和个性化地图之间切换;
-------------------------------------------------------------------------------------
二、
Demo名称:多地图展示功能
文件名: MultiMapViewDemo.mm
简介:在一个页面中创建多个地图
详述:
(1)在一个页面内创建多个相互独立的地图
(2)地图Logo位置变更,支持6个位置
-------------------------------------------------------------------------------------
三、
Demo名称:图层展示功能
文件名: MapViewDemoViewController.mm
简介:展示普通图、卫星图、路况图和路况卫星图
详述:
(1)详情请参考代码部分或官网开发指南相关章节;
-------------------------------------------------------------------------------------
四、
Demo名称:地图操作功能
文件名: MapViewControlDemoViewController.mm
简介:介绍平移和缩放地图,双指操作地图,监听地图点击事件
详述:
(1)介绍地图缩放级别、旋转度和俯视度的get和set方法;
(2)监听单击、双击和长按地图事件;
(3)单击、双击或长按地图获取该点的经纬度坐标;
(4)对地图显示内容进行截图;
-------------------------------------------------------------------------------------
五、
Demo名称:UI控制功能
文件名: MapViewUISettingDemoViewController.mm
简介:介绍开关手势功能和显示隐藏UI控件
详述:
(1)地图操作开关:平移、缩放;
(2)控件显示开关:显示/隐藏比例尺控件;
(3)指南针位置控制:显示在地图左上角或者右上角(仅举例),开发者可据实际情况任意改变位置;
(4)禁用所有手势:控制是否一并禁止所有手势。
(5)设置边界区域:给地图增加边界。地图可操作区域和控件显示,都被限制在地图设定的边界内;
(6)您还可以参照开发文档控制比例尺的显示位置;
-------------------------------------------------------------------------------------
六、
Demo名称:定位功能
文件名: LocationDemoViewController.mm
简介:介绍定位图层的基本用法
详述:
(1)介绍如何开始定位和停止定位;
(2)默认定位的状态显示为普通态,v2.0.2版本开始提供定位的跟随态和罗盘态;
(3)开发者可以自己修改icon_center_point.png和icon_center_point@2x.png资源修改默认的定位图标;
(4)支持开发者自行定义精度圈边框和填充区域的颜色。
-------------------------------------------------------------------------------------
七、
Demo名称:覆盖物功能
文件名: AnnotationDemoViewController.mm
简介:介绍使用SDK内置方法绘制点线面等几何图形和如何添加标注
详述:
(1)内置覆盖物标签:
a、使用内置方法绘制几何图形;
b、通过BMKMapView的addOverlay接口添加一个覆盖物;
c、开发者可以实现BMKMapViewDelegate中mapView:viewForOverlay;接口,提供要添加到地图中的
标注的BMKOverlayView,开发者可以扩展此类丰富更多的功
(2)添加标注标签:
a、给标注添加落下的动画效果,点击标注可弹出对话框,还可以拖拽标注;
b、通过BMKMapView的addAnnotation接口添加一个标注;
c、开发者可以实现BMKMapViewDelegate中mapView:viewForAnnotation;接口,提供要添加到地图中
的标注的BMKAnnotationView,开发者可以扩展此类丰富更多的功能;
d、注意:addAnnotation的调用必须在viewDidAppear中或者之后的时间添加
(3)添加图片图层:
a、图片图层可随地图的平移、缩放、旋转等操作做相应的变换;
b、图片图层是一种特殊的Overlay, 它位于底图和底图标注层之间(即图片图层不会遮挡地图标注信息);
c、图片图层的添加顺序不会影响其他图层(例如:POI搜索图层、我的位置图层等)的叠加关系;
d、图片图层对象初始化的方法有两种:1)根据指定经纬度坐标生成 2)根据指定区域生成;
-------------------------------------------------------------------------------------
八、
Demo名称:自定义绘制
文件名: CustomOverlayDemoViewController.mm
简介:演示如何自定义Overlay
详述:
(1)介绍如何自定义Overlay绘制各种自定义图形
-------------------------------------------------------------------------------------
九、
Demo名称:POI搜索功能
文件名: POISearchDemoViewController.mm
简介:介绍POI查询
详述:
(1)搜索关键词后,点击“下一组数据”按钮可查看下一组POI查询数据;
-------------------------------------------------------------------------------------
十、
Demo名称:地理编码功能
文件名: GeoCodeDemoViewController.mm
简介:介绍地址信息与坐标之间的相互转换
详述:
(1)正向地理编码:将地址信息转换为经纬度坐标;
(2)反向地理编码:将经纬度坐标转换为地址信息;
-------------------------------------------------------------------------------------
十一、
Demo名称:路径规划功能
文件名: RouteSearchDemoViewController.mm
简介:介绍公交、驾车、骑行和步行三种路径规划方法和驾车途经点路径规划方法
详述:
(1)驾车查询可以使用途经点查询功能,详见官网开发指南“服务类->驾车路线途经点检索”;
-------------------------------------------------------------------------------------
十二、
Demo名称:公交线路查询功能
文件名: BusLineSearchViewController.mm
简介:介绍查询公交线路功能
(1)可以查询往返两个方向的公交线路;
-------------------------------------------------------------------------------------
十三、
Demo名称:行政区域边界数据检索
文件名:DistrictSearchDemoViewController.mm
简介:介绍如何使用行政区域边界数据检索功能,绘制行政区覆盖物和边框
详述:
(1)通过输入省、市、区/县的名称,绘制出行政区覆盖物和边框
-------------------------------------------------------------------------------------
十四、
Demo名称:离线地图功能
文件名: OfflineDemoViewController.mm
简介:介绍如何下载和使用离线地图
详述:
(1)可以搜索、下载、删除、查看离线地图;
-------------------------------------------------------------------------------------
十五、
Demo名称:热力图功能
文件名: HeatMapDemo.mm
简介:介绍如何使用热力图
详述:
(1)根据用户传入的热力图数据绘制热力图;
(2)删除热力图
-------------------------------------------------------------------------------------
十六、
Demo名称:短串分享功能
文件名: ShortUrlShareDemoViewController.mm
简介:将POI点、反Geo点、公交/驾车/骑行/步行线路规划,生成短链接以分享给好友
详述:
(1)将POI点、反Geo点、公交/驾车/骑行/步行线路规划,生成短链接串,此链接可通过短信等形式分享给好友;
(2)好友在终端设备点击此链接可快速打开Web地图、百度地图客户端进行信息展示;
(3)本demo仅演示使用短信分享,开发者可使用其他分享组件(如百度的社会化组件)进行分享,
详见http://developer.baidu.com/soc/share;
(4)目前暂时开放了“POI搜索结果分享”、“公交/驾车/骑行/步行线路规划”和“反向地理编码结果分享”;
(5)日后会开放更多的功能,欢迎广大开发者使用短串分享功能;
-------------------------------------------------------------------------------------
十七、
Demo名称:LBS.云检索
文件名: CloudSearchDemoViewController.mm
简介:介绍如何使用LBS.云检索用户自有数据
详述:
(1)LBS.云是百度地图针对LBS开发者推出的平台级服务;
(2)提供海量位置数据存储、检索、展示一体化解决方案;
(3)该服务对开发者免费开放;
(4)Demo中放入了测试用ak,开发者请申请并更换为自己的【服务端】ak;
(5)开发者在LBS开放平台官网添加数据后需发布到检索并更换demo中的geoTableId;
(6)其他注意事项请参考【CloudSearchDemoViewController.mm文件内的注释部分】;
(7)LBS.云检索使用方法请参考开发指南“LBS云服务”部分;
(8)详细了解LBS.云,欢迎访问:http://developer.baidu.com/map/lbs-cloud.htm
(9)申请ak及管理数据等问题,欢迎访问LBS开放平台官网:http://lbsyun.baidu.com/
(10)开发过程中如有任何问题,也可以访问LBS开放平台论坛:http://bbs.lbsyun.baidu.com/
-------------------------------------------------------------------------------------
十八、
Demo名称:调启地图客户端
文件名:OpenBaiduMapDemo.mm
简介:介绍如何通过地图SDK打开百度地图实现相应的业务功能
详述:
(1)启动百度地图驾车导航;
(2)启动百度地图POI周边检索;
(3)启动百度地图POI详情页面;
(4)启动百度地图步行线路规划;
(5)启动百度地图驾车线路规划;
(6)启动百度地图公交路线规划;
(7)启动百度地图骑行导航;(需百度地图App 8.8以上版本支持)
(8)启动百度地图步行导航;(需百度地图App 8.8以上版本支持)
(9)启动百度地图全景;
-------------------------------------------------------------------------------------
十九、
Demo名称:OpenGL绘制功能
文件名:OpenGLDemoViewController.mm
简介:介绍如何通过接口进行自定义的OpenGL绘制
详述:
在delegate回调方法- (void)mapView:(BMKMapView *)mapView onDrawMapFrame:(BMKMapStatus *)status 中根据当前地图的状态进行绘制(具体参照demo)。
-------------------------------------------------------------------------------------
二十、
Demo名称:收藏夹功能
文件名: FavoritesDemoViewController.mm
简介:介绍如何创建、管理本地点数据
详述:
(1)新建本地点收藏;
(2)查看已收藏本地点;
(3)删除已收藏本地点;
-------------------------------------------------------------------------------------
二十一、
Demo名称:周边雷达功能
文件名: RadarNearbyViewController.mm
注意:需要把应用的key在官网的雷达注册页面进行相关的注册才能使用!
简介:介绍如果使用周边雷达功能上传位置、检索周边的人
详述:
(1)获取位置信息并单次上传服务端;
(2)获取位置信息连续上传服务端;
(3)检索周边用户的位置;
(4)用列表的形式及地图的形式展示周边用户的位置等信息;
-------------------------------------------------------------------------------------
二十二、
Demo名称:点聚合功能
文件名: ClusterDemoViewController.m
m
简介:新增点聚合功能,可通过缩小地图层级,将定义范围内的多个标注点,聚合显示成一个标注点
-------------------------------------------------------------------------------------
二十三、
Demo名称:瓦片图功能
文件名: TileLayerDemoViewController.mm
简介:瓦片图层tileOverlay, 开发者可在地图的指定位置上添加一个瓦片图层。
该图层可随地图的平移、缩放、旋转等操作做相应的变换
(1)支持在线加载瓦片图 和 离线加载瓦片图 2种方式 显示地图
(2)将地图类型设置为NONE,不下载百度底图
(3)控制了地图显示范围,仅显示设置范围内的地图
----------------------------------------------------------------------------------
二十四、
Demo名称:室内功能
文件名: IndoorDemoViewController.mm
简介:展示室内图,并进行室内检索
(1)展示室内图
(2)室内检索