Consumer SDK for iOS 版本说明

本部分包含 iOS 版 Consumer SDK 的版本说明。

v3.3.0(2024 年 3 月)

改动

  • 支持驱动程序 SDK 和消费者 SDK 兼容性,以便在同一应用中构建它们。
  • 支持适用于驱动程序 SDK 和消费者 SDK 的 Swift Package Manager。

v3.2.0(2023 年 12 月)

改动

  • 问题修复和文档更新。

已弃用

  • 废弃了 GMTCMapView 中的 [GMTCMapView initWithCoder]

v3.1.1(2023 年 10 月)

改动

  • 修复了无法调用 GMSMapViewDelegate 方法的 bug。

v3.1.0(2023 年 9 月)

改动

  • CocoaPod for Consumer SDK 现在是一个 .xcframework,它支持基于 Intel 和 Apple Silicon 的 Mac 上的开发者的设备和模拟器 build。

v3.0.1(2023 年 8 月)

改动

  • 修复了未定义的符号错误。

v3.0.0(2023 年 5 月)

改动

  • 移除了 GMTCMapView 中已废弃的初始化程序。
  • 修复了在从 GMTCTripModel 中移除所有订阅者后持续提取身份验证令牌的问题。
  • 现已冻结对 iOS 13 的支持。目前的最低 iOS 版本是 14.0。
  • 新的 Xcode 支持的最低版本为 14.0。请注意 Xcode 14 版本说明中关于停止支持使用位码进行构建的内容。
  • 根据移动操作系统版本支持政策,自 Consumer SDK for iOS v3.0.0 起,我们将冻结对 iOS 13 的支持。支持的最低新操作系统是 iOS 14。更早的 SDK 版本将继续支持 iOS 13。如果您的依赖项未指定版本号,IDE 将加载最新的 SDK 版本,而应用的新版本将不支持 iOS 13。在应用的构建依赖项中指定适用于 iOS 的消费者 SDK 版本,以便控制何时为新版应用提高支持的最低操作系统。

通知

冻结支持 iOS 14 - 2023 年 5 月 15 日

根据移动操作系统版本支持政策,我们将在即将发布的 iOS 版 Consumer SDK 中冻结对 iOS 14 的支持。

2024 年第二季度开始发布的适用于 iOS 的消费者 SDK 版本将至少支持 iOS 15。较低版本的 SDK 将继续支持 iOS 14。

如果您的依赖项未指定版本号,IDE 将加载最新的 SDK 版本,并且应用的新版本将不支持 iOS 14。

在应用的 build 依赖项中指定适用于 iOS 的 Consumer SDK 版本,以便控制何时为应用的新版本提高支持的最低操作系统。

v2.2.0(2023 年 2 月)

改动

  • 将头文件中的条款及条件的网址更新为正确的链接,并修复其他与标点符号相关的小问题。
  • 修正文档中的各种拼写、标点和其他小错误。

v2.1.0(2022 年 9 月 12 日)

改动

  • 问题修复和文档更新。

v2.0.0(2022 年 7 月 18 日)

改动

  • 移除了终端点服务,其中包括:

    • GMTSTerminalPoint
    • GMTSTerminalPointAccessPoint
    • GMTSTerminalPointTravelMode
    • GMTSTerminalPointsVehicleSearchPreference
    • GMTSTravelModeETA
  • 现已冻结对 iOS 12 的支持。目前的最低 iOS 版本是 13.0。

已弃用

  • 废弃了公共类 GMTCMapView 中的初始化程序。

通知

在消费者 iOS SDK 的 2023 年主要版本更新中,我们将冻结对 iOS 13 的支持(弃用)。自 2023 年 6 月起,支持的最低 iOS 版本为 iOS 14。客户应做好准备,在更新之前更改代码中的最低版本支持标志。

v1.0.6(2022 年 3 月 24 日)

修复了内部错误。

v1.0(2021 年 12 月 7 日)

此版本支持的最低 iOS 版本是 12.0。

API 变更

身份验证变更

  • SDK 会为每个 gRPC 调用 getToken() 来实现 AuthTokenFactory 接口。为此,SDK 会拦截对 Fleet Engine 的调用,然后将返回的 JWT 从 getToken() 附加到 HTTP 授权标头。请注意,由您自行生成有效令牌。也就是说,令牌未过期,且有适当的声明。

  • 已将 GMTSAuthorization 更改为 GMTCAuthorization

  • 移除了 GMTSServiceType

