Maps SDK for iOS 高级计划的版本说明

版本 2.0.1 - 2016 年 7 月 29 日

解决的问题

  • 现在,通过 Swift 访问时可正确输入数组属性(问题 10183)。

版本 2.0.0 - 2016 年 7 月 26 日

改进

  • 现在,高级计划与标准计划使用相同的基础 SDK。高级计划的所有功能和您的 API 密钥可继续正常使用。当前的高级计划 SDK (1.13.x) 在一年内仍受支持,但我们建议在此期间升级为经过简化的全新 Google Maps SDK for iOS 2.0。如需了解详情,请参阅迁移到 Google Maps SDK for iOS 2.0
  • 此版本将 Places API 从 Maps SDK 中拆分出来。以前,如果您要使用 Places API,就必须包含所有 GoogleMaps。拆分后,Places API 二进制文件的最终大小比之前合并时的二进制文件小 70%。如果您只使用 Maps SDK,则不会受到影响,除非您将 GoogleMaps 上的依赖项固定到 2.0 版之前的版本。在这种情况下,您应该在 Podfile 中更新此限制。如果您目前使用 Places API,请参阅迁移到 Google Places API for iOS 2.0

解决的问题

  • GoogleMaps 二进制文件已缩减至不超过 100MB,以避免超出 GitHub 的文件大小限制(问题 9030)。
  • 现在可以下载 Maps 框架进行手动安装。如需了解详情,请参阅使用入门问题 8856)。
  • 现在,在旋转图标后,GMSGroundOverlays 也可以正确响应触摸输入(问题 9544)。
  • 标记信息窗口现在可一直呈现(问题 9670问题 9819)。
  • 现在,使用 mapView:markerInfoContents: 的返回值创建的信息窗口将正确遵守所返回内容的高度,而不是始终根据宽度保持方正。
  • 修复了在支持 @3x 大小图片的设备上会超出纹理缓存限制的问题(问题 9859)。

实用程序库更新 - 2016 年 7 月 19 日

特点

版本 1.13.2 - 2016 年 5 月 12 日

解决的问题

  • 添加了一个临时解决方法,以避免误报使用了与非公开 API 匹配的选择器(名为 imageWithName)(问题 9704)。

版本 1.13.1 - 2016 年 5 月 2 日

解决的问题

  • 修复了在将已启用自动布局的 UIView 用作信息窗口或标记 iconView 时应用挂起的问题(问题 9525)。
  • 更改了 lookUpPlaceID,使其在出现错误的情况下不会两次调用其回调(问题 9310)。

版本 1.13.0 - 2016 年 3 月 29 日

特点

  • 基于 UIView 的标记。借由提供一个可通过 iconView 属性显示的自定义视图层次结构,标记内容现在可以显示高级动画。如需了解详情,请参阅文档问题 5203)。
  • 现在,信息窗口的自定义视图能够以动画显示。将关联标记上的 tracksInfoWindowChanges 设置为 YES,即可启用实时更新(问题 5559)。
  • 在新款 iOS 设备上,地图渲染的速度现在默认为 60fps。在 GMSMapView 上设置新 preferredFrameRate 属性以还原到旧版行为 (Conservative),或设置新的低帧率选项以节省电量 (PowerSave)(问题 5066)。
  • 向 GMSMapViewDelegate 添加了 mapViewSnapshotReady:,此函数会在地图内容(包括标记和其他叠加层)完全呈现时触发。
  • 现在,Places API 中的自动补全微件可以提供自定义样式设置选项。

解决的问题

  • 现在,GMSCoordinateBounds initWithVisibleRegion: 能够为较大的视口选择正确的边界。
  • 添加了一个临时解决方法,以避免在“我的位置”按钮停用时使用 iOS 7 之前的方法拍摄的快照出现图形问题(问题 9173)。
  • 现在,GMSAutocompleteViewController 可在 Storyboard 中正常使用。
  • 添加了缺失的地点类型常量(问题 8121)。

2016 年 2 月

解决的问题

  • 修复了所含位码中导致 Xcode 归档操作失败的损坏(问题 9368)。
  • 添加了一个针对 Xcode 6.4 中某个限制的临时解决方法,此限制导致 Xcode 6.4 无法编译包含的标头。

