Combina el SDK de Driver y el SDK de consumidor en la misma app para iOS.

Motivos para agregar ambos SDKs en la misma app para iOS

En algunos casos, es recomendable tener tanto el SDK de Driver como el SDK de consumidor en la misma app para iOS. Por ejemplo:

  1. Quieres una app que aborde las funciones para conductores y pasajeros.
  2. Tu app necesita una vista de expeditor/despachador para que los conductores puedan usarla, pero otros miembros del equipo pueden hacer un seguimiento de los detalles de un solo vehículo.

Requisitos para compilar ambos SDK en la misma aplicación

Ambos SDKs deben configurarse en la configuración del proyecto. Para ver las diferentes maneras de instalar frameworks, puedes seguir la guía del SDK de Driver con algunos ajustes menores:

  1. Para la instalación de CocoaPods, consulta Cómo comenzar a utilizar el SDK de Driver para CocoaPods de configuración de proyectos de iOS.

    En el Podfile, agrega la dependencia del SDK de consumidor. El Podfile debe verse de la siguiente manera:

    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. Para la instalación manual, consulta Cómo comenzar a utilizar el SDK de Driver para la instalación del manual de configuración del proyecto para iOS.

    Después de seguir la guía de instalación del SDK de Driver, sigue los pasos 5 y 6 del Manual de instalación de configuración de proyectos del SDK de consumidores para iOS para configurar el SDK de consumidores.

Control de versiones

Tanto el SDK de Driver como el SDK de consumidor deben tener la versión 3.3.0 o posterior para admitir esta función.

Cambios rotundos teóricos de los SDKs

La versión 3.3.0 de los SDK de Drive y para consumidores incluye los siguientes cambios que, en teoría, podrían causar problemas en algunas apps del SDK de Driver, aunque es poco probable. En general, si tu app del SDK de Driver usaba clases destinadas al SDK para consumidores, deberás declarar el SDK para consumidores como una dependencia a fin de evitar problemas. A continuación, se incluye la lista de cambios:

SDK de Driver

Se quitaron las siguientes clases sin usar:

  • 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

Se cambió el nombre de la clase en Vista previa, que solo se usa en el modo de controlador de confianza en la solución de flota de última vez. Para el modo de confianza, consulta Modelo de controlador de confianza (vista previa).

  • GMTSTaskInfo.h -> GMTDTaskInfo.h

SDK para consumidores

Se cambió el nombre de la clase GMTSImmutableData a GMTCImmutableData GMTSImmutableData solo se usó como clase base y nunca se usó directamente.

  • GMTSImmutableData.h -> GMTCImmutableData.h

Se cambió el nombre de un typedef que debería ser retrocompatible:

  • GMTSFleetEngineIDString.h -> GMTCFleetEngineIDString.h