行程信息和回调变更

  • 更新了行程属性名称:remainingDistanceOfActiveRouteInMeters

  • 向“GMTCTripModelSubscriber”添加了路况数据更新功能。

  • 添加了属性 remainingDistanceOfCurrentRouteInMeters

  • GMTSTripPropertyFields 添加了新属性:

    • GMTSTripPropertyFieldRemainingDistanceOfActiveRouteInMeters.
    • GMTSTripPropertyFieldDistanceOfRemainingRouteInMetersGMTSTripPropertyFieldActiveRoute.
    • GMTSTripPropertyFieldActiveRouteTrafficGMTSTripPropertyFieldRemainingRoute.
    • GMTSTripPropertyFieldRemainingRouteTraffic.
  • GMTSTrip 中添加了新属性 remainingDistanceOfActiveRouteInMetersdistanceOfRemainingRouteInMeters

  • RegisterSubscriber现在会自动启动tripModel的行程监控。当订阅者全部用完时,UnregisterSubscriber将停止监控。ModelStateModelOptions 已分别重命名为 stateoptions。从公开头文件中移除了 stopstart

    • modelState 重命名为了 state
    • modelOptions 重命名为了 options
    • 移除了 TripModel 中的 start()stop()

其他 API 变更

  • 移除了 GMTSTripPreviewGMTSTripPreviewVehicleOptions

  • 移除了上车点选择服务,其中包括:

    • GMTSPickupPointArea.
    • GMTSPickupPointGroup.
    • GMTSPickupPointMatch.

冻结支持 iOS 12 - 2021 年 10 月 18 日

为了响应内部依赖项的变化,我们将在即将发布的 iOS 版 Consumer SDK 中冻结对 iOS 12 的支持。

适用于 iOS 的消费者 SDK v2.0 或更高版本将仅支持搭载 iOS 13 及更高版本的设备。更早的 SDK 版本将继续支持 iOS 12。

如果 CocoaPods 或 Carthage 中的依赖项未指定版本号,Xcode 将加载应用的最新版本和新版本不支持 iOS 12。

请务必在应用的 build 依赖项中指定版本,以便控制何时为应用的新版本提高支持的最低操作系统版本。如需查看指定版本的示例,请参阅 Maps SDK for iOS 文档。 请参阅有关应用维护最佳实践的指南。

v0.11.0(2021 年 9 月 30 日)

变更

API 变更

更新了所有类的名称前缀:

  • GRC -> GMTC,例如:GRCMapView -> GMTCMapView
  • GRS -> GMTS,例如 GRSTrip -> GMTSTrip

已更新 GMTSAuthorization API

  • 添加了新键 kGMTSAuthorizationContextKeyTaskID,用于在调用 fetchAuthTokenForServiceType:authorizationContext:completion: 时在 authorizationContext 中指定任务 ID。

  • 更新了 GMTSServiceType 枚举:

    旧值 新值
    GMTSServiceTypeUnknown GMTSServiceTypeUnspecified
    GMTSServiceTypeTripService
    GMTSServiceTypeVehicleService GMTSServiceTypeVehicle
    GMTSServiceTypeTerminalPointService
    GMTSServiceTypeTask

v0.10.0(2021 年 5 月 3 日)

变更

不再支持 iOS 10.x。目前支持的最低 iOS 版本是 11.0。

API 变更

v0.9.0(2021 年 1 月 25 日)

改进

API 变更

v0.6.7(2020 年 3 月 23 日)

改进

  • 当行程状态为“ARRIVED_AT_PICKUP”时,系统不会显示路线多段线。
  • 离线车辆跟踪功能已得到改进(需要 Driver SDK 1.15):
    • 当车辆行驶经过上车点时,车辆跟踪不会使车辆与路线对应。
    • 借助车辆跟踪功能,可以显示越野行驶的车辆;例如,在未在地图上标示的停车场。
  • 当驾驶员的目的地与 Fleet Engine 中的目的地不匹配时,不再将车辆图标强制设置为过时的路线。
  • 过时行程响应现在会被舍弃。

v0.6.3(2019 年 12 月 16 日)

变更

  • 添加了行程请求延迟时间日志。

  • 添加了行程响应错误日志。

v0.5.4(86.0)(2019 年 8 月 7 日)

新功能

  • 为行程分享提供多目的地支持。