2016 年 2 月

特点

  • 向 Places API 添加了地点照片(问题 8202)。
  • 向 GMSPlace 对象添加了结构化地址组件(问题 8121)。
  • SDK 方法签名已更新,添加了泛型和 null 性注解。

解决的问题

  • GMSPlace 对象现在包含评分和价格水平(如果有)。
  • 修复了关于自动补全微件界面的几个小问题。
  • panoramaView:didMoveCamera: 在 panoramaView 委托 setter 期间不再调用(问题 5630)。
  • 未使用的旧徽标文件现在已从 SDK 中移除(问题 9148)。
  • 接近对向子午线的多边形上的点按事件更加可靠。
  • 解决了在针对类别调用类方法时会引发未识别的选择器崩溃的问题(问题 9000)。

注意:弃用期已结束,因此 Maps Engine 图层支持已移除。

2015 年 12 月

解决的问题

  • 现在,以模式方式显示的地点自动补全微件可以正确遵守 UINavigationBar 外观代理设置。
  • 解决了关于地点自动补全微件界面的小问题。
  • 更新了 GoogleMaps.bundle info.plist,以避免在提交前验证中触发检查(问题 8488)。

2015 年 12 月

特点

  • 现在,位码包含在所有设备架构的 SDK 二进制文件中(问题 8219)。
  • 添加了关于地点自动补全微件的类。
  • 向 GMSMapViewDelegate 添加了长按信息窗口和关闭信息窗口的新事件。
  • GMSMapViewDelegate 添加了新事件,用于指示地图图块和标签正在渲染以及完成渲染的时间(问题 5430)。
  • GMSPanoramaViewDelegate 添加了新事件,用于指示全景图片图块正在渲染和完成渲染的时间(问题 5430)。
  • 现在,GMSGroundOverlay 可通过 opacity 属性支持 alpha 通道倍增值。
  • 向 GMSPolygon 添加了一个 holes 属性,以支持去除填充区,从而创建更复杂的形状(问题 5464)。
  • 上调了缩放级别大于 14 时的最大倾斜度(问题 5169)。
  • 向地点选择器添加了自动补全屏幕。
  • 将自动补全预测拆分成主要文本字段和次要文本字段。
  • 向 GMSAutocompleteFilter 添加了国家/地区过滤条件选项。
  • 向 GMSPlace 添加了视口字段。

解决的问题

  • 纠正了重叠标记上的点按处理方式(问题 7587问题 8591)。
  • 解决了应用在显示地图的同时进入和离开后台,会出现竞态条件依赖项崩溃的问题(问题 7011。)
  • 修复了将应用转至后台时会出现空白地图的问题(问题 8510)。
  • 暂时解决了核心动画中会导致标记跳转的问题(问题 8451)。
  • 进行了相关更新,以避免与使用 google-toolbox-for-mac 的应用发生微小冲突。
  • 为 Places API 结果使用 iPhone 语言,而不是区域格式化语言(问题 8536)。

注意:将 GMSMapView selectedMarker 设为地图上不存在的标记时,这一设置会被忽略,应始终先设置标记的地图属性,然后再尝试选择标记。

2015 年 10 月

解决的问题

  • 解决了 Swift 编译器在处理包罗头文件模块条目时出现的问题(问题 8524)。

2015 年 10 月

解决的问题

  • 修复了 iOS 9 上在未做任何选择就关闭地点选择器时应用发生崩溃的问题(问题 8672)。
  • 修复了在视图层次结构中同时使用 GMSMapView 和 UIWebView 或 WKWebView 时会发生崩溃的问题(问题 8343)。
  • 使用 Xcode 7 重新编译,以避免在 iOS 9 设备上引发“未能加载经过优化的模型”日志消息(问题 8459)。

2015 年 9 月

特点

  • Google 徽标已更新。

解决的问题

  • 现在,框架随设备版本的软件包一起提供,以通过 Xcode 7 的归档检查(问题 8568)。

2015 年 8 月

解决的问题

  • 修复了在后台发布地图视图时发生崩溃的问题(问题 8200)。
  • 解决了与使用 gtm-session-fetcher 可续传下载的应用之间的冲突。
  • 使用 Xcode 6.4 重新编译,以避免使用 Xcode 6.3 编译器时出现的一些错误。
  • 更新了 GoogleMaps.bundle info.plist,以避免在提交前验证中触发新检查(问题 8488)。

