1、百度地图的功能非常强大,涵盖了定位、地图、导航及相关的路径查询计算,周边信息检索等,要学会这些功能的用法要从基础开始,一步一步来;
2、首先需要理解的是定位功能,后续地图展示也会使用到这个功能,所以先从获取GPS信息开始吧
3、百度地图中用来开启信息的类为BMKLocationService
4、BMKLocationService使用也非常简单,初始化--设置代理--代理输出信息,三步即可搞定!
5、看看简单的代码实现吧(只贴出了关键性的代码)- #import "SAViewController.h"
- #import "BMapKit.h"
- @interface SAViewController () <BMKLocationServiceDelegate>
- @property (nonatomic, strong) BMKLocationService *location; // 定位服务
- @end
- @implementation SAViewController
- - (void)viewDidLoad
- {
- [super viewDidLoad];
-
- // 初始化定位服务
- self.location = [[BMKLocationService alloc] init];
- // 设定定位服务代理
- self.location.delegate = self;
- // 开启定位服务功能
- [self.location startUserLocationService];
- }
- #pragma mark 获取定位信息后回调方法
- - (void)didUpdateUserLocation:(BMKUserLocation *)userLocation
- {
- // 输出当前位置信息
- NSLog(@"%@", userLocation.location);
- }
- @end
复制代码
6、代理会每隔一秒输出一次位置信息,代码中让程序输出一个CLLocation对象,包含了经纬度、移动速度、海拔高度及当前的时间等,如:2014-11-17 10:43:36.496 MapDemo[10082:607] <+46.00750273,+110.01311632> +/- 5.00m (speed -1.00 mps / course -1.00) @ 11/17/14, 10:43:36 AM China Standard Time
|