API 变更

  • 已将新行程状态添加到GRSTripStatus

    • GRSTripStatusEnrouteToIntermediateDestination.
    • GRSTripStatusArrivedAtIntermediateDestination.
  • GRSTrip 添加了新属性。

    • intermediateDestinations.
    • intermediateDestinationIndex.
  • GRCTripServiceSubscriber 添加了新的回调 API。

    • - (void)tripService:(GRCTripService *)service didUpdateETAToNextWaypoint:(NSTimeInterval)nextWaypointETA;

    • - (void)tripService:(GRCTripService *)service didUpdateIntermediateDestinations: (nullable NSArray<GRSTerminalLocation *> *)intermediateDestinations;

  • GRCMapViewMarkerType 中添加了新的标记类型枚举。

    • GRCMapViewMarkerTypeIntermediateDestination.
  • GRCCustomizableMarkerType 中添加了新的可自定义标记类型枚举。

    • GRCCustomizableMarkerTypeIntermediateDestination
  • GRCMapViewCustomerState 添加了新的 mapViewCustomerState。

    • GRCMapViewCustomerStateJourneySharing
  • 已从“GRCMapViewCustomerState”中删除 4 位 mapViewCustomerState 成员。

    • GRCMapViewCustomerStateWaitingForPickup
    • GRCMapViewCustomerStateArrivedAtPickup
    • GRCMapViewCustomerStateEnRoute
    • GRCMapViewCustomerStateEndOfTrip
  • GRCMapView 中删除了 4 个 mapView 回调 API。

    • -(void)mapViewDidStartWaitingForPickup:(GRCMapView *)mapview;
    • -(void)mapViewDidUpdateDueToDriverArrived:(GRCMapView *)mapview;
    • -(void)mapViewDidStartTripEnroute:(GRCMapView *)mapview;
    • -(void)mapViewDidCompleteTrip:(GRCMapView *)mapview;
  • GRCMapView 中新增了一个回调 API。

    • - (void)mapViewDidStartJourneySharing:(GRCMapView *)mapView;

改进

  • 当列表中第一个航点的预计到达时间发生变化时,更新所有剩余的航点预计到达时间。

  • 当驾驶员到达上车点时强制将摄像头自动重新置中。

  • 相机边界将包括上车点和下车点,在行程预订后到任何匹配的车辆位置可用之前。

v0.4.5(28.0)(2019 年 6 月 26 日)

新功能

  • 拼车支持共享行程。

API 变更

  • 已从 GRSTerminalLocation 中移除 type 字段。

bug 修复

  • 现在,仅在路线段同步时才会进行路线动画,从而改善了用户体验。

  • 修复了以下问题:针对 GRCCustomizableMarkerTypeSelectedDropoffPoint 的 API isMarkerStyleOptionsCustomizedForType: 调用始终返回“否”。

v0.4.3(2019 年 5 月 17 日)

新功能

  • 行程分享背靠支持。
  • 行程共享现在支持动态车辆位置报告费率。

API 变更

GRCMapViewMarkerType

旧值 新值
GRCMapViewMarkerTypeSelectedPickup GRCMapViewMarkerTypeSelectedPickupPoint
GRCMapViewMarkerTypeSelectedDropoff GRCMapViewMarkerTypeSelectedDropoffPoint
GRCMapViewMarkerTypePickupCandidate GRCMapViewMarkerTypeSuggestedPickupPoint
GRCMapViewMarkerTypeHighlightedPickupPoint
GRCMapViewMarkerTypeTripPreviewPickupPoint
GRCMapViewMarkerTypeTripPreviewDropoffPoint
GRCMapViewMarkerTypeTripPickupPoint
GRCMapViewMarkerTypeTripDropoffPoint

GRCMapView

旧值 新值
redrawRidesharingOverlays

GRCTripServiceSubscriber 协议

旧值 新值
tripService:didUpdateTripRoute: tripService:didUpdateActiveRoute:
tripService:didUpdateRemainingDistance tripService:didUpdateActiveRouteRemainingDistance
tripService:didUpdateRemainingWaypoints

GRCPolylineType

旧值 新值
GRCPolylineTypeTripRoute GRCPolylineTypeActiveRoute
GRCPolylineTypeTripPreviewAutoRoute GRCPolylineTypePreviewAutoRoute
GRCPolylineTypeTripPreviewTaxiRoute GRCPolylineTypePreviewTaxiRoute
GRCPolylineTypeTripPreviewTruckRoute GRCPolylineTypePreviewTruckRoute
GRCPolylineTypeTripPreviewTwoWheelerRoute GRCPolylineTypePreviewTwoWheelerRoute
GRCPolylineTypeRemainingRoute

GRCPolylineStyleOptions

旧值 新值
zIndex

GRSTrip

旧值 新值
remainingWaypoints 个房源
route 个房源
remainingDistanceInMeters 个房源
GRSTripWaypoint

改进

  • 降低了行程共享的网络消耗。
  • 所选的候选自提候选现已突出显示。
  • 与 Maps SDK v3.1.0 兼容

bug 修复

  • 修复了第二次标记无法响应点按的问题。
  • 修复了以下问题:预订行程后,mapView 的镜头边界有时会在开始时显示意外的视口。
  • 修复了 SDK Version API 的问题。