2015 年 6 月

解决的问题

  • 修复了在实例化 GMSPlacesClient 时会触发一个让用户在设备上启用蓝牙的请求的问题。
  • 对 GMSPlacePicker 界面进行了其他改进。

2015 年 5 月

特点

  • Places SDK for iOS 现在包含在 SDK 框架中,因此您可以在 iOS 应用中将人员与地点联系起来。如果想要在项目中使用 Places SDK for iOS,请按照入门指南中的说明启用 Places SDK for iOS 以及 Maps SDK for iOS。注意:您可以在项目中免费使用 Places SDK for iOS,但此 API 不在您的 Google Maps Platform 高级计划许可的涵盖范围内。这意味着 Places SDK for iOS 不在通过 Google Maps Platform 高级计划许可购买的增强支持或服务等级协议 (SLA) 的涵盖范围内,同时任何使用行为均受标准 Google Maps Platform 服务条款的约束,且不计入您的 Google Maps Platform 高级计划配额。如需详细了解如何启用 Places SDK for iOS,请与您的 Google 代表联系。
  • 通过 GMSUISettings 上的新 allowScrollGesturesDuringRotateOrZoom 属性,您可以控制用户能否在使用多点触控旋转或缩放手势时通过平移进行滚动(问题 7737)。
  • 现在,GMSPanoramaView 可以在 Storyboard 中使用。
  • 现在,GMSGeocoder 可以在应用处于后台时使用。
  • 现在,可在应用处于后台时调用 GMSServices sharedServices。请注意,如果首次调用 sharedServices 时应用处于后台,系统不会立即执行一些异步初始化操作,而是在地图首次显示时同步执行这些操作。
  • 现在,可在应用处于后台时处理 GMSMapViewGMSPanoramaView 初始化消息。这应该可以解决无法在后台使用 GMSMapViewGMSPanoramaView 的问题(问题 78608007803778967951)。
  • GMSMapViewGMSPanormaView 的 delegate 属性现在支持 IBOutlet,更便于在 Storyboard 中使用(问题 6866 的解决进展)。

解决的问题

  • 现在,即使没有可用的位置,也能正确调用 mapView:didTapMyLocationButtonForMapView:问题 7742)。
  • 现在,如果图片的宽高比与所选地面区域不匹配,在旋转图标时,GMSGroundOverlay 仍可正确显示(问题 7772)。
  • 修复了在 iOS 8 上调整地图大小时出现的问题。
  • 修复了在相机快速变化时应用有小概率发生崩溃的问题(问题 7885)。
  • 在添加具有某些无效边界的地面叠加层时,地图不会再挂起(问题 7701)。
  • 修复了标记用尽纹理内存时发生崩溃的问题(问题 7638)。
  • 对于可点按的圆圈,可将点按的 GMSCircle 正确返回到 mapView:didTapOverlay:问题 6890)。
  • 现在,即使“我的位置”点正在更新,也能调用 mapView:idleAtCameraPosition:问题 7889)。

注意

  • Xcode 编译器中对 ABI 进行了更改,因此 Xcode 6.3 是现在唯一可支持对 Maps SDK for iOS 进行编译的版本(问题 7900)。
  • 现在,Maps SDK for iOS 的最低目标 iOS 版本是 7.0。版本 6.0 不再受支持。
  • 此版本要求您的项目中包含以下额外的依赖项:Accelerate.frameworkCoreBluetooth.frameworkCoreGraphics.frameworkSecurity.framework

2015 年 2 月

特点

2014 年 12 月

特点

2014 年 10 月

特点

2014 年 5 月

特点

2014 年 5 月

特点

  • 支持 Google Maps Engine 图层。利用新的 GMSMapsEngineLayer 类将 Google Maps Engine 图层添加为互动式图块叠加层。
  • 此版本的功能与 Maps SDK for iOS v1.8.0 相当。

添加了与您所拥有的、他人与您共享的或公开的 Google Maps Engine 数据进行互动的功能。

2014 年 3 月

特点

2014 年 1 月

特点