Initial commit
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,13 @@
|
||||
//
|
||||
// BaseComponent.h
|
||||
// BaseComponent
|
||||
//
|
||||
// Created by baidu on 14-3-17.
|
||||
// Copyright (c) 2014年 baidu. All rights reserved.
|
||||
//
|
||||
|
||||
#import "BMKGeneralDelegate.h"
|
||||
#import "BMKMapManager.h"
|
||||
#import "BMKTypes.h"
|
||||
#import "BMKUserLocation.h"
|
||||
#import "BMKVersion.h"
|
||||
@@ -0,0 +1,24 @@
|
||||
//
|
||||
// BMKGeneralDelegate.h
|
||||
// BMapKit
|
||||
//
|
||||
// Copyright 2011 Baidu Inc. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
///通知Delegate
|
||||
@protocol BMKGeneralDelegate <NSObject>
|
||||
@optional
|
||||
/**
|
||||
*返回网络错误
|
||||
*@param iError 错误号
|
||||
*/
|
||||
- (void)onGetNetworkState:(int)iError;
|
||||
|
||||
/**
|
||||
*返回授权验证错误
|
||||
*@param iError 错误号 : 为0时验证通过,具体参加BMKPermissionCheckResultCode
|
||||
*/
|
||||
- (void)onGetPermissionState:(int)iError;
|
||||
@end
|
||||
@@ -0,0 +1,76 @@
|
||||
/*
|
||||
* BMKMapManager.h
|
||||
* BMapKit
|
||||
*
|
||||
* Copyright 2011 Baidu Inc. All rights reserved.
|
||||
*
|
||||
*/
|
||||
|
||||
#import "BMKGeneralDelegate.h"
|
||||
#import <UIKit/UIKit.h>
|
||||
#import "BMKTypes.h"
|
||||
|
||||
enum EN_PERMISSION_STATUS
|
||||
{
|
||||
E_PERMISSION_OK = 0, // 授权验证通过
|
||||
E_PERMISSION_SERVER_ERROR = -200, //服务端数据错误,无法解析服务端返回数据
|
||||
E_PERMISSION_NETWORK_ERROR = -300, //无法建立与服务端的连接
|
||||
|
||||
};
|
||||
|
||||
//地图模块枚举
|
||||
typedef enum {
|
||||
BMKMapModuleTile = 0, //瓦片图模块
|
||||
}BMKMapModule;
|
||||
|
||||
///主引擎类
|
||||
@interface BMKMapManager : NSObject
|
||||
|
||||
/**
|
||||
*百度地图SDK所有接口均支持百度坐标(BD09LL)和国测局坐标(GCJ02),用此方法设置您使用的坐标类型.
|
||||
*默认是BD09LL(BMK_COORDTYPE_BD09LL)坐标.
|
||||
*如果需要使用GCJ02坐标,需要设置CoordinateType为:BMK_COORDTYPE_COMMON.
|
||||
*/
|
||||
+ (BOOL)setCoordinateTypeUsedInBaiduMapSDK:(BMK_COORD_TYPE) coorType;
|
||||
|
||||
/**
|
||||
*获取百度地图SDK当前使用的经纬度类型
|
||||
*@return 经纬度类型
|
||||
*/
|
||||
+ (BMK_COORD_TYPE)getCoordinateTypeUsedInBaiduMapSDK;
|
||||
|
||||
/**
|
||||
*是否开启打印某模块的log,默认不打印log
|
||||
*debug时,建议打开,有利于调试程序;release时建议关闭
|
||||
*@param enable 是否开启
|
||||
*@param mapModule 地图模块
|
||||
*/
|
||||
+ (void)logEnable:(BOOL) enable module:(BMKMapModule) mapModule;
|
||||
|
||||
/**
|
||||
*启动引擎
|
||||
*@param key 申请的有效key
|
||||
*@param delegate
|
||||
*/
|
||||
-(BOOL)start:(NSString*)key generalDelegate:(id<BMKGeneralDelegate>)delegate;
|
||||
|
||||
/**
|
||||
*获取所有在线服务消耗的发送流量,单位:字节
|
||||
*/
|
||||
-(int)getTotalSendFlaxLength;
|
||||
|
||||
/**
|
||||
*获取所有在线服务消耗的接收流量,单位:字节
|
||||
*/
|
||||
-(int)getTotalRecvFlaxLength;
|
||||
|
||||
/**
|
||||
*停止引擎
|
||||
*/
|
||||
-(BOOL)stop;
|
||||
|
||||
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@@ -0,0 +1,184 @@
|
||||
//
|
||||
// BMKType.h
|
||||
// MapPlatform
|
||||
//
|
||||
// Created by BaiduMapAPI on 13-3-26.
|
||||
// Copyright (c) 2013年 baidu. All rights reserved.
|
||||
//
|
||||
|
||||
#import <CoreGraphics/CoreGraphics.h>
|
||||
#import <CoreLocation/CoreLocation.h>
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
typedef enum
|
||||
{
|
||||
BMK_COORDTYPE_GPS = 0, ///GPS设备采集的原始GPS坐标(WGS-84)
|
||||
BMK_COORDTYPE_COMMON, ///GCJ坐标,google地图、soso地图、aliyun地图、mapabc地图和amap地图所用坐标
|
||||
BMK_COORDTYPE_BD09LL, ///bd09ll 百度经纬度坐标
|
||||
} BMK_COORD_TYPE;
|
||||
enum {
|
||||
BMKMapTypeNone = 0, ///< 空白地图
|
||||
BMKMapTypeStandard = 1, ///< 标准地图
|
||||
BMKMapTypeSatellite = 2, ///< 卫星地图
|
||||
};
|
||||
typedef NSUInteger BMKMapType;
|
||||
|
||||
typedef enum {
|
||||
BMKErrorOk = 0, ///< 正确,无错误
|
||||
BMKErrorConnect = 2, ///< 网络连接错误
|
||||
BMKErrorData = 3, ///< 数据错误
|
||||
BMKErrorRouteAddr = 4, ///<起点或终点选择(有歧义)
|
||||
BMKErrorResultNotFound = 100, ///< 搜索结果未找到
|
||||
BMKErrorLocationFailed = 200, ///< 定位失败
|
||||
BMKErrorPermissionCheckFailure = 300, ///< 百度地图API授权Key验证失败
|
||||
BMKErrorParse = 310 ///< 数据解析失败
|
||||
}BMKErrorCode;
|
||||
//鉴权结果状态码
|
||||
typedef enum {
|
||||
E_PERMISSIONCHECK_CONNECT_ERROR = -300,//链接服务器错误
|
||||
E_PERMISSIONCHECK_DATA_ERROR = -200,//服务返回数据异常
|
||||
E_PERMISSIONCHECK_OK = 0, // 授权验证通过
|
||||
E_PERMISSIONCHECK_KEY_ERROR = 101, //ak不存在
|
||||
E_PERMISSIONCHECK_MCODE_ERROR = 102, //mcode签名值不正确
|
||||
E_PERMISSIONCHECK_UID_KEY_ERROR = 200, // APP不存在,AK有误请检查再重试
|
||||
E_PERMISSIONCHECK_KEY_FORBIDEN= 201, // APP被用户自己禁用,请在控制台解禁
|
||||
/*
|
||||
*更多鉴权状态码请参考:
|
||||
*http://developer.baidu.com/map/index.php?title=lbscloud/api/appendix
|
||||
*/
|
||||
}BMKPermissionCheckResultCode;
|
||||
//检索结果状态码
|
||||
typedef enum{
|
||||
BMK_SEARCH_NO_ERROR = 0,///<检索结果正常返回
|
||||
BMK_SEARCH_AMBIGUOUS_KEYWORD,///<检索词有岐义
|
||||
BMK_SEARCH_AMBIGUOUS_ROURE_ADDR,///<检索地址有岐义
|
||||
BMK_SEARCH_NOT_SUPPORT_BUS,///<该城市不支持公交搜索
|
||||
BMK_SEARCH_NOT_SUPPORT_BUS_2CITY,///<不支持跨城市公交
|
||||
BMK_SEARCH_RESULT_NOT_FOUND,///<没有找到检索结果
|
||||
BMK_SEARCH_ST_EN_TOO_NEAR,///<起终点太近
|
||||
BMK_SEARCH_KEY_ERROR,///<key错误
|
||||
BMK_SEARCH_NETWOKR_ERROR,///网络连接错误
|
||||
BMK_SEARCH_NETWOKR_TIMEOUT,///网络连接超时
|
||||
BMK_SEARCH_PERMISSION_UNFINISHED,///还未完成鉴权,请在鉴权通过后重试
|
||||
BMK_SEARCH_INDOOR_ID_ERROR,///室内图ID错误
|
||||
BMK_SEARCH_FLOOR_ERROR,///室内图检索楼层错误
|
||||
BMK_SEARCH_INDOOR_ROUTE_NO_IN_BUILDING,///起终点不在支持室内路线的室内图内
|
||||
BMK_SEARCH_INDOOR_ROUTE_NO_IN_SAME_BUILDING,///起终点不在同一个室内
|
||||
BMK_SEARCH_PARAMETER_ERROR,///参数错误
|
||||
}BMKSearchErrorCode;
|
||||
|
||||
//调起百度地图结果状态码
|
||||
typedef enum{
|
||||
BMK_OPEN_NO_ERROR = 0,///<正常
|
||||
BMK_OPEN_WEB_MAP,///打开的是web地图
|
||||
BMK_OPEN_OPTION_NULL,///<传入的参数为空
|
||||
BMK_OPEN_NOT_SUPPORT,///<没有安装百度地图,或者版本太低
|
||||
BMK_OPEN_POI_DETAIL_UID_NULL,///<poi详情 poiUid为空
|
||||
BMK_OPEN_POI_NEARBY_KEYWORD_NULL,///<poi周边 keyWord为空
|
||||
BMK_OPEN_ROUTE_START_ERROR,///<路线起点有误
|
||||
BMK_OPEN_ROUTE_END_ERROR,///<路线终点有误
|
||||
BMK_OPEN_PANORAMA_UID_ERROR,///<调起全景 poiUid不正确
|
||||
BMK_OPEN_PANORAMA_ABSENT,///<调起全景 此处不支持全景
|
||||
BMK_OPEN_PERMISSION_UNFINISHED,///还未完成鉴权,请在鉴权通过后重试
|
||||
BMK_OPEN_KEY_ERROR,///<app key错误
|
||||
BMK_OPEN_NETWOKR_ERROR,///网络连接错误
|
||||
}BMKOpenErrorCode;
|
||||
|
||||
///表示一个经纬度范围
|
||||
typedef struct {
|
||||
CLLocationDegrees latitudeDelta; ///< 纬度范围
|
||||
CLLocationDegrees longitudeDelta; ///< 经度范围
|
||||
} BMKCoordinateSpan;
|
||||
|
||||
///表示一个经纬度区域
|
||||
typedef struct {
|
||||
CLLocationCoordinate2D northEast; ///< 东北角点经纬度坐标
|
||||
CLLocationCoordinate2D southWest; ///< 西南角点经纬度坐标
|
||||
} BMKCoordinateBounds;
|
||||
|
||||
///表示一个经纬度区域
|
||||
typedef struct {
|
||||
CLLocationCoordinate2D center; ///< 中心点经纬度坐标
|
||||
BMKCoordinateSpan span; ///< 经纬度范围
|
||||
} BMKCoordinateRegion;
|
||||
|
||||
///表示一个经纬度坐标点
|
||||
typedef struct {
|
||||
int latitudeE6; ///< 纬度,乘以1e6之后的值
|
||||
int longitudeE6; ///< 经度,乘以1e6之后的值
|
||||
} BMKGeoPoint;
|
||||
|
||||
///地理坐标点,用直角地理坐标表示
|
||||
typedef struct {
|
||||
double x; ///< 横坐标
|
||||
double y; ///< 纵坐标
|
||||
} BMKMapPoint;
|
||||
|
||||
///矩形大小,用直角地理坐标表示
|
||||
typedef struct {
|
||||
double width; ///< 宽度
|
||||
double height; ///< 高度
|
||||
} BMKMapSize;
|
||||
|
||||
///矩形,用直角地理坐标表示
|
||||
typedef struct {
|
||||
BMKMapPoint origin; ///< 屏幕左上点对应的直角地理坐标
|
||||
BMKMapSize size; ///< 坐标范围
|
||||
} BMKMapRect;
|
||||
|
||||
///地图缩放比例
|
||||
typedef CGFloat BMKZoomScale;
|
||||
|
||||
/// 经过投影后的世界范围大小,与经纬度(-85,180)投影后的坐标值对应
|
||||
UIKIT_EXTERN const BMKMapSize BMKMapSizeWorld;
|
||||
/// 经过投影后的世界矩形范围
|
||||
UIKIT_EXTERN const BMKMapRect BMKMapRectWorld;
|
||||
/// 空的直角坐标矩形
|
||||
UIKIT_EXTERN const BMKMapRect BMKMapRectNull;
|
||||
|
||||
///线路检索节点信息,一个路线检索节点可以通过经纬度坐标或城市名加地名确定
|
||||
@interface BMKPlanNode : NSObject{
|
||||
NSString* _cityName;
|
||||
NSString* _name;
|
||||
CLLocationCoordinate2D _pt;
|
||||
}
|
||||
|
||||
///节点所在城市
|
||||
@property (nonatomic, strong) NSString* cityName;
|
||||
///节点所在城市ID
|
||||
@property (nonatomic, assign) NSInteger cityID;
|
||||
///节点名称
|
||||
@property (nonatomic, strong) NSString* name;
|
||||
///节点坐标
|
||||
@property (nonatomic) CLLocationCoordinate2D pt;
|
||||
@end
|
||||
|
||||
///室内路线检索节点信息
|
||||
@interface BMKIndoorPlanNode : NSObject
|
||||
|
||||
///节点所在楼层
|
||||
@property (nonatomic, retain) NSString* floor;
|
||||
///节点坐标
|
||||
@property (nonatomic) CLLocationCoordinate2D pt;
|
||||
|
||||
@end
|
||||
|
||||
///此类表示地址结果的层次化信息
|
||||
@interface BMKAddressComponent : NSObject
|
||||
|
||||
/// 街道号码
|
||||
@property (nonatomic, strong) NSString* streetNumber;
|
||||
/// 街道名称
|
||||
@property (nonatomic, strong) NSString* streetName;
|
||||
/// 区县名称
|
||||
@property (nonatomic, strong) NSString* district;
|
||||
/// 城市名称
|
||||
@property (nonatomic, strong) NSString* city;
|
||||
/// 省份名称
|
||||
@property (nonatomic, strong) NSString* province;
|
||||
/// 国家
|
||||
@property (nonatomic, strong) NSString* country;
|
||||
/// 国家代码
|
||||
@property (nonatomic, strong) NSString* countryCode;
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,30 @@
|
||||
//
|
||||
// BMKUserLocation.h
|
||||
// BaseComponent
|
||||
//
|
||||
// Created by Baidu on 3/26/14.
|
||||
// Copyright (c) 2014 baidu. All rights reserved.
|
||||
//
|
||||
#import <CoreLocation/CLLocation.h>
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "BMKBaseComponent.h"
|
||||
@class CLLocation;
|
||||
@class CLHeading;
|
||||
@interface BMKUserLocation : NSObject
|
||||
|
||||
/// 位置更新状态,如果正在更新位置信息,则该值为YES
|
||||
@property (readonly, nonatomic, getter=isUpdating) BOOL updating;
|
||||
|
||||
/// 位置信息,尚未定位成功,则该值为nil
|
||||
@property (readonly, nonatomic,strong) CLLocation *location;
|
||||
|
||||
/// heading信息,尚未定位成功,则该值为nil
|
||||
@property (readonly, nonatomic, strong) CLHeading *heading;
|
||||
|
||||
/// 定位标注点要显示的标题信息
|
||||
@property (strong, nonatomic) NSString *title;
|
||||
|
||||
/// 定位标注点要显示的子标题信息.
|
||||
@property (strong, nonatomic) NSString *subtitle;
|
||||
|
||||
@end
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,66 @@
|
||||
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------------
|
||||
|
||||
iOS 地图 SDK v3.3.0是适用于iOS系统移动设备的矢量地图开发包
|
||||
|
||||
--------------------------------------------------------------------------------------
|
||||
|
||||
地图SDK功能介绍(全功能开发包):
|
||||
|
||||
地图:提供地图展示和地图操作功能;
|
||||
|
||||
POI检索:支持周边检索、区域检索和城市内兴趣点检索;
|
||||
|
||||
地理编码:提供经纬度和地址信息相互转化的功能接口;
|
||||
|
||||
线路规划:支持公交、驾车、步行三种方式的线路规划;
|
||||
|
||||
覆盖物图层:支持在地图上添加覆盖物(标注、几何图形、热力图、地形图图层等),展示更丰富的LBS信息;
|
||||
|
||||
定位:获取当前位置信息,并在地图上展示(支持普通、跟随、罗盘三种模式);
|
||||
|
||||
离线地图:使用离线地图可节省用户流量,提供更好的地图展示效果;
|
||||
|
||||
调启百度地图:利用SDK接口,直接在本地打开百度地图客户端或WebApp,实现地图功能;
|
||||
|
||||
周边雷达:利用周边雷达功能,开发者可在App内低成本、快速实现查找周边使用相同App的用户位置的功能;
|
||||
|
||||
LBS云检索:支持查询存储在LBS云内的自有数据;
|
||||
|
||||
特色功能:提供短串分享、Place详情检索、热力图等特色功能,帮助开发者搭建功能更加强大的应用;
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------------
|
||||
|
||||
注:自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)。
|
||||
|
||||
新 版 提 示 】
|
||||
【 注 意 】
|
||||
1、自v3.2.0起,百度地图iOS SDK全面支持HTTPS,需要广大开发者导入第三方openssl静态库:libssl.a和libcrypto.a(存放于thirdlib目录下)
|
||||
添加方法:在 TARGETS->Build Phases-> Link Binary With Libaries中点击“+”按钮,在弹出的窗口中点击“Add Other”按钮,选择libssl.a和libcrypto.a添加到工程中 。
|
||||
|
||||
2、支持CocoaPods导入
|
||||
pod setup //更新CocoPods的本地库
|
||||
pod search BaiduMapKit //下载最新地图SDK
|
||||
|
||||
【 新 增 】
|
||||
[ 基 础 地 图 ]
|
||||
3D地图下,增加显示天空效果,无需设置
|
||||
|
||||
[ 工 具 ]
|
||||
1.全面支持GCJ02坐标输入/输出,全局设置方法如下:
|
||||
[BMKMapManager setCoordinateTypeUsedInBaiduMapSDK:BMK_COORDTYPE_COMMON];//默认为BD09LL坐标,且此方法仅在国内生效,国外均为WGS84坐标
|
||||
|
||||
2. 新增调启步行AR导航接口:openBaiduMapwalkARNavigation
|
||||
|
||||
[ LBS云]
|
||||
云检索中,keywords 改为非必填项
|
||||
|
||||
【 优 化 】
|
||||
优化个性化地图元素分类
|
||||
|
||||
【 修 复 】
|
||||
少部分地铁线及室内图无法显示问题(v3.2.0引入的问题)。␍未下载全国离线基础包时,离线状态下全国(球)地图显示异常。␍␍
|
||||
Reference in New Issue
Block a user