Motivos para adicionar os dois SDKs no mesmo app iOS
Em alguns casos, convém ter o SDK do Driver e o do Consumer no mesmo app para iOS. Por exemplo:
- Você quer que um app tenha as funcionalidades para motoristas e passageiros.
- Seu app precisa da visualização de expeditor/dispatcher para que os motoristas possam usá-la, mas outros membros da equipe podem rastrear os detalhes de um único veículo.
Pré-requisitos para criar os dois SDKs no mesmo aplicativo
Os dois SDKs precisam ser definidos na configuração do projeto. Para diferentes formas de instalação do framework, siga o guia do SDK do driver com alguns pequenos ajustes:
Para instalação do Cocoapods, consulte Getting Started with the Driver SDK for iOS Project Configuration Cocoapods.
No Podfile, adicione a dependência do SDK do Consumer. O Podfile deve ficar assim:
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
Para instalação manual, consulte Introdução à instalação manual da configuração do projeto do SDK do Driver para iOS.
Depois de seguir o guia de instalação do SDK do Driver, siga as etapas 5 e 6 da seção Introdução à instalação manual da configuração do projeto do SDK do consumidor para iOS para configurar o SDK do consumidor.
Controle de versões
Tanto o SDK do driver quanto o SDK do consumidor precisam ter a versão 3.3.0 ou mais recente para oferecer suporte a esse recurso.
Alterações teóricas interruptivas dos SDKs
Os SDKs de driver e consumidor v3.3.0 introduzem as mudanças abaixo que podem causar problemas para alguns apps do SDK do Driver, embora isso seja improvável. Em geral, se o app do SDK do Driver usou classes destinadas ao SDK do consumidor, você precisará declarar o SDK do consumidor como uma dependência para evitar problemas. Veja a seguir a lista de alterações:
SDK do Driver
Classes não usadas removidas:
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
Renomeação da classe na visualização, que é usada apenas pelo modo de driver confiável na solução Last Mile Fleet. Para o modo confiável, consulte Modelo de driver confiável (prévia).
GMTSTaskInfo.h
->GMTDTaskInfo.h
SDK do consumidor
GMTSImmutableData
foi renomeado como GMTCImmutableData
. GMTSImmutableData
foi usado apenas como uma classe base e nunca foi usado diretamente.
GMTSImmutableData.h
->GMTCImmutableData.h
Renomeação de um typedef que deve ser compatível com versões anteriores:
GMTSFleetEngineIDString.h
->GMTCFleetEngineIDString.h