高德地图的使用心得

本人刚学习ios开发,有很多不懂的地方,期待和大家的交流;也是第一次写博客,写得不好的地方请多多包涵。

最近一段时间在开发一个跑步软件,要用到高德地图来显示用户当前位置,记录用户跑步轨迹,下面就说说这个高德地图的使用和一些需要注意的地方吧。

一.配置工程

高德地图我是用cocoaPods来管理的,cocoaPods不知道怎么使用的可以去百度一下,网上很多教程

(1)因为只是显示用户的位置,所以没必要使用3D地图,就使用的'AMap2DMap',先配置工程,既然是跑步,地图肯定得后台运行,在配置工程里面点击TARCETS->Capabilities,选择下图所示的Background Modes,勾选Location updates


(2)在plist文件中加入‘NSLocationWhenInUseUsageDescription’或‘NSLocationAlwaysUsageDescription’字段,它是一个string类型的,值就是提示用户开启定位之内的内容(如下图所示)



NSLocationWhenInUseUsageDescription      表示应用在前台的时候可以搜到更新的位置信息。                                  NSLocationAlwaysUsageDescription         表示应用在前台和后台(suspend或terminated)都可以获取到更新的位置数据

iOS9为了增强数据访问安全,将所有的http请求都改为了https,为了能够在iOS9中正常使用地图SDK,请在"Info.plist"中进行如下配置,否则影响SDK的使用:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>
如下图所示:


在iOS9中为了能正常调起高德地图App的功能,必须在"Info.plist"中将高德地图App的URL scheme列为白名单,否则无法调起,配置如下:

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>iosamap</string>
</array>
如下图所示:


到这里工程基本配置完成。

二.接下来就是代码部分

(1)在AppDelegate.m中导入如下头文件

 #import <MAMapKit/MAMapKit.h>
在地图初始化之前- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法里面添加如下代码,配置之前在官网上申请的Key(如果在高德地图官网没有申请应用获取到key值,你还得去高德官网申请一个应用获取key值

[MAMapServices sharedServices].apiKey = @"你申请的key";
如果出现如下情况,就是你申请的key值与你工程的Bundle Identifier不匹配,需要去高德官网重新配置一下



(2)接下来就是初始化地图,在需要初始化的ViewController里导入头文件

   #import <MAMapKit/MAMapKit.h>
再初始化地图

//初始化地图
   MAMapView *mapView = [[MAMapView alloc] initWithFrame:self.view.frame];
   //是否显示用户位置
   mapView.showsUserLocation = YES;
   //设置代理
   mapView.delegate = self;
   //加载mapView
   [self.view addSubview:mapView];
如果需要后台定位,还得设置下面两个属性

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值