Esta seção contém notas da versão do SDK do Consumidor para Android.
Comunicado: congelamento do suporte para os níveis da API 23, 24 e 25
De acordo com a Política de suporte a versões de SO para dispositivos móveis, vamos congelar o suporte ao Android 6 e 7 (níveis 23, 24 e 25 da API) nas próximas versões principais do SDK do Consumidor para Android.
As versões do SDK do Consumidor para Android lançadas a partir do quarto trimestre de 2025 serão compatíveis com o Android 8 (nível 26 da API) ou versões mais recentes. As versões anteriores do SDK vão continuar compatíveis com o Android 6 e 7.
Se as dependências não especificarem um número de versão, o ambiente de desenvolvimento integrado vai carregar a versão mais recente do SDK, e os novos builds do app não serão compatíveis com o Android 6 e 7.
Especifique uma versão do SDK do Consumidor para Android nas dependências de build do aplicativo para controlar quando você aumenta o SO mínimo compatível com as novas versões do app.
5.0.0 (9 de novembro de 2026)
- Adição de suporte ao modo completo do R8. As regras do ProGuard do SDK agora mantêm as classes do provedor gRPC
que são carregadas por reflexão. Assim, os apps que ativam o modo completo do R8
não falham mais na inicialização com
Unable to load OkHttpChannelProvider.
Correções de bugs
- Correção de um problema em que as tentativas de conexão segura com o Fleet Engine podiam permanecer pendentes indefinidamente se um proxy de operadora intermediário parasse durante a configuração da conexão, impedindo que as atualizações de status da viagem e de rastreamento de veículos fossem atualizadas em determinadas redes móveis. O SDK do Consumidor agora aplica um tempo limite de conexão e se recupera automaticamente em uma nova conexão.
Mudanças de dependência e configuração
A partir da versão 5.0.0 do SDK do Consumidor para Android, há novos requisitos mínimos:
- A versão mínima do Android com suporte é o Android 7.0 (nível 24 da API).
- Os apps precisam fazer upgrade para o Kotlin 2.4.
O SDK agora é criado com as seguintes ferramentas:
- O Plug-in do Android para Gradle foi atualizado para a versão 9.2.0.
- O Gradle foi atualizado para a versão 9.4.1.
4.1.0 (26 de maio de 2026)
- Melhorias internas: migração do repositório de dados interno para o Jetpack DataStore.
Mudanças de dependência e configuração
- A versão da dependência do Kotlin foi atualizada para a v2.3.0.
- O Plug-in do Android para Gradle foi atualizado para a versão 8.13.2.
- O Gradle foi atualizado para a versão 8.13.
- A biblioteca Desugar foi atualizada para a versão 2.1.5.
- Atualizamos o SDK do Maps para a versão 20.0.0 e as seguintes dependências do GMS Core:
- play-services-location: 21.3.0
- play-services-tasks: 18.4.1
- play-services-common: 18.1.0
- play-services-basement: 18.1.0
- Adicionamos dependências do Jetpack Datastore (androidx.datastore:datastore-core:1.2.0, androidx.datastore:datastore-guava:1.2.0).
4.0.0 (3 de outubro de 2025)
- Melhorias internas.
3.2.0 (26 de junho de 2025)
- Melhorias na geração de registros internos.
Mudanças de dependência e configuração
- A partir da versão 3.2.0 do SDK do Consumidor para Android, os apps precisam fazer upgrade para o Kotlin 2.1.
Correções de bugs
- Use o comprimento da polilinha em vez da distância aérea para decisões de animação interna.
3.1.0 (10 de março de 2025)
- Melhorias na geração de registros internos.
3.0.0 (6 de dezembro de 2024)
Mudanças de dependência e configuração
- A partir da versão 3.0.0 do SDK do Consumidor para Android, os apps precisam fazer upgrade para o Kotlin 2.0. Consulte o Guia de migração do SDK do Consumidor para Android 3.0.
- O targetSdk do SDK do Consumidor agora é o Android 14 (nível 34 da API). Esse é um requisito para todos os apps implantados na Google Play Store a partir de agosto de 2024. Consulte Atender ao requisito de nível desejado da API do Google Play.
2.99.0 (25 de novembro de 2024)
Correções de bugs
- Correção do erro de ANR que ocorre quando
ConsumerApi.cleanUp()leva muito tempo para ser executado. Isso será lançado progressivamente (começando em 0%) depois que a versão for integrada. - Correção de um problema em que os motoristas recebiam erros de gRPC com o código "INTERNAL" e a mensagem "Panic! Isso é um bug!". Isso será lançado progressivamente (começando em 0%) depois que a versão for integrada.
2.3.0 (2 de agosto de 2024)
Mudanças na API
Adicionamos suporte à Estilização de mapas baseada na nuvem, que permite criar uma experiência de mapa de estradas personalizada para os usuários sem precisar atualizar o código dos apps sempre que você fizer uma mudança no estilo de mapa. Para mais informações, consulte Estilizar o mapa com a estilização de mapas baseada na nuvem.
Adicione o método
getServerTimeMillis()aVehicleLocationpara determinar o momento em que a atualização de local foi recebida pelo Fleet Engine.
2.2.0 (7 de maio de 2024)
Mudanças na API
- Adicionamos suporte à API para integração com o Jetpack Compose. Este é um recurso experimental. Para mais detalhes sobre a integração com o Jetpack Compose, entre em contato com seu representante.
2.1.0 (17 de janeiro de 2024)
Correções de bugs
- Correção de uma falha que ocorre quando o SDK é inicializado mais de uma vez durante o ciclo de vida do aplicativo.
Mudanças na API
- Introduz o método para recuperar a instância
GoogleMapcriada pelo SDK (ConsumerGoogleMap.getGoogleMap()). - Introduz a API para recuperar as instâncias de
Markercriadas pelo SDK para representar o veículo (ConsumerController.getConsumerMarker()). - Introdução da API para receber atualizações projetadas do cliente sobre tempo e distância durante o compartilhamento de trajeto (
ProjectedRouteEta).
1.99.2 (3 de novembro de 2023)
Correção de uma falha que ocorre quando o SDK é inicializado em um processo remoto, separado do aplicativo.
Correção de uma falha que ocorre durante a execução de uma animação de câmera quando não há espaço vertical ou horizontal suficiente para o padding. Isso só ocorre no renderizador de mapas mais recente.
Correção de um bug que fazia com que o primeiro trecho de uma viagem consecutiva fosse cortado quando o segundo trecho passava pela mesma via.
Problemas
- O
ConsumerApi.initialize()gera uma exceção se for invocado quando uma instância de API já existir. Para contornar esse problema, primeiro chameConsumerApi.getInstance()e avalie oTaskretornado para determinar se uma instância de API já existe.
2.0.0 (15 de setembro de 2023)
Comunicado: alterações interruptivas
O requisito de nível mínimo da API foi atualizado de 21 para 23.
Atualiza o requisito de versão do SDK do Maps da v17.0.0 para a v18.1.0.
O requisito mínimo da versão da biblioteca padrão do Kotlin foi atualizado da v1.6.10 para a v1.9.0.
Atualizar as versões das dependências do Google Play Services
O requisito mínimo da versão da biblioteca play-services-base foi atualizado da v18.0.1 para a v18.2.0.
O requisito mínimo da versão da biblioteca play-services-basement foi atualizado da v18.0.0 para a v18.2.0.
O requisito mínimo da versão da biblioteca play-services-location foi atualizado da v17.0.0 para a v21.0.1.
O requisito mínimo da versão da biblioteca play-services-tasks foi atualizado da v18.0.1 para a v18.0.2.
Adiciona a biblioteca androidx.room:room-runtime com o requisito de versão mínima definido como v2.5.2.
Atualize as seguintes versões de dependências:
O requisito mínimo da versão da biblioteca android-maps-utils foi atualizado da v0.4.2 para a v3.5.2.
O requisito de versão mínima do com.google.android.datatransport:transport-backend-cct foi atualizado da v3.0.0 para a v3.1.9.
O requisito de versão mínima do com.google.android.datatransport:transport-runtime foi atualizado da v3.0.1 para a v3.1.9.
O requisito mínimo da versão androidx.lifecycle:lifecycle-extensions foi atualizado da v2.0.0 para a v2.2.0.
O requisito mínimo da versão androidx.lifecycle:lifecycle-common-java8 foi atualizado da v2.0.0 para a v2.6.1.
O requisito mínimo da versão androidx.appcompat:appcompat foi atualizado da v1.0.0 para a v1.6.1.
O requisito mínimo da versão androidx.fragment:fragment foi atualizado da v1.0.0 para a v1.6.1.
Remove as seguintes APIs descontinuadas:
ConsumerTrip,ConsumerTripCallback,ConsumerTripManager,ConsumerTripOptions. Eles foram substituídos porTripModel,TripModelCallback,TripModelManagereTripModelOptions.Os apps que usam o SDK do Consumidor agora precisam ter
targetSdkVersionda API 31 ou mais recente,compileSdkVersionda API 33 ou mais recente.Os apps que usam o SDK do Consumidor agora precisam ativar o suporte à biblioteca do Java 8. Consulte https://developer.android.com/studio/write/java8-support para ver instruções de atualização.
Os apps que usam o Proguard ou o Dexguard precisam migrar para o R8. Consulte https://developer.android.com/build/shrink-code para mais informações.
Os apps que usam o SDK do Consumidor precisam ativar a simplificação. Consulte https://developer.android.com/studio/write/java8-support#library-desugaring para ver as instruções.
O método
ConsumerApi.initialize()agora gera uma exceção se for invocado quando já houver uma instância de API criada. OTaskretornado porConsumerApi.getInstance()precisa ser usado para determinar se há uma instância da API criada anteriormente.
Comunicado: descontinuação de APIs
Descontinua as classes de anotação
Trip.TripStatuseTrip.TripTypee adiciona as classes de anotaçãoTripInfo.TripStatuseTripInfo.TripTypepara substituí-las.Como parte dessa mudança,
TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status)foi descontinuado eTripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status)foi adicionado para substituí-lo.Como parte dessa mudança,
TripInfo#getTripStatus()foi descontinuado, eTripInfo#getCurrentTripStatus()foi adicionado para substituí-lo.Como parte dessa mudança,
TripInfo#getTripType()foi descontinuado, eTripInfo#getCurrentTripType()foi adicionado para substituí-lo.
Descontinua a classe
Trip.
Outras mudanças e correções de bugs
Suporte para solicitar o renderizador mais recente do SDK do Maps. Consulte Novo renderizador de mapas para mais detalhes.
Oferece suporte ao intervalo do SDK do Maps da versão 18.1.0 (inclusive) até a versão 19.0.0 (exclusive).
Correção do erro "prazo excedido" para comunicações internas entre o SDK e o back-end do Google.
Correção de um problema de renderização em telas pequenas e no modo picture-in-picture.
Guia de migração
1.99.1 (31 de agosto de 2023)
Correções de bugs
Correção de uma falha que ocorre quando a atividade ou o fragmento do host do SDK é destruído.
Correção de uma falha que ocorre quando as dimensões do MapView são 0 (altura ou largura).
Correção de uma falha que ocorre ao projetar a localização do veículo na polilinha do trajeto.
Melhorias
- Impede que o SDK falhe quando o aplicativo hospedado é transferido por sideload e os recursos visuais padrão não estão presentes.
1.99.0 (22 de junho de 2023)
Correções de bugs
Correção de um problema de renderização em telas pequenas e no modo picture-in-picture.
Correção de oscilações do veículo durante o compartilhamento de trajeto.
1.2.1 (7 de junho de 2023)
Correções de bugs
- Correção de um bug que fazia o veículo piscar durante o compartilhamento de trajeto.
1.2.0 (21 de novembro de 2022)
Correções de bugs
- Correção de um bug que fazia com que o tráfego vazio fosse informado no callback
onTripActiveRouteTrafficUpdated.
Novos recursos
- As polilinhas que consideram o trânsito agora estão em disponibilidade geral.
1.1.2 (27 de outubro de 2022)
Correções de bugs
- Correção de um bug que fazia com que a polilinha do trajeto desaparecesse depois que uma
JourneySharingSessionera iniciada mais de uma vez para umaTripModel.
Comunicado: congelamento do suporte para o Android 5 (25 de julho de 2022)
Para a versão 1.1.1 do SDK, estamos oferecendo mais um ano de suporte para apps executados no Android 5, para os níveis da API 21 e 22.
O que isso significa:
O SDK do Consumidor em execução nos seus apps Android será compatível com o Android 5 (nível 21 da API) até 30 de junho de 2023.
Depois de 30 de junho de 2023, vamos oferecer suporte apenas aos níveis 23 e mais recentes da API do Android. Em outras palavras, vamos deixar de oferecer suporte aos níveis 21 e 22 da API Android em todas as versões do SDK após essa data. Isso significa que os bugs relacionados ao Android 21 ou 22 em qualquer versão do SDK (incluindo a 4.x) não serão corrigidos, e não garantimos que os SDKs vão se comportar corretamente.
v1.1.1 (25 de julho de 2022)
Mudança de dependência
- O nível mínimo da API Android com suporte foi reduzido para 21.
v1.1.0 (28 de abril de 2022)
- Melhorias internas.
v1.0.19 (17 de março de 2022)
Correções de bugs
- Correção de um vazamento de memória na classe
ConsumerApi.
v1.0.14 (30 de novembro de 2021)
O nível mínimo da API Android com suporte agora é o 23.
Mudanças na API
Mudanças nas classes
ConsumerTripeConsumerTripManager.- Alguns nomes de métodos foram limpos para deixar o significado mais claro e se alinhar à plataforma iOS.
Mudanças em
ConsumerTripCallback,ConsumerTripeTripInfo.Alguns nomes de classe foram alterados para formar paridade com o iOS. Introdução de
TripModel,TirpModelManagereTripModelOptionspara descontinuarConsumerTrip,ConsumerTripManagereConsumerTripOptions.Alguns nomes de métodos foram limpos. Revisão ou adição de comentários do JavaDoc aos métodos para transmitir significados mais claros.
Melhoramos o tratamento de erros.
Personalização de estilo
Wrappers legados descontinuados
MarkerStyleOptionsePolylineStyleOptionsforam descontinuados e substituídos porMarkerOptionsePolylineOptions, que são compartilhados com o SDK do Maps.
Monitoramento de falhas
Adicionamos a detecção e o registro de falhas.
- Foi feita uma adição para permitir que você desative essa funcionalidade. Isso foi feito como parte de um esforço maior de monitoramento de falhas em toda a Geo.
Alterações na autenticação
- Remova métodos desnecessários das interfaces de autenticação.
- Remoção do parâmetro
ServiceType.
- Remoção do parâmetro
v0.9.28 (18 de maio de 2021)
Mudanças na API
- Atualizamos todos os métodos
ConsumerTripCallbackpara usarTripInfocomo parâmetro. - Adicionamos
ConsumerTrip.isRefreshing(), que indica seConsumerTripestá se atualizando ativamente com novas informações de viagem do Fleet Engine. ConsumerTripCallback.onTripRemainingRouteDistanceUpdated()foi adicionado.ConsumerTripCallback.onTripRemainingRouteUpdated()foi adicionado.- Substitua os tipos de retorno do Guava (
ImmutableSet,ImmutableList) por classes equivalentes dojava.util. Mudanças no nome do pacote:
- com.google.android.libraries.ridesharing.common.AuthTokenContext -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenContext
- com.google.android.libraries.ridesharing.common.AuthTokenFactory -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenFactory
com.google.android.libraries.ridesharing.common.FleetEngineServiceType -> com.google.android.libraries.ridesharing.consumer.auth.FleetEngineServiceType - com.google.android.libraries.ridesharing.common.model.Trip
-> com.google.android.libraries.ridesharing.consumer.model.Trip - com.google.android.libraries.ridesharing.common.model.Vehicle -> com.google.android.libraries.ridesharing.consumer.model.Vehicle
Mudanças na implementação
- Correção de uma disputa em que o SDK poderia falhar devido a interações com o mapa antes que ele estivesse pronto.
- O SDK não contém mais uma cópia não ofuscada de
io.grpc. - Correção de um bug com polilinhas de trânsito piscando em determinados dispositivos. Os segmentos de trânsito agora terão extremidades arredondadas.
v0.9.15 (7 de outubro de 2020)
Mudanças na API
- Esta versão apresenta as polilinhas
com reconhecimento de trânsito.
- Adição de
TripInfo.getActiveRouteTraffic()eTripInfo.getRemainingRouteTraffic().- Adição de
ConsumerTripCallback.onTripActiveRouteTrafficUpdated()eConsumerTripCallback.onTripRemainingRouteTrafficUpdated()para indicar quando o tráfego mudou. - Adição de
PolylineStyleOptionspara personalização de tráfego (setTrafficEnabled(),setTrafficColorNoData(),setTrafficColorNormal(),setTrafficColorSlow(),setTrafficColorTrafficJam()). - Exposição de
PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION. TripWaypoint.getTrafficData()foi adicionado.- O tipo de dado
TrafficDatafoi adicionado. ConsumerController.hideAllSessions()foi adicionado.ConsumerController.showSession()não aceita mais nulo como argumento.
- Adição de
v0.9.9 (15 de julho de 2020)
Mudanças na API
- Essa é uma grande mudança que introduz uma arquitetura modularizada com uma
relação mais clara entre a camada somente de dados (por exemplo,
ConsumerTripManager) e a camada da interface do usuário (por exemplo,JourneySharingSession). Para saber mais sobre como migrar para a nova arquitetura, consulte o Guia de migração de modularização. - O objetoConsumerTripagora é recebido deConsumerTripManager.getTrip().ConsumerTrip.unregisterCallbackfoi renomeado comoConsumerTrip.unregisterTripCallback.ConsumerTrip.isCallbackRegisteredfoi renomeado comoConsumerTrip.isTripCallbackRegistered.- Os elementos
ConsumerTrip.setConsumerTripOptions()e aConsumerTrip.getConsumerTripOptions()foram adicionados. ConsumerTrip.setAutoRefreshInterval()foi removido.
- As APIs que não são de compartilhamento de percurso foram removidas.
- Remoção do mapa de densidade de veículos.
- O estado de visualização do trajeto foi removido.
- O estado de seleção de retirada foi removido.
- Remoção do estado de seleção de entrega.
- Os seguintes tipos de marcador foram removidos:
SELECTED_PICKUP_POINT,SUGGESTED_PICKUP_POINT,HIGHLIGHTED_PICKUP_POINTeSELECTED_DROPOFF_POINT.
- Mudança de
OnConsumerMarkerClickCallbackeConsumerMapReadyCallbackde interfaces para classes abstratas. - Adicionamos
ConsumerController.getCameraUpdate(),ConsumerController.isAutoCameraEnabled()eConsumerController.enableAutoCamera(). - O FAB personalizado e os métodos associados
(
ConsumerController.isMyLocationFabEnabledeConsumerController.setMyLocationFabEnabled) foram removidos.
Mudanças na implementação
- Um
ConsumerTripCallback, registrado com ou sem umLifecycleOwner, não cancela mais o registro automaticamente emTripStatus.COMPLETEouTripStatus.CANCELED. - A AutoCamera agora está ativada por padrão e nunca é reativada ou desativada.
Antes, a AutoCamera era reativada automaticamente em
TripStatus.ARRIVED_AT_PICKUPe desativada quando o usuário interagia com o mapa durante o compartilhamento de trajeto. - As seguintes melhorias foram feitas na animação do veículo
de compartilhamento de trajeto:
- A animação de compartilhamento de trajeto agora lida com a situação em que um veículo pode voltar por um trajeto já percorrido.
- O veículo agora vai se mover em linha reta em vez de interpolar a rota entre os pontos quando for determinado de forma algorítmica que isso é apropriado.
- As permissões de
FINE_LOCATIONnão são mais necessárias.
Outras alterações
- As seguintes versões de dependência foram atualizadas:
- com.google.android.datatransport:transport-api:2.2.0
- com.google.android.datatransport:transport-backend-cct:2.2.0
- com.google.android.datatransport:transport-runtime:2.2.0
v0.9.1 (23 de março de 2020)
Mudanças na API
- Adicionamos
TripInfo.getVehicleId(),TripInfo.getNumberOfPassengers(),TripInfo.getIntermediateDestinationIndex(),TripInfo.getTripActiveRoute()eTripInfo.getTripRemainingRoute(). - Adicionamos a classe
optionsusada durante a inicialização deConsumerApi, que permite que o endereçoFleetEngineseja definido dinamicamente. Se a API não for chamada com um valorFleetEngine, ela vai tentar buscá-lo no manifesto do Android ou vai usar o valor padrão.
Melhorias
- A polilinha do trajeto não é mostrada quando o status da viagem é
ARRIVED_AT_PICKUP. - O rastreamento de veículos fora da rota foi melhorado (requer o DriverSDK 1.15):
- O rastreamento não fixa o veículo à rota quando ele passa do ponto de retirada.
- O rastreamento de veículos permite mostrar o veículo fora da via, por exemplo, em estacionamentos não mapeados.
- O ícone do veículo agora é atualizado quando o destino do motorista não corresponde ao destino no Fleet Engine.
v0.8.6 (16 de dezembro de 2019)
Mudanças na API
TripInfo.getVehicleLocation()foi adicionado.ConsumerMapViewnão é mais final.
Mudanças na implementação
- A distância restante do trecho ativo agora é calculada usando a distância do servidor (informada pelo motorista + trajeto estático, quando aplicável) em vez do ajuste local. Essa mudança produz valores de distância restante mais precisos.
Outras alterações
Novas dependências necessárias. Consulte o arquivo .pom para mais detalhes.
- com.google.android.datatransport:transport-api:2.0.0
- com.google.android.datatransport:transport-backend-cct:2.0.2
- com.google.android.datatransport:transport-runtime:2.0.0
Adicionamos registros para a latência de solicitação de viagem.
Adicionamos registros para erros de resposta de viagem.
Observações
- Desde a versão 0.8.1, o SDK do Consumidor para Android é enviado como um arquivo ZIP jetificado. Para saber como fazer isso, consulte Jetifier: modo reverso.
v0.8.1 (13 de setembro de 2019)
Novos recursos
Suporte para ConsumerMapView.
Os artefatos do ODRD agora são enviados em um repositório Maven, em vez de um arquivo ZIP .aar. Para mais informações, consulte Adicionar o SDK do Consumidor ao seu app.
Mudanças na API
Adicionamos
ConsumerController.disableAutoCamera()como a função oposta acenterMapForState().VehicleLocation.getUpdateTime()agora retorna um Long que representa o carimbo de data/hora (em milissegundos).Simplificamos a interface
AuthTokenFactorypara expor um único método de geração de tokens. Mudança deAuthTokenFactoryde uma interface para uma classe abstrata para permitir a compatibilidade com versões anteriores no Java7. Essa mudança é compatível com versões anteriores, mas os métodos antigos para geração de token de serviço único foram descontinuados e serão removidos.
Mudanças na implementação
Os recursos agora estão centralizados no ícone, eliminando o deslocamento da sombra.
setStateparaJOURNEY_SHARING onStartTripMonitoring()em vez de esperar pelo status da viagem monitorada.Sempre retorna dados para a primeira atualização de dados da viagem, mesmo quando os dados da viagem estão fora de sincronia.
Adicionamos os utilitários de mapa do Android como uma dependência fornecida.
Correções de bugs
- Correção da sintaxe de exportação do ProGuard para grpc keep.
v0.7.0 (7 de agosto de 2019)
Novos recursos
- Suporte a vários destinos para o Compartilhamento de Percurso.
Mudanças na API
Novos métodos para
ConsumerTripCallback.onTripIntermediateDestinationsUpdated().onTripETAToNextTripWaypointUpdated().
Novos métodos
ConsumerController.getIntermediateDestinations().setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
Novo
TripStatuses.TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
Novos getters de
TripWaypoint.getETAMillis().getDistanceMeters().
Adicionamos a classe
TripInfo.- É possível receber
TripInfopara a viagem ativa comConsumerTripManager.getActiveTripInfo().
- É possível receber
WaypointType.INTERMEDIATE_DESTINATIONfoi adicionado.MarkerType.TRIP_INTERMEDIATE_DESTINATIONfoi adicionado.ConsumerMapState.JOURNEY_SHARINGcriado com base emConsumerMapStates,ENROUTE_TO_PICKUP,ARRIVED_AT_PICKUP,ENROUTE_TO_DROPOFFeCOMPLETEmesclados.A tabela
StateChangeCallbacksfoi atualizada.onStateJourneySharing()foi adicionado.onStateWaitingForPickup(),onStateDriverArrived(),onStateEnroute()eonStateEndofTrip()foram removidos.
Correções de bugs
Correção de um bug em que o trajeto não é ajustado ao local do veículo quando o monitoramento da viagem começa no meio de uma viagem ativa (não no início do trajeto).
Correção de um bug em que os callbacks de viagem não eram invocados para listeners registrados no TripManager depois que ele já havia buscado dados de viagem.
O zoom da câmera agora inclui apenas o trajeto ativo e o próximo ponto de referência da viagem (que pertence à viagem). Mesmo que o trecho restante esteja visível, o zoom nunca o incluirá. Antes, o ponto de entrega era incluído no zoom quando o veículo estava a caminho da retirada ou chegava ao local de retirada. Isso não é mais verdade.
Melhorias
Preencha o waypoint restante zero com os dados do motorista (a lista de waypoints restantes é retornada de
ConsumerTripCallback.onTripRemainingWaypointsUpdatedeTripInfo.getRemainingWaypoints().Atualize todos os ETAs dos pontos de passagem restantes quando o ETA do primeiro ponto de passagem na lista mudar.
Forçar a reativação da câmera automática somente quando o motorista chegar ao local de retirada. Antes, a câmera automática era redefinida para ativada a cada mudança de estado da viagem. A câmera automática ainda está ativada por padrão. A câmera automática não será reativada se uma nova viagem ativa for definida sem uma nova chamada para
startTripMonitoring().
v0.6.1 (26 de junho de 2019)
Novos recursos
- Suporte do Carpool para compartilhamento de percurso.
Mudanças na API
ConsumerController.getConsumerMapStyle()agora retornaConsumerMapStyleem vez deTask<ConsumerMapStyle>.PolylineStyle.setZIndex()foi adicionado.
Correções de bugs
A animação do trajeto agora só acontece quando o segmento do trajeto está sincronizado, resultando em uma experiência do usuário melhor.
Corrigimos o "piscar" do veículo durante a interpolação da animação quando as atualizações de localização do motorista estão próximas.
Correção de um bug em que o veículo começava no início do trajeto, em vez de no local mais atualizado, quando o monitoramento da viagem começava no meio de uma viagem ativa.
Mostre a polilinha da rota ativa acima da rota restante quando elas se sobrepuserem.
Melhorias
- Agora, exponha a classe gRPC
Statuscom métodos não ofuscados.
v0.5.1.01 (17 de maio de 2019)
Novos recursos
- Suporte para compartilhamento de trajetos consecutivos.
Mudanças na API
- Nova classe
ConsumerController.
PolylineType
| Valor antigo | Novo valor |
|---|---|
TRIP_PREVIEW_AUTO_ROUTE |
PREVIEW_AUTO_ROUTE |
TRIP_PREVIEW_TAXI_ROUTE |
PREVIEW_TAXI_ROUTE |
TRIP_PREVIEW_TRUCK_ROUTE |
PREVIEW_TRUCK_ROUTE |
TRIP_PREVIEW_TWO_WHEELER_ROUTE |
PREVIEW_TWO_WHEELER_ROUTE |
TRIP_ROUTE |
ACTIVE_ROUTE |
REMAINING_ROUTE |
ConsumerTripCallback
| Valor antigo | Novo valor |
|---|---|
onTripRouteUpdated |
onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated |
onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
ConsumerController
- Agora é possível definir callbacks para estados sem entrar neles.
| Método | Chamada de retorno |
|---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
ConsumerController.setLanguage(String languageCode)permite definir o idioma usado nas chamadas do Fleet Engine (para descrições de pontos de retirada, por exemplo).
Melhorias
- O estado de seleção de desembarque agora tem um alfinete arrastável.
- Removemos a animação da câmera no estado
INITIALIZE. - A
ManagedChannelBuilderfoi substituída pelaAndroidChannelBuilder