将驱动程序 SDK 和消费者 SDK 合并到同一 iOS 应用中

在同一 iOS 应用中添加这两个 SDK 的原因

在某些情况下,您可能同时想要驱动程序 SDK 和消费者 SDK 同一 iOS 应用。例如:

  1. 您希望通过一个应用处理驾驶员和乘客功能。
  2. 您的应用需要同时需要 expeditor/调度程序视图,以便您的驱动程序可以使用 但其他团队成员可以跟踪单辆车的详细信息。

在同一应用中构建这两个 SDK 的前提条件

两个 SDK 都必须在项目设置中配置。对于 框架安装,您可以遵循驱动程序 SDK 指南, 调整:

  1. 有关 Cocoapods 安装的信息,请参阅适用于 iOS 的驱动程序 SDK 使用入门 项目配置 Cocoapods

    在 Podfile 中,添加使用方 SDK 依赖项。Podfile 点赞

    source "https://cpdc-eap.googlesource.com/ridesharing-consumer-sdk.git"
    source "https://cpdc-eap.googlesource.com/ridesharing-driver-sdk.git"
    source "https://github.com/CocoaPods/Specs.git"
    
    target 'YOUR_APPLICATION_TARGET_NAME_HERE' do
        pod 'GoogleRidesharingConsumer'
        pod 'GoogleRidesharingDriver'
    end
    
  2. 如需手动安装,请参阅 iOS 版驱动程序 SDK 使用入门 项目配置手册 安装

    按照驱动程序 SDK 安装指南操作后, 适用于 iOS 的使用方 SDK 项目配置使用入门 手动 安装 配置使用方 SDK。

版本控制

驱动程序 SDK 和消费者 SDK 都需要为 3.3.0 或更高版本 支持此功能。

SDK 的理论破坏性更改

驱动程序 SDK 和使用方 SDK v3.3.0 引入了以下变更,这些变更可能 理论上讲,会导致某些驱动程序 SDK 应用出现问题,尽管这种情况不太可能发生。 一般来说,如果您的驱动程序 SDK 应用使用了面向消费者 SDK 的类, 需要将使用方 SDK 声明为依赖项,以避免出现问题。“关注”现为 更改列表:

Driver SDK

移除了未使用的类:

  • GMTSLatLng.h
  • GMTSRequest.h
  • GMTSRequestHeader.h
  • GMTSRequestOptions.h
  • GMTSRequestOptionsSupport.h
  • GMTSSpeedReadingSpan.h
  • GMTSTerminalLocation.h
  • GMTSTimestamp.h
  • GMTSTrafficData.h
  • GMTSTrip.h
  • GMTSTripPropertyField.h
  • GMTSTripWaypoint.h
  • GMTSVehicle.h
  • GMTSVehicleLocation.h
  • GMTSVehicleMatch.h
  • GMTSVehicleSupportedTripType.h
  • GMTSVehicleType.h
  • GMTSWaypoint.h

重命名了预览版中的类,该类仅供可信驾驶员模式在 最后一公里舰队解决方案。如需了解可信模式,请参阅可信驱动程序模型 (预览版)

  • GMTSTaskInfo.h -> GMTDTaskInfo.h

使用方 SDK

GMTSImmutableData 重命名为了 GMTCImmutableData 类。GMTSImmutableData 只用作基类,从未直接使用。

  • GMTSImmutableData.h -> GMTCImmutableData.h

重命名了一个应向后兼容的 typedef:

  • GMTSFleetEngineIDString.h -> GMTCFleetEngineIDString.h