iOS开发高德地图简单定位

作者: 郝嗨森 | 来源:发表于2016-08-20 11:29 被阅读2109次

    1.高德开放平台

    高德开放平台申请账号进行登录,进入控制台创建新应用

    进入控制台 创建新应用 填写应用信息

    为应用添加Key

    2.xcode配置

    先从高德开放平台下载基础SDK和定位SDK,导入工程当中;然后添加系统依赖库:libc++.tbd,libstdc++.6.0.9.tbd,libz.tbd,SystemConfiguration.framework, CoreTeleohony.framework

    在info.plist中添加网络安全设置和申请定位权限,NSLocationWhenInUseUsageDescription 表示应用在前台的时候可以搜到更新的位置信息,NSLocationAlwaysUsageDescription 表示应用在前台和后台(suspend 或 terminated)都可以获取到更新的位置数据。

    3.代码实现

    在app delegate.m中设置上面创建应用后添加的Key

    在要进行定位的地方添加以下代码

    //导入基础库和定位库

    #import<AMapLocationKit/AMapLocationKit.h>

    #import<AMapFoundationKit/AMapFoundationKit.h>

    @property (nonatomic, strong)AMapLocationManager * locationManager; //位置管理类

    //创建管理器对象

    self.locationManager = [[AMapLocationManager alloc] init];

    //设置精度

    [self.locationManager setDesiredAccuracy:kCLLocationAccuracyHundredMeters];

    //设置定位超时时间

    self.locationManager.locationTimeout = 10;

    //设置反地理编码超时时间

    self.locationManager.reGeocodeTimeout = 10;

    //请求定位

    [self.locationManager requestLocationWithReGeocode:YES completionBlock:^(CLLocation *location, AMapLocationReGeocode *regeocode, NSError *error) {

    if (error) {

    NSLog(@"%@", error.localizedDescription);

    }

    //打印定位到的位置坐标  location:(40.037471,116.370002)

    NSLog(@"location:(%f,%f)", location.coordinate.latitude,location.coordinate.longitude);

    if (regeocode) {

    //反地理编码,打印定位到的地址信息  reGeocode:北京市海淀区东升镇庄盛百货(清河店)

    NSLog(@"reGeocode:%@", regeocode.formattedAddress);

    }

    }];

    高德地图SDK会不断更新,使用时请下载最新版并参考高德开放平台官网文档

    相关文章

      网友评论

      • PGOne爱吃饺子:楼主,可以问你一个问题么
        郝嗨森:@4140d18ee6fc 前台定位和持续定位都有可能用到,不同项目要求不一样
        PGOne爱吃饺子:@一个等待夏天的秋天 我想问一下你们用高德地图定位是哪一种的定位形式,是后台的还是持续的
        郝嗨森:@4140d18ee6fc 什么

      本文标题:iOS开发高德地图简单定位

      本文链接:https://www.haomeiwen.com/subject/bbhisttx.html