移动应用软件开发综合实训(基于iOS平台)-2017 iOS苹果地图MapKit框架使用 API Reference 系列 之Mapkit解析.docx

移动应用软件开发综合实训(基于iOS平台)-2017 iOS苹果地图MapKit框架使用 API Reference 系列 之Mapkit解析.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
API Reference 系列 之Mapkit解析 前言 最近要开发一个地图相关的工具,于是去苹果开发者官网查阅了资料。发现网站更新了API Reference 的文档结构,聚合了Framework的Guide和所有类,变得很清晰阅读。 虽然官网的Guide解释的已经比较清楚,但是不够直观。于是结合官网资料,对Mapkit做了一些思维导图,并做了一些注解。 本文章适合有OC基础,但对Mapkit不了解的同学。另外,本文章只大概说明Mapkit的作用和相关类,不做具体API说明。 概要 本文章中主要针对Mapkit讨论了前三个问题,第四个问题则需要使用Mapkit的同学结合官网和其他网站上的Demo,去自己实践。即本文将要讨论的三个问题: Mapkit是什么 Mapkit解决了什么问题 Mapkit是怎么解决这些问题的 详解 Mapkit是什么 我们先看下官网的简要解释: Location-based information consists of two pieces: location services and maps. Location services are provided by the Core Location framework, which defines Objective-C interfaces for obtaining information about the user’s location and heading (the direction in which a device is pointing). Maps are provided by the Map Kit framework, which supports both the display and annotation of maps similar to those found in the Maps app. (To use the features of the Map Kit framework, you must turn on the Maps capability in your Xcode project.) Location services and maps are available on both iOS and OS X. 简单来说就是 Location framework 提供了定位和设备方向服务,MapKit提供了地图的标注和地图展示服务。 Mapkit解决了什么问题 通过Mapkit,我们可以获取当前定位、地图展示、标注、覆盖物、地理编码和反地理编码、位置检测、设备方向判断、获取路线信息、地理位置查询等地图相关的操作。 Mapkit是怎么解决这些问题的 Mapkit有很多类,针对以上的功能,画了一个思维导图,方便梳理。 地图相关概念 定位 iOS中获取用户当前坐标的方式有两种: 通过Core Loation Framework的CLLocationManager 通过Mapkit的MKMapView中userLocation获取(需要设置showsUserLocation) 从iOS8 开始,以上两种方式获取当前坐标时,都需要手动调用请求授权API: 配置plist中的授权提示文案,key为 NSLocationWhenInUseUsageDescription (前台) 或 NSLocationAlwaysUsageDescription(前台,后台) 手动调用CLLocationManager的requestWhenInUseAuthorization或requestAlwaysAuthorization,进行定位授权 通过CLLocationManager进行定位的基本步骤: 配置 CLLocationManager 调用 requestWhenInUseAuthorization 或 requestAlwaysAuthorization 实现CLLocationManagerDelegate 通过Mapkit中获取展示当前定位点的基本步骤: 创建MKMapView 设定showsUserLocation=YES 实现 MKMapViewDelegate的mapView:didUpdateUserLocation: 注: CLLocationManager获得的坐标类型是WGS84坐标(即真实的地理坐标),MKMapView获得的坐标类型为GCJ02(即国测局经纬度坐标,高德用该坐标系) 从iOS8以后,MKMapView只有展示后上才会启动定位,单独alloc一个MKMapView,并不会启动定位。 相关的类:CLLocationManager,MKMapView 地图展示 展示地图是通

您可能关注的文档

文档评论(0)

WanDocx + 关注
实名认证
内容提供者

大部分文档都有全套资料,如需打包优惠下载,请留言联系。 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档