百度地图SDK for iOS v4.0.0 类参考
output
headers
BMKVersion.h
1
//
2
// BMKVersion.h
3
// BMapKit
4
//
5
// Copyright 2011 Baidu Inc. All rights reserved.
6
//
7
8
#import <UIKit/UIKit.h>
9
10
11
/*****更新日志:*****
12
V0.1.0: 测试版
13
支持地图浏览,基础操作
14
支持POI搜索
15
支持路线搜索
16
支持地理编码功能
17
--------------------
18
V1.0.0:正式发布版
19
地图浏览,操作,多点触摸,动画
20
标注,覆盖物
21
POI、路线搜索
22
地理编码、反地理编码
23
定位图层
24
--------------------
25
V1.1.0:
26
离线地图支持
27
--------------------
28
V1.1.1:
29
增加suggestionSearch接口
30
可以动态更改annotation title
31
fix小内存泄露问题
32
--------------------
33
V1.2.1:
34
增加busLineSearch接口
35
修复定位圈范围内不能拖动地图的bug
36
37
--------------------
38
V2.0.0
39
40
新增:
41
全新的3D矢量地图渲染
42
BMKMapView设定地图旋转俯视角度:rotation、overlooking
43
BMKMapView设定指南针显示位置:compassPosition
44
BMKMapView控制生命周期:viewWillAppear、viewWillDisappear
45
地图标注可点,BMKMapViewDelegate新增接口回调接口onClickedMapPoi
46
BMKAnnotationView设置annotation是否启用3D模式:enabled3D
47
overlay绘制方式改变,采用opengl绘制:
48
BMKOverlayView使用opengl渲染接口:glRender子类重载此函数实现gl绘制
49
基本opengl线绘制:renderLinesWithPoints
50
基本opengl面绘制:renderRegionWithPointsl
51
全新的矢量离线地图数据:
52
BMKOfflineMap下载离线地图:start
53
BMKOfflineMap更新离线地图:update
54
BMKOfflineMap暂停下载或更新:pasue
55
获得热点城市列表:getHotCityList
56
获得支持离线数据的城市:getOfflineCityList
57
根据城市名查询城市信息:searchCity
58
更新:
59
BMKMapView的缩放级别zoomLevel更新为float型,实现无级缩放
60
更新地图类型枚举:
61
enum { BMKMapTypeStandard = 1, ///< 标准地图
62
BMKMapTypeTrafficOn = 2, ///< 实时路况
63
BMKMapTypeSatellite = 4, ///< 卫星地图
64
BMKMapTypeTrafficAndSatellite = 8, ///< 同时打开实时路况和卫星地图
65
};
66
67
68
--------------------
69
v2.0.1
70
新增:
71
§ MapView增加事件监听
72
BMKMapviewDelegate中- mapView: onClickedMapBlank:方法监听地图单击事件
73
BMKMapviewDelegate中- mapView: onDoubleClick:方法监听地图双击事件
74
BMKMapviewDelegate中- mapView: onLongClick:方法监听地图长按事件
75
§ 地图截图功能
76
BMKmapview中 -(UIImage*) takeSnapshot;
77
§ 路径规划增加途经点
78
BMKSearch中- (BOOL)drivingSearch: startNode: endCity: endNode: throughWayPoints:
79
§ suggestion搜索支持按城市搜索
80
优化:
81
§ 全面支持iPad
82
§ 优化添加海量annotation逻辑
83
§ BMKOfflineMap中:
84
- (BOOL)pasue:(int)cityID;
85
改为
86
- (BOOL)pause:(int)cityID
87
§ BMKMapview中:
88
@property (nonatomic) CGPoint compassPositon;
89
改为
90
@property (nonatomic) CGPoint compassPosition;
91
§ BMKRouteAddrResult结构添加属性:
92
@synthesize wayPointPoiList;
93
@synthesize wayPointCityList;
94
§ BMKPlanNode中添加属性:
95
@synthesize cityName; 添加城市属性
96
§ BMKSuggestionresult结构添加属性:
97
@synthesize districtList; 返回区域列表
98
修复:
99
§ 修复与第三方类库冲突的问题
100
修复与gzip、Reachability、png、jpeg、json、xml、sqlite等第三方类库冲突问题
101
102
103
--------------------
104
v2.0.2
105
新增:
106
1.全新的key验证体系
107
108
2.增加短串分享接口
109
1)在BMKType中新增数据结构:BMK_SHARE_URL_TYPE(分享串数据类型)
110
2)在BMKSearch中新增接口-(BOOL)poiDetailShareUrl:(NSString*) uid; 发起poi短串搜索
111
3)在BMKSearch中新增接口-(BOOL)reverseGeoShareUrl:(CLLocationCoordinate2D)coor
112
poiName:(NSString*)name
113
poiAddress:(NSString*)address; 发起反geo短串搜索
114
4)在BMKSearchDelegate中新增接口-(void)onGetShareUrl:(NSString*) url
115
withType:(BMK_SHARE_URL_TYPE) urlType
116
errorCode:(int)error; 返回短串分享url
117
3.比例尺控件
118
1)在BMKMapview中新增属性@property (nonatomic) BOOL showMapScaleBar;比例尺是否显示
119
2)在BMKMapview中新增属性@property (nonatomic) CGPoint mapScaleBarPosition;比例尺显示位置
120
121
4.定位罗盘效果
122
1)在BMKMapview中新增数据结构:BMKUserTrackingMode(定位模式)
123
2)在BMKMapview中新增属性@property (nonattomic) BMKUserTrackingMode userTrackingMode; 设定定位模式
124
125
5.驾车避让拥堵策略
126
1)在BMKSearch中新增驾车检索策略常量BMKCarTrafficFIRST = 60,///<驾车检索策略常量:躲避拥堵
127
128
6.路径查询增加时间、打车费用结果
129
1)在BMKSearch中新增类:BMKTime(此类代表一个时间段,每个属性都是一个时间段。)
130
2)在BMKTransitRoutePlan中新增属性@property (nonatomic) float price; 白天打车估价,单位(元)
131
3)在BMKTransitRoutePlan中新增属性@property (nonatomic, retain) BMKTime* time; 方案所用时间
132
4)在BMKRoutePlan中新增属性@property (nonatomic, retain) BMKTime* time; 方案预计的行驶时间
133
134
优化:
135
1)对在BMKMapview中的接口- (void)removeAnnotations:(NSArray *)annotations;(移除一组标注)进行了优化
136
137
修复:
138
1)修复离线地图――支持离线包的城市列表中省份下无子城市的问题
139
2)修复前台数据请求后退至后台opengl继续渲染,应用Crash的问题
140
141
--------------------
142
v2.1.0
143
新增:
144
1.全面接入LBS.云V2.0,全面开放LBS.云检索能力
145
1)在BMKCloudSearchInfo中新增类BMKBaseCloudSearchInfo,BMKCloudSearchInfo,BMKCloudLocalSearchInfo,BMKCloudNearbySearchInfo,BMKCloudBoundSearchInfo,BMKCloudDetailSearchInfo来存储云检索参数
146
2)在BMKCloudPOIList中新增类BMKCloudPOIList来存储云检索结果
147
3)在BMKCloudSearch中新增数据结构:BMKCloudSearchType(云检索类型)
148
4)在BMKCloudSearch中新增接口- (BOOL)localSearchWithSearchInfo:;发起本地云检索
149
5)在BMKCloudSearch中新增接口- (BOOL) nearbySearchWithSearchInfo:;发起周边云检索
150
6)在BMKCloudSearch中新增接口- (BOOL) boundSearchWithSearchInfo:;发起矩形云检索
151
7)在BMKCloudSearch中新增接口- (BOOL) detailSearchWithSearchInfo:;发起详情云检索
152
8)在BMKCloudSearch中新增接口- (void)onGetCloudPoiResult: searchType: errorCode:;返回云检索列表结果
153
9)在BMKCloudSearch中新增接口- (void) onGetCloudPoiDetailResult: searchType: errorCode:;返回云检索详情结果
154
2.增加图片图层BMKGroundOverlay、BMKGroundOverlayView
155
1)在BMKGroundOverlay中新增属性@property (nonatomic,assign) CLLocationCoordinate2D pt;两种绘制GroundOverlay的方式之一:绘制的位置地理坐标,与anchor配对使用
156
2)在BMKGroundOverlay中新增属性@property (nonatomic,assign) CGPoint anchor;用位置绘制时图片的锚点,图片左上角为(0.0f,0.0f),向右向下为正
157
3)在BMKGroundOverlay中新增属性@property (nonatomic,assign) BMKCoordinateBounds bound;两种绘制GroundOverlay的方式之二:绘制的地理区域范围,图片在此区域内合理缩放
158
4)在BMKGroundOverlay中新增属性@property(nonatomic, strong) UIImage *icon;绘制图片
159
5)在BMKGroundOverlay中新增接口+(BMKGroundOverlay*)groundOverlayWithPosition:zoomLevel:anchor:icon:;根据指定经纬度坐标生成一个groundOverlay
160
6)在BMKGroundOverlay中新增接口+(BMKGroundOverlay*) groundOverlayWithBounds:icon:;根据指定区域生成一个groundOverlay
161
3.增加自定义泡泡
162
1)在BMKActionPaopaoView中新增接口- (id)initWithCustomView:(UIView*)customView;泡泡显示View自定义
163
4.增加地图中心点映射屏幕点
164
1)在BMKMapView中新增接口- (void)setMapCenterToScreenPt:;设置地图中心点在地图中的屏幕坐标位置
165
5.增加以手势触摸点中心为基准旋转缩放底图功能和控制开关
166
1)在BMKMapView中新增属性@property(nonatomic, getter=isChangeWithTouchPointCenterEnabled) BOOL ChangeWithTouchPointCenterEnabled;设定地图View能否支持以手势中心点为轴进行旋转和缩放(默认以屏幕中心点为旋转和缩放中心)
167
6.增加同时改变地图俯角,旋转角度,缩放比例,中心点接口
168
1)新增类BMKMapStatus来表示地图状态参数
169
2)在BMKMapView中新增接口- (void)setMapStatus:;设置地图状态
170
3)在BMKMapView中新增接口- (void)setMapStatus: withAnimation:;设置地图状态(指定是否需要动画效果)
171
4)在BMKMapView中新增接口- (void)setMapStatus: withAnimation: withAnimationTime:;设置地图状态(指定是否需要动画效果+指定动画时间)
172
5)在BMKMapView中新增接口- (BMKMapStatus*)getMapStatus;获取地图状态
173
7.增加地图状态改变实时通知
174
1)在BMKMapView中新增接口- (void)mapStatusDidChanged:;地图状态改变完成后会调用此接口
175
176
优化:
177
1.点击Annotation置顶
178
1)在BMKMapView中新增属性@property (nonatomic, assign) BOOL isSelectedAnnotationViewFront;设定是否总让选中的annotaion置于最前面
179
2.定位脱离MapView
180
1)在BMKUserLocation中新增接口-(void)startUserLocationService;打开定位服务
181
2)在BMKUserLocation中新增接口-(void)stopUserLocationService;关闭定位服务
182
3)在BMKUserLocation中新增接口- (void)viewDidGetLocatingUser:;开启定位后,会自动调用此接口返回当前位置的经纬度
183
3.定位图层样式自定义灵活性优化
184
1)新增类BMKLocationViewDisplayParam来存储定位图层自定义参数
185
2)在BMKMapView中新增接口- (void)updateLocationViewWithParam:;动态定制定位图层样式
186
187
修复:
188
1)修复点击annotation回调长按监听接口- (void)mapview: onLongClick:的问题
189
2)修复TransitRoutePlan中Content属性为空的问题
190
3)修复缩放底图,接口- (void)mapView: regionDidChangeAnimated:不回调的问题
191
4)修复从其他页面返回原页面泡泡被压盖的问题
192
5)解决WiFi无网络信号时首次加载卡屏的问题
193
194
--------------------
195
v2.1.1
196
新增:
197
1.新增调启百度地图导航的接口(百度地图导航和Web端导航)
198
在BMKNavigation中新增类枚举类型的数据结构BMK_NAVI_TYPE来定义调起导航的两种类型:BMK_NAVI_TYPE_NATIVE(调起客户端导航)和BMK_NAVI_TYPE_WEB(调起web导航)
199
在BMKNavigation中新增类NaviPara来管理调起导航时传入的参数
200
在类NaviPara中新增属性@property (nonatomic, retain) BMKPlanNode* startPoint;定义导航的起点
201
在类NaviPara中新增属性@property (nonatomic, retain) BMKPlanNode* endPoint;定义导航的终点
202
在类NaviPara中新增属性@property (nonatomic, assign) BMK_NAVI_TYPE naviType;定义导航的类型
203
在类NaviPara中新增属性@property (nonatomic, retain) NSString* appScheme;定义应用返回scheme
204
在类NaviPara中新增属性@property (nonatomic, retain) NSString* appName;定义应用名称
205
在BMKNavigation中新增接口+ (void)openBaiduMapNavigation:;根据传入的参数调启导航
206
207
2.几何图形绘制中,增加弧线绘制方法
208
在BMKArcline中新增接口+ (BMKArcline *)arclineWithPoints:;根据指定坐标点生成一段圆弧
209
在BMKArcline中新增接口+ (BMKArcline *)arclineWithCoordinates:;根据指定经纬度生成一段圆弧
210
在类BMKArclineView中新增属性@property (nonatomic, readonly) BMKArcline *arcline;来定义该View对应的圆弧数据对象
211
在BMKArclineView中新增接口- (id)initWithArcline:;根据指定的弧线生成一个圆弧View
212
213
3.几何图形绘制中,扩增凹多边形绘制能力
214
215
4.新增Key验证返回值
216
在BMKMapManager中新增枚举数据类型EN_PERMISSION_STATUS类来定义key验证错误码
217
服务端具体返回的错误码请参见http://developer.baidu.com/map/lbs-appendix.htm#.appendix2
218
219
5.新增公交换乘查询中的结果字段
220
在类BMKLine中新增属性@property (nonatomic) int zonePrice;定义路段价格
221
在类BMKLine中新增属性@property (nonatomic) int totalPrice;定义线路总价格
222
在类BMKLine中新增属性@property (nonatomic) int time;定义线路耗时,单位:秒
223
在类BMKRoute中新增属性@property (nonatomic) int time;定义此路段的消耗时间,单位:秒
224
225
优化:
226
优化Key鉴权认证策略
227
优化几何图形绘制中,折线段绘制末端圆滑
228
提升添加、删除几何图形覆盖物的效率
229
修复:
230
修复iOS7系统下,定位图层拖图时卡顿的bug
231
修复POI检索结果中,结果页索引始终为0的bug
232
修复驾车线路规划中,最后一个节点提示信息有误的bug
233
--------------------
234
v2.2.0
235
新增:
236
1. 新增地图多实例能力,开发者可在同一个页面上构建多张相互独立的地图,各地图上的覆盖物互不干扰;
237
2. 新增检索多实例能力,开发者可并行发起多个检索来满足自己实际的业务需求
238
由于新增检索多实例能力,因此需要在BMKSearchDelegate的回调中增加searcher参数来表明是哪个检索对象发起的检 索。所以应用检索多实例时需要将检索结果和searcher来进行一一对应。示例如下:
239
- (void)onGetPoiResult:(BMKSearch*)searcher result:(NSArray*)poiResultListsearchType:(int)type errorCode:(int)error{
240
if(searcher==_search){
241
NSLog(@"这是_search 对应的POI搜索结果");
242
}else if(searcher==_search2){
243
NSLog(@"这是_search2对应的POI搜索结果");
244
}
245
}
246
3. 新增地图最大、最小缩放等级的控制方法
247
在类BMKMapView中新增属性@property (nonatomic) float minZoomLevel;来设定地图的自定义最小比例尺级别
248
在类BMKMapView中新增属性@property (nonatomic) float maxZoomLevel;来设定地图的自定义最大比例尺级别
249
4. 新增地图操作的手势控制开关
250
在类BMKMapView中新增属性@property(nonatomic, getter=isZoomEnabledWithTap) BOOL zoomEnabledWithTap;来设定地图View能否支持用户单指双击放大地图,双指单击缩小地图
251
在类BMKMapView中新增属性@property(nonatomic, getter=isOverlookEnabled) BOOL overlookEnabled;来设定地图View能否支持俯仰角
252
在类BMKMapView中新增属性@property(nonatomic, getter=isRotateEnabled) BOOL rotateEnabled;来设定地图View能否支持旋转
253
254
255
修复:
256
1. 修复遗留zip库冲突问题
257
2. 解决Documents下的非用户数据上传iCloud的问题
258
3. 修复BMKMapViewDelegate中regionDidChangeAnimated / regionWillChangeAnimated图区变化问题
259
--------------------
260
v2.2.1
261
修复:
262
1. 修复v2.2.0版本覆盖安装后,地图无法正常显示的问题
263
2. 修复地图高级别下,道路名称不显示的问题
264
3. 修复BMKMapManage的stop方法不可用的问题
265
4. 修复setMapStatus中设置地图等级异常的问题
266
5. 修复地图中心点偏移时,拖动地图覆盖物异常的问题
267
6. 修复BMKMapView中手势控制相关的enable属性获取不正确的问题
268
7. 修复与XML库冲突的问题
269
--------------------
270
v2.3.0
271
新增:
272
可根据开发者的实际需求,下载满足需求的定制功能开发包
273
1. 基础地图:包括基本矢量地图、卫星图、实时路况图、离线地图及各种地图覆盖物,此外还包括各种与地图相关的操作和事件监听
274
2. 检索功能:包括POI检索、公交信息查询、路线规划、正向/反向地理编码、在线建议查询、短串分享等功能
275
针对检索业务设计了全新更易用、学习成本更低的程序功能接口
276
3. LBS云检索:提供周边、区域、城市内、详情多种方式检索用户存储在LBS云内的自有数据
277
4. 定位功能:提供便捷的接口,帮助用户快捷获取当前位置信息
278
实现全面升级优化,定位功能可脱离地图单独使用
279
5. 计算工具:包括测距(两点之间地理距离)、坐标转换、调起百度地图导航等功能
280
--------------------
281
v2.4.0
282
新增:
283
基础地图
284
1. 开放热力图绘制能力,帮助用户绘制自有数据热力图;
285
在文件BMKHeatMap.h中新增类BMKHeatMapNode来表示热力图数据的单个数据节点
286
在类BMKHeatMapNode中新增属性@property (nonatomic) CLLocationCoordinate2D pt;定义点的位置坐标
287
在类BMKHeatMapNode中新增属性@property (nonatomic) double intensity;定义点的强度权值
288
在BMKHeatMap中新增类BMKHeatMap来存储热力图的绘制数据和自定义热力图的显示样式
289
在类BMKHeatMap中新增属性@property (nonatomic, assign) int mRadius; 设置热力图的柔化半径
290
在类BMKHeatMap中新增属性@property (nonatomic, retain) BMKGradient* mGradient; 设置热力图的渐变色
291
在类BMKHeatMap中新增属性@property (nonatomic, assign) double mOpacity; 设置热力图的透明度
292
在类BMKHeatMap中新增属性@property (nonatomic, retain) NSMutableArray* mData; 设置热力图数据
293
在类BMKMapView中新增方法- (void)addHeatMap:;来添加热力图
294
在类BMKMapView中新增方法- (void)removeHeatMap;来删除热力图
295
296
检索功能
297
1. 开放POI的Place详情信息检索能力;
298
在BMKPoiSearchOption.h文件中新增poi详情检索信息类BMKPoiDetailSearchOption
299
在类 BMKPoiDetailSearchOption中新增属性@property (nonatomic, retain) NSString* poiUid; poi的uid
300
在BMKPoiSearchType.h文件中新增poi详情检索结果类BMKPoiDetailResult
301
在类BMKPoiSearch中新增方法- (BOOL)poiDetailSearch:;来根据poi uid 发起poi详情检索
302
在BMKPoiSearchDelegate中新增回调- (void)onGetPoiDetailResult: result: errorCode:;来返回POI详情搜索结果
303
304
定位功能
305
1. 新增定位多实例,满足开发者在多个页面分别使用定位的需求;
306
优化:
307
1. 高级别地图下做平移操作时,标注覆盖物移动流畅性优化;
308
修复:
309
1. 修复相邻地形图图层拼接时,接缝过大的问题;
310
2. 修复检索内存泄露的问题;
311
3. 修复定位图层内存泄露的问题;
312
--------------------
313
v2.4.1
314
优化:
315
1. 优化底图相关的内存使用问题;
316
317
--------------------
318
v2.5.0
319
使用Xcode6创建工程时注意事项如下:
320
在info.plist中添加:Bundle display name (Xcode6新建的项目没有此配置,若没有会造成manager start failed)
321
【 新 增 】
322
1. 新增对arm64 CPU架构的适配;
323
基础地图
324
1. 新增对iPhone6、iPhone6 plus的屏幕适配;
325
定位功能
326
1. 新增对iOS8定位的适配;
327
在使用SDK为您提供的定位功能时,注意事项如下:
328
需要在info.plist里添加(以下二选一,两个都添加默认使用NSLocationWhenInUseUsageDescription):
329
NSLocationWhenInUseUsageDescription ,允许在前台使用时获取GPS的描述
330
NSLocationAlwaysUsageDescription ,允许永久使用GPS的描述
331
【 修 复 】
332
修复Tabber控制器中使用定位弹出框异常的问题;
333
修复scrollenable=no,仍可以移动地图的问题;
334
修复多边形在特定坐标下显示异常问题;
335
修复定位时间戳错误的问题;
336
修复autolayout时,BMKMapView横屏时无法自动扩展的问题;
337
修复从B页返回到A页后,在A页的viewWillAppear方法中setCenterCoordinate无效的问题;
338
339
--------------------
340
v2.6.0
341
注意:新版本开发包头文件中部分接口和枚举类型有变更,请确保使用最新版本的头文件。
342
【 变 更 】
343
定位功能
344
1、修改BMKLocationServiceDelegate:
345
- (void)didUpdateBMKUserLocation:(BMKUserLocation *)userLocation; //修改用户位置更新后的回调
346
347
【 新 增 】
348
基础地图
349
1. 地图类型修改为:enum {
350
BMKMapTypeStandard = 1, ///<标准地图
351
BMKMapTypeSatellite = 2, ///<卫星地图
352
};
353
typedefNSUIntegerBMKMapType;
354
2. 在类BMKMapView中新增:
355
属性:baiduHeatMapEnabled,设定地图是否打开百度城市热力图图层(百度自有数据)
356
接口:- isSurpportBaiduHeatMap,判断当前图区是否支持百度热力图
357
属性:buildingsEnabled ,设定地图是否现实3D楼块效果
358
属性:trafficEnabled, 设定地图是否打开路况图层
359
接口:- (void)showAnnotations: animated:,设置地图使显示区域显示所有annotations
360
接口:+(void)willBackGround,当应用即将后台时调用,停止一切调用opengl相关的操作
361
接口:+(void)didForeGround,当应用恢复前台状态时调用
362
3. 在类BMKMapViewDelegate中新增接口:
363
- (void)mapViewDidFinishLoading: 地图初始化完毕时会调用
364
- (void)mapView: onDrawMapFrame: 地图渲染每一帧画面过程中(地图更新)会调用
365
4. 在BMKGroundOverlay.h中新增透明度设置属性: alpha
366
5. 新增虚线绘制样式polyline/polygon的边框/circle的边框均可设定为虚线样式并指定颜色,自定义overlay也可在glrender中实现。
367
新增资源:
368
在mapapi.bundle的images文件夹中增加lineDashTexture.png,用于生成虚线纹理
369
新增属性:
370
在BMKOverlayGLBaseView.h中,@propertyBOOLlineDash;// 是否为虚线样式
371
在BMKOverlayView.h中新增方法:
372
-(void)renderLinesWithPoints:(BMKMapPoint *)points pointCount:(NSUInteger)pointCount
373
strokeColor:(UIColor *)strokeColor
374
lineWidth:(CGFloat)lineWidth
375
looped:(BOOL)looped
376
lineDash:(BOOL)lineDash;
377
注:该方法再BMKPolylineView/BMKPolygonView/BMKCircleView绘制中会自动调用,用户自定义view也可以调用这个方法实线虚线样式。
378
6. 新增自定义纹理绘制线:polyline/polygon的边框/circle的边框均可设定指定纹理,自定义overlay也可在glrender中实现。
379
在BMKOverlayView.h中新增属性:
380
@property (nonatomic, readonly) GLuintstrokeTextureID;//关联的纹理对象ID
381
在BMKOverlayView.h中新增方法:
382
-(GLuint)loadStrokeTextureImage:(UIImage *)textureImage;
383
384
定位功能
385
1、在BMKLocationService新增接口:
386
+setLocationDistanceFilter: //设置定位的最小更新距离(米)
387
+getCurrentLocationDistanceFilter //获取定位的最小更新距离(米)
388
+setLocationDesiredAccuracy: //设置定位精准度
389
+getCurrentLocationDesiredAccuracy //获取定位精准度
390
391
【 优 化 】
392
1. SDK配置使用ARC;
393
2. 更新鉴权错误码;
394
395
【 修 复 】
396
1. 修复定位服务中,开启定位和停止定位没有成对使用造成的问题;
397
2. 修复使用circleWithCenterCoordinate:radius:画圆时半径误差偏大的问题;
398
3. 修复在6plus上标注显示过小的问题;
399
4. 修复annotation拖拽结束后向下偏移的问题;
400
401
402
--------------------
403
v2.7.0
404
自当前版本起,百度地图iOS SDK推出 .framework形式的开发包。此种类型的开发包配置简单、使用方便,欢迎开发者选用!
405
【 新 增 】
406
基础地图
407
1. 增加地图缩放等级到20级(10米);
408
2. 新增地理坐标与OpenGL坐标转换接口:
409
BMKMapView新增接口:
410
- (CGPoint)glPointForMapPoint:(BMKMapPoint)mapPoint;//将BMKMapPoint转换为opengles可 以直接使用的坐标
411
- (CGPoint *)glPointsForMapPoints:(BMKMapPoint *)mapPoints count:(NSUInteger)count;// 批量将BMKMapPoint转换为opengles可以直接使用的坐标
412
3. 开放区域截图能力:
413
BMKMapView新增接口:
414
- (UIImage*)takeSnapshot:(CGRect)rect;// 获得地图区域区域截图
415
416
检索功能
417
1. 开放驾车线路规划,返回多条线路的能力;
418
BMKDrivingRouteResult中,routes数组有多条数据,支持检索结果为多条线路
419
2. 驾车线路规划结果中,新增路况信息字段:
420
BMKDrivingRoutePlanOption新增属性:
422
@property (nonatomic) BMKDrivingRequestTrafficType drivingRequestTrafficType;
423
BMKDrivingStep新增属性:
425
@property (nonatomic) BOOL hasTrafficsInfo;
427
@property (nonatomic, strong) NSArray* traffics;
428
3.废弃接口:
429
2.7.0开始,BMKDrivingRouteLine中,废弃属性:isSupportTraffic
430
431
计算工具
432
1. 新增点与圆、多边形位置关系判断方法:
433
工具类(BMKGeometry.h)中新增接口:
434
//判断点是否在圆内
435
UIKIT_EXTERN BOOL BMKCircleContainsPoint(BMKMapPoint point, BMKMapPoint center, double radius);
436
UIKIT_EXTERN BOOL BMKCircleContainsCoordinate(CLLocationCoordinate2D point, CLLocationCoordinate2D center, double radius);
437
//判断点是否在多边形内
438
UIKIT_EXTERN BOOL BMKPolygonContainsPoint(BMKMapPoint point, BMKMapPoint *polygon, NSUInteger count);
439
UIKIT_EXTERN BOOL BMKPolygonContainsCoordinate(CLLocationCoordinate2D point, CLLocationCoordinate2D *polygon, NSUInteger count);
440
2. 新增获取折线外某点到这线上距离最近的点:
441
工具类(BMKGeometry.h)中新增接口:
442
UIKIT_EXTERN BMKMapPoint BMKGetNearestMapPointFromPolyline(BMKMapPoint point, BMKMapPoint* polyline, NSUInteger count);
443
3、新增计算地理矩形区域的面积
444
工具类(BMKGeometry.h)中新增接口:
445
UIKIT_EXTERN double BMKAreaBetweenCoordinates(CLLocationCoordinate2D leftTop, CLLocationCoordinate2D rightBottom);
446
447
【 优 化 】
448
1. 减少首次启动SDK时的数据流量;
449
2. 减少协议优化升级;
450
3. 优化Annotation拖拽方法(长按后开始拖拽);
451
452
【 修 复 】
453
1. 修复在线地图和离线地图穿插使用时,地图内存不释放的bug;
454
2. 修复云检索过程中偶现崩溃的bug;
455
3. 修复地图在autolayout布局下无效的bug;
456
4. 修复BMKAnnotationView重叠的bug;
457
458
459
--------------------
460
v2.8.0
461
462
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。
463
464
【 新 增 】
465
周边雷达
466
利用周边雷达功能,开发者可在App内低成本、快速实现查找周边使用相同App的用户位置的功能。
467
新增周边雷达管理类:BMKRadarManager
468
新增周边雷达protocol:BMKRadarManagerDelegate
469
1.提供单次位置信息上传功能;
470
- (BOOL)uploadInfoRequest:(BMKRadarUploadInfo*) info;
471
2.提供位置信息连续自动上传功能;
472
- (void)startAutoUpload:(NSTimeInterval) interval;//启动自动上传用户位置信息
473
- (void)stopAutoUpload;//停止自动上传用户位置信息
474
3.提供周边位置信息检索功能;
475
- (BOOL)getRadarNearbySearchRequest:(BMKRadarNearbySearchOption*) option;
476
4.提供清除我的位置信息功能
477
- (BOOL)clearMyInfoRequest;
478
479
基础地图
480
1.新增折线多段颜色绘制能力;
481
1)BMKPolyline中新增接口:
483
@property (nonatomic, strong) NSArray *textureIndex;
484
//分段纹理绘制,根据指定坐标点生成一段折线
485
+ (BMKPolyline *)polylineWithPoints:(BMKMapPoint *)points count:(NSUInteger)count textureIndex:(NSArray*) textureIndex;
486
//根据指定坐标点生成一段折线
487
+ (BMKPolyline *)polylineWithCoordinates:(CLLocationCoordinate2D *)coords count:(NSUInteger)count textureIndex:(NSArray*) textureIndex;
488
2)BMKPolylineView新增接口
490
@property (nonatomic, assign) BOOL isFocus;
491
2.可以修改BMKPolyline、BMKPolygon、BMKCircle、BMKArcline的端点数据了
492
3.新增地图强制刷新功能:
493
BMKMapView新增接口:
494
- (void)mapForceRefresh;//强制刷新mapview
495
496
检索功能
497
1.在线建议检索结果开放POI经纬度及UID信息;
498
BMKSuggestionResult新增接口:
500
@property (nonatomic, strong) NSArray* poiIdList;
502
@property (nonatomic, strong) NSArray* ptList;
503
2.更新检索状态码
504
BMKSearchErrorCode中新增:
505
BMK_SEARCH_NETWOKR_ERROR,///网络连接错误
506
BMK_SEARCH_NETWOKR_TIMEOUT,///网络连接超时
507
BMK_SEARCH_PERMISSION_UNFINISHED,///还未完成鉴权,请在鉴权通过后重试
508
509
计算工具
510
1.新增调启百度地图客户端功能;
511
1)调起百度地图客户端 – poi调起
512
新增调起百度地图poi管理类:BMKOpenPoi
513
//调起百度地图poi详情页面
514
+ (BMKOpenErrorCode)openBaiduMapPoiDetailPage:(BMKOpenPoiDetailOption *) option;
515
//调起百度地图poi周边检索页面
516
+ (BMKOpenErrorCode)openBaiduMapPoiNearbySearch:(BMKOpenPoiNearbyOption *) option;
517
2)调起百度地图客户端 – 路线调起
518
新增调起百度地图路线管理类类:BMKOpenRoute
519
//调起百度地图步行路线页面
520
+ (BMKOpenErrorCode)openBaiduMapWalkingRoute:(BMKOpenWalkingRouteOption *) option;
521
//调起百度地图公交路线页面
522
+ (BMKOpenErrorCode)openBaiduMapTransitRoute:(BMKOpenTransitRouteOption *) option;
523
//调起百度地图驾车路线检索页面
524
+ (BMKOpenErrorCode)openBaiduMapDrivingRoute:(BMKOpenDrivingRouteOption *) option;
525
2.新增本地收藏夹功能;
526
新增收藏点信息类:BMKFavPoiInfo
527
新增收藏点管理类:BMKFavPoiManager
528
新增接口:
529
//添加一个poi点
530
- (NSInteger)addFavPoi:(BMKFavPoiInfo*) favPoiInfo;
531
//获取一个收藏点信息
532
- (BMKFavPoiInfo*)getFavPoi:(NSString*) favId;
533
//获取所有收藏点信息
534
- (NSArray*)getAllFavPois;
535
//更新一个收藏点
536
- (BOOL)updateFavPoi:(NSString*) favIdfavPoiInfo:(BMKFavPoiInfo*) favPoiInfo;
537
//删除一个收藏点
538
- (BOOL)deleteFavPoi:(NSString*) favId;
539
//清空所有收藏点
540
- (BOOL)clearAllFavPois;
541
542
【 修 复 】
543
1、修复setMinLevel、setMaxLevel生效的是整型的问题;
544
2、修复setRegion精准度不高的问题;
545
3、修复POI检索结果,pageNum不正确的问题;
546
4、修复定位结果海拔始终为0的问题;
547
5、修复反地理编码检索在特定情况下,收不到回调的问题;
548
549
550
--------------------
551
v2.8.1
552
553
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自V2.8.1后,百度地图iOS SDK将不再提供 .a形式的开发包。
554
555
【 修 复 】
556
修复了升级IOS 9 beta 3系统后闪退的问题
557
558
【 提 示 】
559
1、由于iOS9改用更安全的https,为了能够在iOS9中正常使用地图SDK,请在"Info.plist"中进行如下配置,否则影响SDK的使用。
560
<key>NSAppTransportSecurity</key>
561
<dict>
562
<key>NSAllowsArbitraryLoads</key>
563
<true/>
564
</dict>
565
2、如果在iOS9中使用了调起百度地图客户端功能,必须在"Info.plist"中进行如下配置,否则不能调起百度地图客户端。
566
<key>LSApplicationQueriesSchemes</key>
567
<array>
568
<string>baidumap</string>
569
</array>
570
571
572
--------------------
573
v2.9.0
574
575
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自v2.9.0起,百度地图iOS SDK将不再提供 .a形式的开发包。
576
自v2.9.0起,采用分包的形式提供 .framework包,请广大开发者使用时确保各分包的版本保持一致。其中BaiduMapAPI_Base.framework为基础包,使用SDK任何功能都需导入,其他分包可按需导入。
577
578
【 新版提示 】
579
1.自v2.9.0起,将启用新的地图资源服务,旧地图离线包在新版上不可使用;同时官方不再支持地图离线包下载,所以v2.9.0起,去掉“手动离线导入接口”,SDK离线下载接口维持不变。
580
2.自v2.9.0起,iOS SDK采用分包形式,旧包无法与新包同时混用,请将之前所有旧包(包含bundle资源)并全部替换为新包。
581
3.自v2.9.0起,iOS SDK使用新的矢量地图样式,地图显示更加清新,和百度地图客户端保持一致
582
583
【 新 增 / 废 弃 】
584
基础地图
585
1.适配iOS 9和 iPhone 6s
586
2.新增点聚合功能开源
587
增加点聚合功能,并在demo中开放源代码,具体请参考demo
588
3.支持线绘制功能扩展:支持纹理图片平铺绘制,缩放,分段颜色设置
589
BMKOverlayGLBasicView新增属性:
591
@property (assign, nonatomic) BOOL tileTexture;
593
@property (assign, nonatomic) BOOL keepScale;
594
BMKOverlayView新增属性:
596
@property (nonatomic, strong) NSArray *colors;
597
4.支持底图标注控制
598
BMKMapView 新增属性:
600
@property(nonatomic, assign) BOOL showMapPoi;
601
5.新增TileOverlay图层,分为离线、在线tileOverlay绘制(使用方法请参考demo)。
602
新增类: BMKTileLayer、BMKURLTileLayer、BMKSyncTileLayer、BMKTileLayerView
603
6.BMKMapStatus新增只读属性:visibleMapRect
604
7.BMKOfflineMap废弃扫描导入离线包接口,不再支持离线包导入
605
废弃接口:
606
- (BOOL)scan:(BOOL)deleteFailedr __deprecated_msg("废弃方法(空实现),自2.9.0起废弃,不支持扫描导入离线包");
607
8.更新离线城市BMKOLUpdateElement status状态
608
609
检索功能
610
反geo检索结果新增商圈
611
BMKReverseGeoCodeResult新增属性:
613
@property (nonatomic, strong) NSString* businessCircle;
614
615
定位功能
616
废弃接口(空实现):
617
+ (void)setLocationDistanceFilter:(CLLocationDistance) distanceFilter __deprecated_msg("废弃方法 (空实现),使用distanceFilter属性替换");
618
+ (CLLocationDistance)getCurrentLocationDistanceFilter __deprecated_msg("废弃方法(空实现),使用distanceFilter属性替换");
619
+ (void)setLocationDesiredAccuracy:(CLLocationAccuracy) desiredAccuracy __deprecated_msg("废弃方法(空实现),使用desiredAccuracy属性替换");
620
+ (CLLocationAccuracy)getCurrentLocationDesiredAccuracy __deprecated_msg("废弃方法(空实现),使用desiredAccuracy属性替换");
621
新增属性:
623
@property(nonatomic, assign) CLLocationDistance distanceFilter;
625
@property(nonatomic, assign) CLLocationAccuracy desiredAccuracy;
627
@property(nonatomic, assign) CLLocationDegrees headingFilter;
629
@property(nonatomic, assign) BOOL pausesLocationUpdatesAutomatically;
631
@property(nonatomic, assign) BOOL allowsBackgroundLocationUpdates;
632
633
【 修 复 】
634
1、修复不加载@3x图片的问题;
635
2、修复公交路线规划,换乘方案内容缺失的问题;
636
3、修复iOS 8.2系统版本以前,AnnotationView 中加入约束会卡住的问题;
637
4、修复使用xcode 7编译时SDK产生的编译警告;
638
5、修复BMKMapView在特定的使用条件下crash的问题
639
640
641
--------------------
642
v2.9.1
643
644
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自v2.9.0起,百度地图iOS SDK将不再提供 .a形式的开发包。
645
自v2.9.0起,采用分包的形式提供 .framework包,请广大开发者使用时确保各分包的版本保持一致。其中BaiduMapAPI_Base.framework为基础包,使用SDK任何功能都需导入,其他分包可按需导入。
646
647
【新版提示】
648
1.自V2.9.0起,将启用新的地图资源服务,旧地图离线包在新版上不可使用;同时官方不再支持地图离线包下载,所以V2.9.0起,去掉“手动离线导入接口”,SDK离线下载接口维持不变。
649
2.自V2.9.0起,iOS SDK采用分包形式,旧包无法与新包同时混用,请将之前所有旧包(包含bundle资源)并全部替换为新包。
650
3.自V2.9.0起,iOS SDK使用新的矢量地图样式,地图显示更加清新,和百度地图客户端保持一致
651
652
653
【 新 增 】
654
检索功能
655
1、新增类:BMKPoiAddressInfo(POI门址信息类)
656
2、BMKPoiResult新增接口:
658
@property (nonatomic, assign) BOOL isHavePoiAddressInfoList;
660
@property (nonatomic, strong) NSArray* poiAddressInfoList;
661
662
【 修 复 】
663
1、修复iOS9后台定位问题;
664
2、修复sug检索特殊case引起的crash的问题;
665
3、修复自定义AnnotationView,启用3D效果后(enabled3D=YES)点击标注没有响应的问题;
666
4、修复获取离线地图包大小信息时,包大小错误的问题。
667
668
669
--------------------
670
v2.10.0
671
672
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自v2.9.0起,百度地图iOS SDK将不再提供 .a形式的开发包。
673
自v2.9.0起,采用分包的形式提供 .framework包,请广大开发者使用时确保各分包的版本保持一致。其中BaiduMapAPI_Base.framework为基础包,使用SDK任何功能都需导入,其他分包可按需导入。
674
675
【 新版提示 】
676
1.自v2.9.0起,将启用新的地图资源服务,旧地图离线包在新版上不可使用;同时官方不再支持地图离线包下载,所以v2.9.0起,去掉“手动离线导入接口”,SDK离线下载接口维持不变。
677
2.自v2.9.0起,iOS SDK采用分包形式,旧包无法与新包同时混用,请将之前所有旧包(包含bundle资源)并全部替换为新包。
678
3.自v2.9.0起,iOS SDK使用新的矢量地图样式,地图显示更加清新,和百度地图客户端保持一致
679
680
【 新 增 / 废 弃 】
681
基础地图
682
1、新增3D-Touch的回调
683
BMKMapView 新增属性:
685
@property(nonatomic) BOOL forceTouchEnabled;
686
BMKMapViewDelegate 新增:
687
- (void)mapview:(BMKMapView *)mapView onForceTouch:(CLLocationCoordinate2D)coordinate force:(CGFloat)force maximumPossibleForce:(CGFloat)maximumPossibleForce;
688
2、新增个性化地图模板,支持黑夜模式、清新蓝等风格地图
689
BMKMapView 新增方法:
690
+ (void)customMapStyle:(NSString*) customMapStyleJsonFilePath;
691
3、新增设置地图边界区域的方法:
692
BMKMapView 新增属性:
694
@property (nonatomic) UIEdgeInsets mapPadding;
695
4、开放显示21级地图,但不支持卫星图、热力图、交通路况图层的21级地图。
696
5、BMKMapType新增BMKMapTypeNone类型:不加载百度地图瓦片,显示为空白地图。和瓦片图功能配合使用,减少加载数据
697
6、新增限制地图的显示范围的方法
698
BMKMapView 新增属性:
699
@property (nonatomic) BMKCoordinateRegion limitMapRegion;
700
7、支持自定义百度logo位置,共支持6个位置,使用枚举类型控制显示的位置
701
BMKMapView 新增属性:
702
@property (nonatomic) BMKLogoPosition logoPosition;
703
8、新增禁用所有手势功能
704
BMKMapView 新增属性:
705
@property(nonatomic) BOOL gesturesEnabled;
706
9、新增获取指南针大小的方法,并支持更换指南针图片
707
BMKMapView 新增属性、方法:
708
@property (nonatomic, readonly) CGSize compassSize;
709
- (void)setCompassImage:(UIImage *)image;
710
10、新增获取比例尺大小的方法
711
BMKMapView 新增属性:
713
@property (nonatomic, readonly) CGSize mapScaleBarSize;
714
11、增加自定义定位精度圈的填充颜色和边框
715
BMKLocationViewDisplayParam 新增属性:
717
@property (nonatomic, strong) UIColor *accuracyCircleFillColor;
719
@property (nonatomic, strong) UIColor *accuracyCircleStrokeColor;
720
12、新增获取矩形范围内所有marker点的方法
721
BMKMapView 新增方法:
722
- (NSArray *)annotationsInCoordinateBounds:(BMKCoordinateBounds) bounds;
723
13、BMKMapView废弃接口:
724
+(void)willBackGround;//逻辑由地图SDK控制
725
+(void)didForeGround;//逻辑由地图SDK控制
726
727
检索功能
728
1、新增骑行规划检索
729
BMKRouteSearch 新增骑行路线检索方法:
730
- (BOOL)ridingSearch:(BMKRidingRoutePlanOption*) ridingRoutePlanOption;
731
BMKRouteSearchDelegate 新增返回骑行检索结果回调:
732
- (void)onGetRidingRouteResult:(BMKRouteSearch*)searcher result:(BMKRidingRouteResult*)result errorCode:(BMKSearchErrorCode)error;
733
新增类:
734
BMKRidingRoutePlanOption 骑行查询基础信息类
735
BMKRidingRouteResult 骑行路线结果类
736
2、新增行政区边界数据检索
737
新增类:
738
BMKDistrictSearch 行政区域搜索服务类
739
BMKDistrictSearchDelegate 行政区域搜索结果Delegate
740
BMKDistrictSearchOption 行政区域检索信息类
741
BMKDistrictResult 行政区域检索结果类
742
3、新增驾车、公交、骑行、步行路径规划短串分享检索
743
BMKShareURLSearch 新增获取路线规划短串分享方法:
744
- (BOOL)requestRoutePlanShareURL:(BMKRoutePlanShareURLOption *)routePlanShareUrlSearchOption;
745
BMKShareURLSearchDelegate 新增返回路线规划分享url结果回调:
746
- (void)onGetRoutePlanShareURLResult:(BMKShareURLSearch *)searcher result:(BMKShareURLResult *)result errorCode:(BMKSearchErrorCode)error;
747
748
计算工具
749
支持调起百度地图客户端骑行、步行导航功能(百度地图App 8.8 以上版本支持)
750
BMKNavigation 新增方法:
751
//调起百度地图客户端骑行导航页面
752
+ (BMKOpenErrorCode)openBaiduMapRideNavigation:(BMKNaviPara*)para;
753
//调起百度地图客户端步行导航页面
754
+ (BMKOpenErrorCode)openBaiduMapWalkNavigation:(BMKNaviPara*)para;
755
756
【 修 复 】
757
1、修复只使用检索时,首次鉴权失败(网络问题),再次发起鉴权无效的问题
758
2、修复使用地图前使用离线地图,首次安装应用地图白屏的问题
759
3、修复拖拽地图时,点击到标注,会触发didSelectAnnotationView:的回调,不回调regionDidChangeAnimated的问题
760
4、修复BMKTransitStep 里的stepType中地铁和公交未做区分的问题
761
762
763
--------------------
764
--------------------
765
v2.10.2
766
767
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自v2.9.0起,百度地图iOS SDK将不再提供 .a形式的开发包。
768
自v2.9.0起,采用分包的形式提供 .framework包,请广大开发者使用时确保各分包的版本保持一致。其中BaiduMapAPI_Base.framework为基础包,使用SDK任何功能都需导入,其他分包可按需导入。
769
770
【 新版提示 】
771
1.自v2.9.0起,将启用新的地图资源服务,旧地图离线包在新版上不可使用;同时官方不再支持地图离线包下载,所以v2.9.0起,去掉“手动离线导入接口”,SDK离线下载接口维持不变。
772
2.自v2.9.0起,iOS SDK采用分包形式,旧包无法与新包同时混用,请将之前所有旧包(包含bundle资源)并全部替换为新包。
773
3.自v2.9.0起,iOS SDK使用新的矢量地图样式,地图显示更加清新,和百度地图客户端保持一致
774
775
【 新 增 】
776
基础地图
777
1、新增个性化地图道路文字颜色设置(包括高速及国道、城市主路、普通道路)
778
779
【 变 更 】
780
检索功能
781
1、行政区边界数据检索:为兼容不连续的行政区,行政区边界数据检索结果(BMKDistrictResult),行政区边界坐标点变更为:
783
@property (nonatomic, strong) NSArray *paths;
784
原接口作废
785
786
【 优 化 】
787
1、优化瓦片图性能:支持同时下载多张瓦片图、优化下载中断的重加载机制
788
789
【 修 复 】
790
1、修复sug检索某些特殊case,city、district为空的情况
791
2、修复同步瓦片图内存问题
792
3、修复在iOS6运行crash的问题
793
4、修复 CVHttpResponse::ReadData 极其偶现的crash
794
5、修复某些case下,点击polyline不会回调的问题
795
6、修复调起客户端驾车导航后,关闭导航后,不会弹出“是否返回原应用”提示的问题
796
797
--------------------
798
v3.0.0
799
800
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自v2.9.0起,百度地图iOS SDK将不再提供 .a形式的开发包。
801
自v2.9.0起,采用分包的形式提供 .framework包,请广大开发者使用时确保各分包的版本保持一致。其中BaiduMapAPI_Base.framework为基础包,使用SDK任何功能都需导入,其他分包可按需导入。
802
803
【 新版提示 】
804
1.自v3.0.0起,iOS SDK全面支持ipv6网络
805
806
【 新 增 】
807
基础地图
808
1、新增室内地图功能
809
新增室内地图信息类:BMKBaseIndoorMapInfo
810
BMKMapView新增接口:
812
@property (nonatomic, assign) BOOL baseIndoorMapEnabled;
814
@property (nonatomic, assign) BOOL showIndoorMapPoi;
815
// 设置室内图楼层
816
- (BMKSwitchIndoorFloorError)switchBaseIndoorMapFloor:(NSString*)strFloor withID:(NSString*)strID;
817
// 获取当前聚焦的室内图信息
818
- (BMKBaseIndoorMapInfo*)getFocusedBaseIndoorMapInfo;
819
BMKMapViewDelegate新增接口:
820
//地图进入/移出室内图会调用此接口
821
- (void)mapview:(BMKMapView *)mapView baseIndoorMapWithIn:(BOOL)flag baseIndoorMapInfo:(BMKBaseIndoorMapInfo *)info;
822
2、普通地图与个性化地图切换可以自由切换,BMKMapView新增接口:
823
+ (void)enableCustomMapStyle:(BOOL) enable;
824
3、个性化地图配置json文件出错时,打印log提示
825
4、设置mapPadding时可控制地图中心是否跟着移动,BMKMapView新增接口:
826
@property (nonatomic) BOOL updateTargetScreenPtWhenMapPaddingChanged;
827
5、BMKMapPoi中新增属性:
829
@property (nonatomic,strong) NSString* uid;
830
831
检索功能
832
1、新增室内POI检索
833
新增室内POI检索参数信息类:BMKPoiIndoorSearchOption
834
新增室内POI搜索结果类:BMKPoiIndoorResult
835
新增室内POI信息类:BMKPoiIndoorInfo
836
BMKPoiSearch新增接口:
837
//poi室内检索
838
- (BOOL)poiIndoorSearch:(BMKPoiIndoorSearchOption*)option;
839
BMKPoiSearchDelegate新增接口:
840
//返回POI室内搜索结果
841
- (void)onGetPoiIndoorResult:(BMKPoiSearch*)searcher result:(BMKPoiIndoorResult*)poiIndoorResult errorCode:(BMKSearchErrorCode)errorCode;
842
2、驾车路线规划结果新增3个属性:打车费用信息、拥堵米数、红路灯个数,BMKDrivingRouteLine新增接口:
844
@property (nonatomic, assign) NSInteger lightNum;
846
@property (nonatomic, assign) NSInteger congestionMetres;
848
@property (nonatomic, assign) NSInteger taxiFares;
849
3、busline检索新增参考票价和上下线行信息,BMKBusLineResult新增接口:
851
@property (nonatomic, strong) NSString* busLineDirection;
853
@property (nonatomic, assign) CGFloat basicPrice;
855
@property (nonatomic, assign) CGFloat totalPrice;
856
4、poi检索结果新增是否有全景信息,BMKPoiInfo新增接口:
857
@property (nonatomic, assign) BOOL panoFlag;
858
859
计算工具
860
新增调起百度地图客户端全景功能
861
新增调起百度地图全景类:BMKOpenPanorama
862
新增调起百度地图全景参数类:BMKOpenPanoramaOption
863
新增调起百度地图全景delegate:BMKOpenPanoramaDelegate
864
865
866
【 修 复 】
867
1、修复反复添加移除离线瓦片图时偶现的crash问题
868
2、修复上传AppStore时提示访问私有api:-setOverlayGeometryDelegate:的问题
869
3、修复地图网络解析时偶现的crash问题
870
871
872
--------------------
873
v3.1.0
874
875
注:百度地图iOS SDK向广大开发者提供了配置更简单的 .framework形式的开发包,请开发者选择此种类型的开发包使用。自v2.9.0起,百度地图iOS SDK将不再提供 .a形式的开发包。
876
自v2.9.0起,采用分包的形式提供 .framework包,请广大开发者使用时确保各分包的版本保持一致。其中BaiduMapAPI_Base.framework为基础包,使用SDK任何功能都需导入,其他分包可按需导入。
877
878
【 新 增 】
879
基础地图
880
1、开放高清4K地图显示(无需设置)
881
2、瓦片图新增异步加载方法:
882
新增异步加载类:BMKAsyncTileLayer
883
3、新增地图渲染完成回调方法:
884
- (void)mapViewDidFinishRendering:(BMKMapView *)mapView;
885
4、新增定位显示类型:BMKUserTrackingModeHeading(在普通定位模式的基础上显示方向)
886
887
检索功能
888
1、新增室内路径规划
889
BMKRouteSearch新增发起室内路径规划接口:
890
- (BOOL)indoorRoutePlanSearch:(BMKIndoorRoutePlanOption*) indoorRoutePlanOption;
891
BMKRouteSearchDelegate新增室内路径规划结果回调:
892
- (void)onGetIndoorRouteResult:(BMKRouteSearch*)searcher result:(BMKIndoorRouteResult*)result errorCode:(BMKSearchErrorCode)error;
893
新增室内路径规划检索参数类:BMKIndoorRoutePlanOption
894
新增室内路径规划检索结果类:BMKIndoorRouteResult
895
2、增加新的公共交通线路规划(支持同城和跨城)
896
BMKRouteSearch增加新的公共交通线路规划接口:
897
- (BOOL)massTransitSearch:(BMKMassTransitRoutePlanOption*)routePlanOption;
898
BMKRouteSearchDelegate增加新的公共交通线路规划结果回调:
899
- (void)onGetMassTransitRouteResult:(BMKRouteSearch*)searcher result:(BMKMassTransitRouteResult*)result errorCode:(BMKSearchErrorCode)error;
900
增加新的公共交通线路规划检索参数类:BMKMassTransitRoutePlanOption
901
增加新的公共交通线路规划检索结果类:BMKMassTransitRouteResult
902
903
LBS云检索
904
1、新增云RGC检索功能
905
BMKCloudSearch新增发起云RGC检索接口:
906
- (BOOL)cloudReverseGeoCodeSearch:(BMKCloudReverseGeoCodeSearchInfo*)searchInfo;
907
BMKCloudSearchDelegate新增云RGC检索结果回调:
908
- (void)onGetCloudReverseGeoCodeResult:(BMKCloudReverseGeoCodeResult*)cloudRGCResult searchType:(BMKCloudSearchType) type errorCode:(NSInteger) errorCode;
909
新增云RGC检索参数类:BMKCloudReverseGeoCodeSearchInfo
910
新增云RGC检索结果类:BMKCloudReverseGeoCodeResult
911
912
【 优 化 】
913
1、优化Marker加载性能:添加Marker和加载大量Marker时,性能大幅提高。
914
2、优化地图内存
915
916
【 修 复 】
917
1、长按地图某区域,OnLongClick会被不停调用的问题
918
2、绘制弧线,特殊case提示画弧失败的问题
919
3、一次点击事件,点击地图空白处回调和点击覆盖物回调都会调用的问题
920
921
922
--------------------
923
v3.2.0
924
925
注:自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)。
926
927
【 新版提示 】
928
1、自v3.2.0起,全面支持HTTPS
929
2、自v3.2.0起,地图引擎全面升级,主要升级特征有:
930
渲染架构技术升级,OpenGL ES从1.0升级到2.0
931
地图数据加载升级,加载性能大幅提升
932
933
【 新 增 】
934
检索功能
935
1、建议检索支持港澳台;建议检索可控制只返回指定城市的检索结果
936
BMKSuggestionSearchOption新增属性:
938
@property (nonatomic, assign) BOOL cityLimit;
939
2、反地址编码结果BMKReverseGeoCodeResult新增属性:
941
@property (nonatomic, strong) NSString* sematicDescription;
942
943
【 优 化 】
944
1、建议检索和反地址编码检索服务升级,提供更加优质的服务
945
946
【 修 复 】
947
1、修复国外定位偏移的问题
948
2、修复特殊情况下,移除BMKGroundOverlay时的问题
949
950
951
--------------------
952
v3.2.1
953
954
注:自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)。
955
956
【 新版提示 】
957
1、自v3.2.0起,全面支持HTTPS
958
2、自v3.2.0起,地图引擎全面升级,主要升级特征有:
959
渲染架构技术升级,OpenGL ES从1.0升级到2.0
960
地图数据加载升级,加载性能大幅提升
961
962
【 修 复 】
963
修复下载离线地图时,delegate方法返回state错误问题
964
965
966
--------------------
967
v3.3.0
968
969
970
注:自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)。
971
972
新 版 提 示 】
973
【 注 意 】
974
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
975
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
976
977
2、支持CocoaPods导入
978
pod setup //更新CocoPods的本地库
979
pod search BaiduMapKit //下载最新地图SDK
980
981
【 新 增 】
982
[ 基 础 地 图 ]
983
3D地图下,增加显示天空效果,无需设置
984
985
[ 工 具 ]
986
1.全面支持GCJ02坐标输入/输出,全局设置方法如下:
987
[BMKMapManager setCoordinateTypeUsedInBaiduMapSDK:BMK_COORDTYPE_COMMON];//默认为BD09LL坐标,且此方法仅在国内生效,国外均为WGS84坐标
988
989
2. 新增调启步行AR导航接口:openBaiduMapwalkARNavigation
990
991
[ LBS云]
992
云检索中,keywords 改为非必填项
993
994
【 优 化 】
995
优化个性化地图元素分类
996
997
【 修 复 】
998
少部分地铁线及室内图无法显示问题(v3.2.0引入的问题)。
999
未下载全国离线基础包时,离线状态下全国(球)地图显示异常。
1000
1001
--------------------
1002
v3.3.1
1003
1004
【 新 版 提 示 】
1005
【 注 意 】
1006
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1007
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1008
1009
2、支持CocoaPods导入
1010
pod setup //更新CocoPods的本地库
1011
pod search BaiduMapKit //下载最新地图SDK
1012
1013
【 新 增 】
1014
[ 检 索 ]
1015
逆地理编码返回结果新增2个属性:cityCode(城市编码) 和adCode(行政区域编码)
1016
1017
【 优 化 】
1018
1.增加重试机制,优化鉴权时长
1019
2.解决Xcode8.3编译时出现大量warning的问题
1020
3.swift Demo:swift语言升级为 swift v3.1,优化升级swift Demo。
1021
1022
--------------------
1023
v3.3.2
1024
1025
1026
【 新 版 提 示 】
1027
【 注 意 】
1028
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1029
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1030
1031
2、支持CocoaPods导入
1032
pod setup //更新CocoPods的本地库
1033
pod search BaiduMapKit //查看最新地图SDK
1034
1035
【 新 增 】
1036
【 优 化 】
1037
1.修复个性化地图在部分使用场景下,不显示的问题。(受影响版本v3.3.0、v3.3.1)
1038
1039
1040
--------------------
1041
v3.3.4
1042
1043
1044
【 新 版 提 示 】
1045
【 注 意 】
1046
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1047
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1048
1049
2、支持CocoaPods导入
1050
pod setup //更新CocoPods的本地库
1051
pod search BaiduMapKit //查看最新地图SDK
1052
1053
【 新 增 】
1054
1.BMKLocationViewDisplayParam类中增加 canShowCallOut 属性,用于设定用户点击定位图标时,是否弹出paopaoView。
1055
2.BMKLocationViewDisplayParam类中增加 locationViewHierarchy 属性,用于设定locationView始终处于视图层级的最下层或最上层。
1056
1057
【 优 化 】
1058
1.修复添加Annotation时,Overlay偶尔绘制不完整的BUG。
1059
2.修复Swift调用SDK时,cityCode countryCode等字段类型不兼容的问题。
1060
3.保证新添加的Annotation会在mapView的视图层级的上层。
1061
4.DEMO中绘制路径规划结果时,修复计算显示区域的BUG。
1062
1063
--------------------
1064
v3.4.0
1065
1066
1067
1068
【 新 版 提 示 】
1069
【 注 意 】
1070
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1071
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1072
1073
2、支持CocoaPods导入
1074
pod setup //更新CocoPods的本地库
1075
pod search BaiduMapKit //查看最新地图SDK
1076
1077
【 新 增 】
1078
【基 础 地 图】
1079
1.新增当双击手势放大地图时,可以设置地图中心点是否移动至点击处的属性
1080
BMKMapView新增:
1082
@property(nonatomic, getter=isChangeCenterWithDoubleTouchPointEnabled) BOOL ChangeCenterWithDoubleTouchPointEnabled;
1083
1084
2.支持标注锁定在屏幕固定位置
1085
BMKPointAnnotation新增:
1089
@property (nonatomic, assign) BOOL isLockedToScreen;
1090
1092
@property (nonatomic, assign) CGPoint screenPointToLock;
1093
1094
3.新增接口:设定地理范围在屏幕中的显示区域
1095
BMKMapView新增:
1100
- (void)fitVisibleMapRect:(BMKMapRect)mapRect edgePadding:(UIEdgeInsets)insets withAnimated:(BOOL)animate;
1101
1102
【 优 化 】
1103
1.解决反复创建和销毁mapView时内存泄漏的问题
1104
2.对拖动标注时的弹跳动画效果进行优化
1105
3.修复mapView调用selectAnnotation方法时,回调didSelectAnnotationView不调用的问题。
1106
4.修复行政区域检索福建和浙江区域没有返回数据的问题
1107
5.修复部分使用场景下,设置mapPadding时,overlay位置偏移的问题
1108
6.修复部分使用场景下,加载mapView闪黑屏的问题
1109
1110
--------------------
1111
v3.4.2
1112
1113
1114
【 新 版 提 示 】
1115
【 注 意 】
1116
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1117
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1118
1119
2、支持CocoaPods导入
1120
pod setup //更新CocoPods的本地库
1121
pod search BaiduMapKit //查看最新地图SDK
1122
1123
【修复】
1124
1.修复多页面多地图场景下,切换页面导致的crash问题。
1125
2.修复检索对象对delegate的强引用问题。
1126
3.修复在一些罕见场景下,Bugly报告的crash问题。
1127
4.修复第一次通过setBuildingsEnabled接口设置不显示3D楼块效果失效的BUG。
1128
1129
【优化】
1130
1.删除annotation后,不再删除其对应的annotationView的subView。开发者dequeue出可重用的annotationView后,为了避免内容堆叠问题,可以自行去避免,如remove subview或者使用不同的reuseIdentifier等。
1131
2.每个reuseIdentifier可缓存多个annotationView,当开发者removeAnnotation时,SDK会将对应的annotationView加入缓存队列。
1132
1133
--------------------
1134
v3.4.4
1135
1136
1137
【 新 版 提 示 】
1138
【 注 意 】
1139
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1140
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1141
1142
2、支持CocoaPods导入
1143
pod setup //更新CocoPods的本地库
1144
pod search BaiduMapKit //查看最新地图SDK
1145
1146
【新增】
1147
1.新增 BMKConvertToBaiduMercatorFromBD09LL 与 BMKConvertToBD09LLFromBaiduMercator 方法,用于百度经纬度和百度墨卡托之间的转换。
1148
2.新增 CLLocationCoordinate2D BMKCoordTrans(CLLocationCoordinate2D coordinate, BMK_COORD_TYPE fromType, BMK_COORD_TYPE toType); 方法,支持WGS84LL->BD09LL, GCJ02LL->BD09LL, BD09LL->GCJ02LL三种经纬度之间的直接转换。
1149
1150
【修复】
1151
1.支持iOS11系统定位权限
1152
2.个性化地图部分catlog不显示的问题
1153
3.室内图无背景色的问题
1154
4.polygon绘制大量节点折线,超出数量,产生飞线问题
1155
5.部分场景下,点击离线地图crash的问题
1156
1157
--------------------
1158
v4.0.0
1159
1160
1161
【 新 版 提 示 】
1162
【 注 意 】
1163
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
1164
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
1165
1166
2、支持CocoaPods导入
1167
pod setup //更新CocoPods的本地库
1168
pod search BaiduMapKit //查看最新地图SDK
1169
1170
【新增】
1171
1.升级引擎,提升底图加载速度。
1172
2.升级数据服务版本与地图客户端一致。
1173
3.适配V4.1.x(即以上)版本导航SDK。只有V4.0.0及以上版本的地图SDK才能与V4.1.x版本的导航SDK同时使用,否则会编译报错。
1174
4.新增海外离线地图下载控制。
1175
1176
【优化】
1177
1.BMKPolyline采用多段纹理时,交接处更加绘制效果更平滑。
1178
2.优化高架桥、天桥等高精道路的显示效果,增加阴影,深度效果。
1179
3.室内图下,楼的侧立面增加玻璃罩效果。
1180
4.为了优化小比例尺下的显示效果,将zoomLevel的最小值由3改为4。
1181
5.优化地图释放内存回收机制。
1182
1183
【修复】
1184
1.BMKPoiDetailResult无法获取到POI地理坐标的BUG。
1185
2.打开百度地图客户端返回后(前后台切换)黑屏的BUG。
1186
3.部分国家和地图的离线地图大小为负数的BUG。
1187
4.修复iOS7系统下使用定位服务会crash的BUG。
1188
1189
1190
*********************/
1195
UIKIT_STATIC_INLINE NSString* BMKGetMapApiVersion()
1196
{
1197
return
@"4.0.0"
;
1198
}
1199
1205
UIKIT_EXTERN NSString* BMKGetMapApiBaseComponentVersion();
1206
生成于 2018年 四月 25日 星期三 15:35:49 , 为 百度地图SDK for iOS v4.0.0 类参考使用
1.8.14