App para carro
| Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
|---|---|---|---|---|
| 16 de julho de 2025 | 1.7.0 | - | - | 1.8.0-alpha02 |
Declarar dependências
Para adicionar uma dependência à Biblioteca Car App, é preciso adicionar o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle do
seu app ou módulo:
Groovy
dependencies { implementation "androidx.car.app:app:1.7.0" // For Android Auto specific functionality implementation "androidx.car.app:app-projected:1.7.0" // For Android Automotive specific functionality implementation "androidx.car.app:app-automotive:1.7.0" // For testing testImplementation "androidx.car.app:app-testing:1.7.0" }
Kotlin
dependencies { implementation("androidx.car.app:app:1.7.0") // For Android Auto specific functionality implementation("androidx.car.app:app-projected:1.7.0") // For Android Automotive specific functionality implementation("androidx.car.app:app-automotive:1.7.0") // For testing testImplementation("androidx.car.app:app-testing:1.7.0") }
Para mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Versão 1.8
Versão 1.8.0-alpha02
18 de junho de 2025
Lançamento de androidx.car.app:app-*:1.8.0-alpha02. A versão 1.8.0-alpha02 contém estas confirmações.
Novos recursos
- Adição de suporte para
Action.MEDIA_PLAYBACK, que mostra um indicador com base no estado de reprodução de mídia. - Adição de suporte para controlar a posição de rolagem de um usuário ao atualizar o
SectionedItemTemplate.
Mudanças na API
- Adicione suporte para salvar a posição de rolagem de um usuário no
SectionedItemTemplateentre atualizações. (Ia4c51). - A ação
MEDIA_PLAYBACKfoi atualizada para ser ativada na ação de fim de linha (I05cc4). - Adição de um novo tipo de ação (I6cc5a).
- Adicione
CarAppExtender#addAction(Action)para que qualquer tipo de ação possa ser adicionado aoCarAppExtender. (Idc4d7). - Tornamos
SectionedItemTemplateacessível para a API 8 e versões mais recentes. (I9a079)
Versão 1.8.0-alpha01
20 de maio de 2025
Lançamento de androidx.car.app:app-*:1.8.0-alpha01. A versão 1.8.0-alpha01 contém estas confirmações.
Novos recursos
No momento, todos os recursos estão disponíveis apenas no Android Auto. As mesmas APIs serão usadas no AAOS.
- Adicionamos a categoria "Mídia" para criar um aplicativo personalizado como alternativa aos baseados em
MediaBrowse. - Adicionado o modelo de reprodução, que permite controlar as principais ações na visualização de reprodução de mídia (disponível apenas para apps de mídia).
- Adicionamos suporte completo ao modelo de item seccionado no Android Auto, que permite combinações de subseções feitas de listas/grades.
- Adicionamos o tamanho extra grande como uma opção para itens da grade.
Mudanças na API
- Adição de uma opção de tamanho extra para itens de grade (I35b58).
- Adição de categoria e permissão para apps de mídia à biblioteca Car App (I8e100).
- Adição de uma nova API para que os apps detectem se a categoria de mídia
CarAppLibraryé compatível (Ic4b08). - Adicionamos
OnItemVisibilityChangeListenerà seção. (I2c2fd). - Adição de
Mileage#getOdometerKilometerse descontinuação deMileage#getOdometerMeters(Ic91af)
Correções de bugs
- Correção de um erro de digitação no Javadoc de
CarIcon.setTint(Iabd72). - Atualizamos a documentação do
Row.Builder#setNumericDecorationpara refletir que uma ação + decoração numérica não é compatível, mas 0 ou 2 ações + decoração numérica são. (Ic0b08) - Adicionado campo para a cor de fundo do ícone de selo para itens de grade. (I2b6ae).
Versão 1.7
Versão 1.7.0
16 de julho de 2025
Lançamento de androidx.car.app:app-*:1.7.0. A versão 1.7.0 contém estas confirmações.
- Esta é a primeira versão estável que inclui a correção da CVE-2024-10382, que recebeu um patch na versão beta03. Se você estiver usando uma versão anterior à 1.7-beta03, atualize para usar essa versão.
Versão 1.7.0-rc01
15 de janeiro de 2025
Lançamento de androidx.car.app:app-*:1.7.0-rc01 sem mudanças significativas desde a versão beta03. A versão 1.7.0-rc01 contém estas confirmações.
- Esta é a primeira RC que inclui a correção da CVE-2024-10382, que recebeu um patch na versão beta03. Se você estiver usando uma versão anterior à 1.7-beta03, atualize para usar essa versão.
Versão 1.7.0-beta03
13 de novembro de 2024
Correção de uma vulnerabilidade de segurança e outros bugs gerais. Se você estiver usando uma versão anterior, atualize para usar esta versão.
Lançamento de androidx.car.app:app-*:1.7.0-beta03. A versão 1.7.0-beta03 contém estas confirmações.
Mudanças na API
- Atualize o código de serialização / desserialização do CAL para processar apenas objetos que tenham a anotação
@CarProtocoldeclarada neles. (Ic730e). - Agora,
CarAppExtenderpode ser usado para estender a estruturaNotification.Builderem vez de apenasNotificationCompat.Builder. (Id3ad7) - Adicione
KEY_EXCLUDE_MEDIA_ITEM_FROM_MIXED_APP_LISTextras. (I201f9) - Descontinue o construtor Builder vazio em
ConversationIteme substitua-o por um construtor que usa parâmetros obrigatórios. Também adiciona uma verificação para evitar mensagens nulas. (Ic8221).
Correções de bugs
- Verifique se o mapa
PlaceListusa o título do cabeçalho de string (somente texto). (Ic992f). - Agora, essa biblioteca usa anotações de nulidade do JSpecify, que são de uso de tipo. Os desenvolvedores Kotlin precisam usar o seguinte argumento do compilador para garantir o uso correto:
-Xjspecify-annotations=strict(esse é o padrão a partir da versão 2.1.0 do compilador Kotlin). (Ib5367, b/326456246).
Versão 1.7.0-beta02
18 de setembro de 2024
Lançamento de androidx.car.app:app-*:1.7.0-beta02. A versão 1.7.0-beta02 contém estas confirmações.
Mudanças na API
- Adição de
KEY_ROOT_HINT_MEDIA_HOST_VERSIONextra (I8796b). - Substitua a classe
TabContents.Api8Builderpelo construtor@ExperimentalCarApina classeTabContents.Builder(I26fbe) - Adição de ação e extras de intent para
CarMediaApp(I50782). - Marcar as APIs de mensagens como não experimentais (I0b070)
- Adição do carregamento de itens remotos ao
SectionedItemTemplate(permite que listas longas sejam carregadas sem falhas) (I0d122). - Adicione
SectionedItemTemplateà lista de modelos compatíveis emTabTemplatena API 8. (Idc5d6)
Correções de bugs
- Removemos o esboço manual do acesso a novas APIs da plataforma, já que isso acontece automaticamente pela modelagem de API ao usar o R8 com o AGP 7.3 ou mais recente (por exemplo, a versão 3.3 do R8) e para todos os builds ao usar o AGP 8.1 ou mais recente (por exemplo, a versão 8.1 do D8). Recomendamos que os clientes que não usam o AGP atualizem para a versão 8.1 ou mais recente do D8. Veja mais detalhes neste artigo. (I9496c, b/345472586)
Versão 1.7.0-beta01
26 de junho de 2024
Lançamento de androidx.car.app:app-*:1.7.0-beta01. A versão 1.7.0-beta01 contém estas confirmações. Os recursos são os mesmos publicados na versão alpha01, que são repetidos abaixo:
Novos recursos
- Mapa com conteúdo:novo modelo com uma tela de mapa e um modelo de conteúdo, que por enquanto pode ser lista / grade / painel / mensagem.
RoutePreview,PlaceListNavigationeMapTemplateforam descontinuados. Os modelos vão continuar funcionando como estão.- Os apps de exemplo foram atualizados para mostrar o uso de
MapWithContentem vez de modelos descontinuados
- Item de conversa:novas APIs para mostrar conversas (mensagens instantâneas, SMS) e leitura do Google Assistente no carro.
- Dimensões do veículo:nova API para extrair medidas do veículo (dados no AAOS no momento).
Mudanças na API
- Adicione a tag
@ExperimentalCarApiaMediaPlaybackTemplate.Builder. (Ic1957) - Adiciona um novo
SectionedItemTemplateem experimental. (I5958a). - Apresentação de
CarAppApiLevel 8(I3fa22). - Adiciona
MediaPlaybackTemplatepara mostrar conteúdo durante a reprodução de mídia na biblioteca Car App. (I3c10d). - Adição de uma nova API para que os apps detectem se o sistema é compatível com áudio em segundo plano ao dirigir (I0f868)
Correções de bugs
- Corrige determinadas instâncias de vazamentos de memória e falhas no código do cliente CAL e no app de exemplo de navegação CAL. (I55e04)
- Substitua
requireNotNull instancesno métodoonDestroydeBaseCarAppActivitypor verificações if-null para evitar falhas. (Iec676)
Versão 1.7.0-alpha02
17 de abril de 2024
Lançamento de androidx.car.app:app-*:1.7.0-alpha02. A versão 1.7.0-alpha02 contém estas confirmações.
Novos recursos
- Adicionamos flags descontinuadas para modelos baseados em mapas, que serão usados pelo modelo
MapWithContentdaqui para frente.
Mudanças na API
- Descontinuação dos antigos
MapTemplate,RoutePreviewNavigationTemplateePlaceListNavigationTemplatee incentivo ao uso do novoMapWithContentTemplate(Ib0a08).
Versão 1.7.0-alpha01
3 de abril de 2024
Lançamento de androidx.car.app:app-*:1.7.0-alpha01. Mudamos nosso esquema de controle de versões da biblioteca para corresponder à versão ativa da CarApi. Isso é para reduzir a confusão no esquema de nomenclatura com base no feedback dos desenvolvedores. Por isso, vamos pular as versões 1.5 e 1.6 e passar direto para a 1.7. A versão 1.7.0-alpha01 contém estas confirmações.
Novos recursos
- Mapa com conteúdo: novo modelo chamado
MapWithContentque oferece suporte a lista / grade / painel / mensagem como conteúdo em um mapa.- Os modelos
RoutePreview,PlaceListNavigatione do Maps estão obsoletos. - Os exemplos de apps foram atualizados para mostrar a funcionalidade dos modelos descontinuados usando
MapWithContent.
- Os modelos
- Item de conversa: novas APIs para mostrar conversas (mensagens instantâneas, SMS) e leitura do Google Assistente no carro.
- Dimensões do veículo: nova API para extrair medidas do veículo (dados no AAOS no momento).
Mudanças na API
- Marcação do tipo de imagem de linha extrapequena como experimental (I5184b)
- Adição da API
CarInfo#fetchExteriorDimensions, que permite o acesso a informações sobre as dimensões externas do veículo, como altura, largura etc. (Ia40c5) - A tag
ExperimentalAPIfoi removida deMapWithContentTemplate(I66db8). - Atualize o parâmetro
GridItem#setTitlepara permitir valores nulos. (I3d610). - A API
GetHeadernão exige a API 7 porque é compatível com versões anteriores (I8c812) - Adição de suporte para
HeaderemListTemplatee descontinuação deheaderAction,headerTitleeactionStrip(I7ae01). - Descontinuar
title,headerAction,actionStripemGridTemplatee adicionar suporte aHeader(I41a9c) - Remoção da exigência de nível 7 para APIs experimentais: Badge, getters/setters de tamanho do item
GridTemplatee forma da imagem, métodosGridItempara receber/definir Badge. (Id71eb) - Descontinuação de
title,headerAction,actionStripemPaneTemplate, adição de suporte aHeader(I23154) - Mudança da telemetria do Media Center de
BroadcastReceiverpara "Navegar por ação personalizada". (I4185f). - Adição de compatibilidade com o atributo
HeaderemMessageTemplate. O suporte paraActionStrip,headerActionetitlefoi descontinuado. (Ie2de8) - Modificar a visibilidade constante do alerta (Icf8a8)
- Remover o atributo
isLoadingdo modelo principal (I651e6) - Adição de extras para informar aos apps de mídia os principais parâmetros da interface (I85ca2).
- Adição do recurso de análise do media center ao
MediaExtensions(I7ce28). - Adição da opção de imagem extrapequena nas linhas. (I72c03).
Correções de bugs
- Atualize o Javadoc em
ConversationItempara informar que as mensagens devem ser classificadas da mais antiga para a mais recente. (I77a2a) - Atualização da lógica de truncamento de
ListTemplatepara remover as mensagens mais antigas deConversationItem(Ie0a61).
Versão 1.4
Versão 1.4.0
29 de maio de 2024
Lançamento de androidx.car.app:app-*:1.4.0. A versão 1.4.0 é uma promoção da 1.4.0-rc02.
Mudanças importantes desde a versão 1.3.0
- Renderização de mapa do cluster de instrumento para apps de navegação
- Novo modelo de guia para melhorar o layout / usabilidade do app
- Suporte para limites adaptativos de tarefas
- Ações secundárias em elementos da lista
Versão 1.4.0-rc02
13 de dezembro de 2023
Lançamento de androidx.car.app:app-*:1.4.0-rc02. A versão 1.4.0-rc02 contém estas confirmações. Apenas correções secundárias
Correções de bugs
- Atualização do Javadoc em
ConversationItempara informar que as mensagens devem ser classificadas da mais antiga para a mais recente (I77a2a). - Atualização da lógica de truncamento de
ListTemplatepara remover as mensagens mais antigas deConversationItem(Ie0a61).
Versão 1.4.0-rc01
1º de novembro de 2023
Lançamento de androidx.car.app:app-*:1.4.0-rc01 sem mudanças importantes. A versão 1.4.0-rc01 contém estas confirmações.
Versão 1.4.0-beta02
20 de setembro de 2023
Lançamento de androidx.car.app:app-*:1.4.0-beta02. A versão 1.4.0-beta02 contém estas confirmações. É quase idêntico ao beta01, mas reduz o requisito de compileSdk para 33.
Correções de bugs
- Correção de um bug em que as telas de carregamento nas guias não eram exibidas corretamente. (cae860)
Versão 1.4.0-beta01
9 de agosto de 2023
Lançamento de androidx.car.app:app-*:1.4.0-beta01. A versão 1.4.0-beta01 contém estas confirmações.
Observação:a versão 1.4-beta01 exige o compileSdk34, que ainda está em desenvolvimento. A versão 1.4-beta02 vai corrigir esse problema. Como alternativa, adicione
android.suppressUnsupportedCompileSdk=34ao arquivosettings.gradledo projeto para suprimir temporariamente o aviso com segurança.
Novos recursos
- Renderização do mapa do cluster de instrumentos para apps de navegação
- Novo modelo de guia para melhorar o layout / usabilidade do app
- Suporte para limites de tarefas adaptáveis
- Ações secundárias em elementos da lista
Mudanças na API
- Consulte alpha02
Versão 1.4.0-alpha02
26 de julho de 2023
Lançamento de androidx.car.app:app-*:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estas confirmações.
- O lançamento da Alpha02 é uma preparação para o lançamento da beta01.
Novos recursos
- Renderização de mapas no cluster de instrumentos com suporte para apps de navegação
- Adição de guias para apps para melhorar a experiência de layout
- Adicionadas opções de renderização de modelo de lista / grade
- Adição de novas categorias para clima e comunicações
- Mover várias APIs para a próxima versão do CarApi 7
Mudanças na API
- Campos multimídia foram adicionados a
CarMessage(I5aaf6). - Foram adicionadas ações personalizadas a
ConversationItemna biblioteca Car App (Ie5ed6). - Adicione extras para indicar que um item de mídia é reproduzido com um formato de áudio imersivo e mostre o logotipo do formato de conteúdo (Icb5bb).
- Adicione um novo tipo de ação, a API
ActionsConstraints, para oferecer suporte ao botão de composição. (I31661) set/getTemplatecomoset/get ContentTemplate(Ica036)- O parâmetro do modelo agora seria
@NonNull. Documentação da APIMapWithContentTemplateatualizada (I0f8ed) - Remove a tag
@ExperimentalCarApidas ações emListTemplatepara o lançamento na CAL 1.4 (I2cfcb) - Remove a tag
@ExperimentalCarApideTabTemplate(Ifcb82) - Remover anotações
@ExperimentalCarApidas ações e decorações secundárias da linha (I8487e) - Adiciona o ID do conteúdo da guia ativa a
TabTemplatee descontinua o estado ativo nas guias (I96932). - Adição da propriedade
ItemImageShapeaGridTemplate(Ibf431). - Adicione a propriedade
ItemSizeaGridTemplate, que controla o dimensionamento do item da grade de acordo com buckets relativos pequenos, médios e grandes. (Icdb3b). - Abra o acesso à API para que os desenvolvedores tenham uma cópia da pilha de tela atual. (I48107).
- Adiciona uma categoria para apps de clima à biblioteca Car App (I2be44).
- Adiciona categoria para apps de chamada à biblioteca Car App (Icab33).
GridItem.Builder#setBadge()substituído por métodossetImage()sobrecarregados (Id2000)- Adicionar propriedade de ícone ao selo (I629b2)
- Adição de um método para definir a cor de fundo do selo de ponto (I6411c).
- Adicione a propriedade "Badge" a
GridItem, permitindo que um selo seja mostrado em cima de uma imagemGridItem. (I95de7) - Adicionado um objeto Badge experimental que representa um selo a ser mostrado sobre uma imagem. (I9878d).
Versão 1.4.0-alpha01
22 de fevereiro de 2023
Lançamento de androidx.car.app:app-*:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estas confirmações.
Mudanças na API
- Foram adicionadas ações de nível superior a
GridTemplatena biblioteca Car App (Id0191). - Foram adicionadas ações de nível superior a
ListTemplatena biblioteca Car App (I9efab). - Foram adicionados extras para vincular o subtítulo ou a descrição de um item de mídia a outros (Ic84bf).
- O nível da API foi atualizado para o nível 6 em ações da linha (Ie0a69).
- Foram adicionados callbacks de mensagens à A4C (Ie3986).
Correções de bugs
- Foram adicionadas referências de documentos Java para
CarMessage(I5db1c). equals()ehashCode()foram substituídos porConversationItemeCarMessage(I6fd10).- A validação de
ConversationItem.mMessagesfoi melhorada e agora requer um valor não nulo e não vazio (Iafc51). - Anotações
@Keepforam adicionadas aos camposConversationItem(I5d250). - Os documentos Java foram atualizados para a decoração de linhas e as ações secundárias (I000b6).
Versão 1.3
Versão 1.3.0-rc01
7 de dezembro de 2022
Lançamento de androidx.car.app:app-*:1.3.0-rc01. A versão 1.3.0-rc01 contém estas confirmações.
- Pequenas correções de bug da versão beta01. Nenhuma mudança importante.
Versão 1.3.0-beta01
7 de setembro de 2022
Lançamento de androidx.car.app:app:1.3.0-beta01, androidx.car.app:app-projected:1.3.0-beta01, androidx.car.app:app-automotive:1.3.0-beta01 e androidx.car.app:app-testing:1.3.0-beta01. A versão 1.3.0-beta01 contém estas confirmações.
- Os apps para carros criados com essa biblioteca agora podem acessar a Play Store usando a API de nível 5. Consulte nosso guia de desenvolvimento. Os recursos anotados com a API de nível 5 ou anteriores são compatíveis com as versões do Android Auto 8.1 e do Google Automotive App Host 1.4 ou mais recentes.
Novos recursos
Além dos recursos adicionados à biblioteca Car App versão 1.3.0-alpha01, as funções abaixo foram adicionadas como parte da versão beta01. Todos os recursos aqui envolvem apenas mudanças do lado do host, não da API:
- A barra de navegação flutuante vai continuar a aparecer mesmo quando um usuário estiver em uma tela de seleção baseada em mapa em
PlaceListNavigationTemplate,RoutePreviewNavigationTemplateeMapTemplate. Isso pode ser feito atualizando as informações de navegação com oNavigationManager.updateTrip(). - Ative o botão de ação com
FLAG_DEFAULTpara mostrar uma animação de tempo limite. Esse botão vai receber um clique por padrão após o tempo limite ([API 5 - All Templates]). - Um subtexto de
Rows não é truncado quando o carro está estacionado, mas é truncado para duas linhas enquanto você dirige ([API 5 - All Templates]). - Suporte ao estado desativado para
Action,Toggle,Row([API 5 - All Templates]).
Mudanças na API
- Restrições foram relaxadas na lista de
MapTemplates para oferecer suporte a listas selecionáveis (I961ed). - A restrição de ações de cabeçalho foi removida para permitir ícones personalizados (Iad28f).
- Uma restrição
setOnClickListenerAllowed()foi adicionada aActionsConstraints. Isso permitiu que a classeActiondefinisseOnClickDelegate()como ações, exceto no caso dos tipos de ícone padrão (TYPE_APP_ICON,TYPE_BACKeTYPE_PAN) (I3c745).
Correções de bugs
- Foi adicionada compatibilidade do Android Automotive Template Host 1.4, e versões mais recentes, com telas curvas (
[Host change]).
Versão 1.3.0-alpha01
27 de julho de 2022
Lançamento de androidx.car.app:app:1.3.0-alpha01, androidx.car.app:app-projected:1.3.0-alpha01, androidx.car.app:app-automotive:1.3.0-alpha01 e androidx.car.app:app-testing:1.3.0-alpha01. A versão 1.3.0-alpha01 contém estas confirmações.
Os recursos anotados com a API de nível 5 são compatíveis com o Android Auto 7.9 e versões mais recentes.
Novos recursos
- API de nível 5: novo
MapTemplateque pode ser usado por apps de navegação para mostrar o painel ou listar conteúdos ao lado de um mapa (If5826, If44b8). - API de nível 5: nova API
CarAudioRecordque permite gravar a entrada de áudio pelo microfone do veículo host (I5e71a). - API de nível 5: nova API
SuggestionManagerque permite que os apps forneçam sugestões para o host (I5c103). - API de nível 5: nova API
Alertpara mostrar notificações no contexto noNavigationTemplate(I163a7, I5ad70). - API de nível 5: novos componentes
HeadereMapControllerpara facilitar a reutilização de modelos (If5826). - Adicionamos
androidx.car.app.category.POIcomo uma categoria para ativar apps de PDI. As categoriasandroidx.car.app.category.PARKINGeandroidx.car.app.category.CHARGINGforam descontinuadas (I59da1).
Mudanças na API
- API de nível 5: novo método
onClickna interfaceSurfaceCallbackpara permitir a interatividade "toque no mapa" (Ia9777). - API de nível 5: novas flags
Action.FLAG_IS_PERSISTENTeAction.FLAG_DEFAULTpara descreverActions (I96318, I5ad70). - API de nível 5: novo estado ativado/desativado para os componentes
Action,RoweToggle. O suporte ao host vai ser disponibilizado na versão 1.3.0-beta01 da biblioteca (Id8a09). - API de nível 5: favorecimento do novo componente
HeaderviasetHeadernoPlaceListNavigationTemplate.Buildere noRoutePreviewNavigationTemplate.Builder, com a descontinuação dos métodossetTitleesetHeaderAction(I30e6a). - API de nível 5: novo método
setOnContentRefreshListnernoPlaceListMapTemplate.Buildere noPlaceListNavigationTemplate.Builderpara uso com implementações da nova interfaceOnContentRefreshListner. - API de nível 5: novos
setTripTextesetTripIconnoTravelEstimate.Builderpara personalizar o card de estimativa de viagem (Idcc6d, Ic620d). - Adição de suporte às
CarIconSpans no título doPaneTemplate(Ia1ee0). - Foi adicionado suporte a
CarIconSpans no título e no texto de umaRow(Ic1e3c). - As
ActionStrips do mapa agora podem ter até quatro ações (If3522). - Atualização da API Car App para o nível 5 (I26b8e).
- Os cabeçalhos/títulos agora são opcionais para
PlaceListMapTemplate,PlaceListNavigationTemplate,RoutePreviewNavigationTemplate,GridTemplate,ListTemplate,LongMessageTemplate,MessageTemplate,PaneTemplateeSignInTemplate(I2078d, Icadde).
Correções de bugs
- As regras de tamanho da imagem do
PaneTemplateforam atualizadas para que ele seja uma caixa delimitadora quadrada (Idd72e). - Foi corrigida uma exceção que acontece quando a pilha de telas é modificada após o
State.DESTROYED(I3c8eb). - Adição de uma verificação de valores nulos para recuperar o ícone do app (I3f710).
- Atualização da API Car Hardware para usar
STATUS_UNKNOWNem vez deSTATUS_UNAVAILABLEpor padrão (Ic9444). - É verificado se a tela existe antes de criar a superfície (Ice027a).
- Correção do bug de
CarValue.equals()envolvendoSTATUS_UNIMPLEMENTED(I24451).
Versão 1.2
Versão 1.2.0
9 de novembro de 2022
Lançamento de androidx.car.app:app-*:1.2.0. A versão 1.2.0 contém estas confirmações.
- Esta é uma versão de estabilização. Não há mudanças em comparação com a v1.2.0-rc01.
Versão 1.2.0-rc01
23 de março de 2022
Lançamento de androidx.car.app:app-*:1.2.0-rc01. A versão 1.2.0-rc01 contém estas confirmações.
- Esta é uma versão de estabilização. Não há mudanças de API em comparação com a
v1.2.0-beta02. Foram adicionados novos recursos experimentais (API de nível 5) destinados a versões futuras do Android Auto e do Android Automotive.
Correções de bugs
- Foi corrigida uma exceção que acontece quando a pilha de telas é modificada após o
State.DESTROYED(I3c8eb). - A API
CarSensorsfoi atualizada para indicar que não foi implementada para o AAOS (Idd57b). PlaceListMapTempalte.Builder#setCurrentLocationEnabledfoi atualizado para indicar que ACCESS_COARSE_LOCATION é suficiente para o recurso (I510c2).- O número de saídas é opcional para os tipos de manobra na rotatória (Ife7d1).
Versão 1.2.0-beta02
26 de janeiro de 2022
Lançamento de androidx.car.app:app-*:1.2.0-beta02. A versão 1.2.0-beta02 contém estas confirmações.
Os apps para carros criados com essa versão da biblioteca destinada à plataforma Android Automotive OS agora podem ser publicados no canal de teste aberto da Play Store. Consulte o guia de desenvolvimento para ver mais detalhes.
Recursos anotados com API de nível 4 ou anterior são compatíveis com o Android Auto 7.2 e mais recentes e a nova plataforma do Android Automotive OS. Consulte a seção Known Issues abaixo para ver os detalhes.
Mudanças na API
- A API experimental
setOnContentRefreshListenerfoi adicionada aos modelos de PDIs (I6bf22).
Correções de bugs
- Um vazamento de memória em
CarAppServicequando o host do carro é desvinculado foi corrigido (I5c9ca, b/203594731). CarAppActivityfoi atualizada a fim de incluir requisitos para o modo de inicialização singleTask (Id2f95).- A falha visual na retomada foi reduzida (Iff7e0).
Problemas conhecidos
- As
ActionStrips do mapa noPlaceListNavigationTemplatee noRoutePreviewNavigateTemplatevão começar a ser disponibilizadas nas próximas versões doAndroid Autoe doAndroid Automotive OS.
Versão 1.2.0-alpha02
15 de dezembro de 2021
Lançamento de androidx.car.app:app-*:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.
Os recursos anotados com a API de nível 4 foram atualizados de "experimental" para "estável", incluindo as ActionStrips do mapa no PlaceListNavigationTemplate e RoutePreviewNavigateTemplate, a imagem CarIcon nos Panes, o QRCodeSignInMethod e a capacidade de definir dicas de renderização (como flags) nas Actions.
Novos recursos
- No Android Auto 7.1 e em versões mais recentes, o limite de itens no
Panefoi aumentado de 2 para 4.
Mudanças na API
- Um método
toString()experimental foi adicionado àCarUnit(I36a3b).
Correções de bugs
- Foi corrigida uma falha que ocorria na
CarAppPermissionActivityquando o callback era desativado (If9823). - Mudança do limite de listas padrão do
Panepara 4 (I0068b).
Versão 1.2.0-alpha01
3 novembro de 2021
Lançamento de androidx.car.app:app-*:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
No momento, todos os novos recursos da v1.2.0 (API de nível 4 ou mais recente) são experimentalmente voltados para versões futuras do Android Auto e Android Automotive OS. Consulte o guia de desenvolvimento para ver mais detalhes.
Mudanças na API
- A API
AutomotiveCarInfofoi transformada em experimental (Ia13e5). - A API Car App Library de nível 4 foi adicionada (I2a2e7).
- API de nível 4: foi adicionado suporte à definição de um
CarIconemPane(Ifcc12). - API de nível 4: foi adicionado um método de login por QR code (Ib623e).
- API de nível 4: set/getFlags foi adicionado a
Action(Ic03ab). - API de nível 4: foi adicionado suporte às funções de movimentar e aumentar zoom no
PlaceListNavigationTemplateeRoutePreviewNavigationTemplate(I9d8a3).
Correções de bugs
- API de nível 4: foi adicionado um mecanismo para permitir que apps enviem atualizações de local ao host do carro (I3bad3).
- Foi corrigido um problema em que a lógica de validação do host não encontrava a permissão TEMPLATE_RENDERER corretamente (I62618).
Versão 1.1.0
Versão 1.1.0
15 de dezembro de 2021
Lançamento de androidx.car.app:app-*:1.1.0. A versão 1.1.0 contém estas confirmações.
Esta é uma versão de estabilização. Não há mudanças em comparação com a v1.1.0-rc01. Consulte também as notas da versão da v1.2.0-alpha02 para ver mais detalhes sobre os novos recursos da biblioteca de apps para carros.
Mudanças importantes desde a versão 1.0.0
- API de nível 2: foram adicionados
SignInTemplateeLongMessageTemplate, que podem ser usados para fluxos de login quando o veículo está estacionado. - API de nível 2: suporte à interação com mapas no
NavigationTemplate. - API de nível 2: o suporte a mensagens de texto de vários tamanhos foi adicionado para permitir que os apps forneçam várias versões da string para exibição, dependendo do tamanho da tela do carro.
- API de nível 3: foi adicionada uma classe
CarHardwareManager, que pode ser usada para consultar dados de hardware do veículo, como modelo e marca, níveis de combustível e outros sensores.
Versão 1.1.0-rc01
3 novembro de 2021
Lançamento de androidx.car.app:app-*:1.1.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.
Esta é uma versão de estabilização. Não há mudanças de API em comparação com a v1.1.0-beta01. Foram adicionados novos recursos experimentais (API de nível 4) destinados a versões futuras do Android Auto. Consulte as notas da versão da v1.2.0-alpha01 para ver mais detalhes sobre as APIs experimentais.
Versão 1.1.0-beta01
1º de setembro de 2021
Lançamento de androidx.car.app:app-*:1.1.0-beta01. A versão 1.1.0-beta01 contém estas confirmações.
Todos os recursos da v1.1.0 (API 2 e mais recentes) são totalmente compatíveis com o Android Auto 6.7 e versões mais recentes. Consulte o guia de desenvolvimento para ver mais detalhes.
Mudanças na API
- Remoção do
Managercomo interface pública (Ie381b). - Nova capacidade de definir um plano de fundo personalizado da marca para uma solicitação de permissão (I74b76).
ScreenManager.getStackSizefoi adicionado (I0b16a).- Foi removido o construtor
ScreenController, que usa oTestCarContextde forma explícita (Iefebc).
Correções de bugs
- Foi acrescentada a verificação de nível de API ao criar o
CarHardwareManager(I48f9b). - Novas verificações de uso inválido do
CarSpanem toda a API (I65ae6). - Foi corrigido um problema em que, quando uma
Screenera marcada como concluída durante a criação, a pilha ficava em um estado corrompido (I81b13). - Foi corrigido um problema em que o
CarNotificationManager.notifyregistrava um erro para o AutomotiveOS quando havia ações com ícones noCarAppExtender(I3633d). - Novo método de handshake para o app e o host estabelecerem uma versão da API (I7d6f8).
Versão 1.1.0-alpha02
21 de julho de 2021
Lançamento de androidx.car.app:app-*:1.1.0-alpha02. A versão 1.1.0-alpha02 contém estas confirmações.
Novos recursos
- API de nível 3: foi adicionado um
CarHardwareManagerque pode ser usado para consultar dados de hardware do veículo, como modelo e marca, níveis de combustível e outros sensores. Atualmente, esse recurso está disponível apenas para o Android Auto 6.7 e versões mais recentes no canal de teste aberto. Para fazer esse teste em um ambiente de computador, é necessário lançar uma nova versão doDesktop Head Unitseparadamente. Fique de olho na página Testar apps Android para carros para ver detalhes de quando a nova versão estará disponível. - Siga o guia de desenvolvimento e a referência da biblioteca para mais informações e diretrizes sobre como usar esses recursos em hosts de carro compatíveis com a API de nível 3.
Mudanças na API
- Os métodos de ciclo de vida
SessionControllereScreenControllerforam consolidados em um único métodomoveToState(I1ed00). - Novo recurso:
CarContext#getHostInfo()(I8977e). - Campos descontinuados foram removidos (I67168).
SessionControllereScreenControllerforam atualizados para expor construtores diretamente (Iabf22).PinSignInMethod.BuildereProviderSignInMethod.Builderforam removidos (I9f0cb).- "setCarAppResult()" foi adicionado para permitir o uso de apps de modelo "para resultado" no AAOS (I37741).
- As interfaces
CarHardwarereceberam anotação@MainThread(Ib2f85). OnCarDataListenerfoi renomeado comoOnCarDataAvailableListener(I518ca).- Os nomes de método
CarInfo,SpeedeMileagee o javadoc foram atualizados (I86672). Tollfoi renomeado comoTollCard(I3e7c8).- O
PinSignInMethod.getPindescontinuado foi removido e substituído peloPinSignInMethod.getPinCode(I996ce). - O
OnInputCompletedListenerfoi removido e substituído peloInputCallback(Ib5be1). - O
PinSignInMethodfoi mudado para usarCharSequenceem vez deString(I275d5).
Correções de bugs
- O Javadoc foi corrigido no hardware do carro (I2abbc).
Contribuição externa
Problemas conhecidos
- No
SignInTemplate, o uso doInputSignInMethodpode resultar em umaNullPointerExceptionno host do carro. Isso será abordado na próxima versão da biblioteca. Para resolver o problema, inclua esta linha na configuração do Proguard do seu app:-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
Versão 1.1.0-alpha01
16 de junho de 2021
Lançamento de androidx.car.app:app:1.1.0-alpha01, androidx.car.app:app-automotive:1.1.0-alpha01 e androidx.car.app:app-testing:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Novos recursos
- API de nível 2: novos
SignInTemplateeLongMessageTemplateque podem ser usados para fluxos de login quando o veículo está estacionado. - API de nível 2: novo suporte à interação com o mapa no
NavigationTemplate. - API de nível 2: novo suporte a mensagens de texto de vários tamanhos para permitir que os apps forneçam várias versões da string para exibição, dependendo do tamanho da tela do carro.
- Siga o guia de desenvolvimento e a biblioteca Javadoc para mais informações e diretrizes sobre como usar esses recursos em hosts de carro compatíveis com a API de nível 2.
Mudanças na API
- Todos os métodos de interface
*Callbackforam padronizados e renomeados comoOnRequestPermissionsCallback->OnRequestPermissionsListener(Ibb3ec9). - As classes
androidx.car.app.hardwareforam atualizadas para remover builders e classes de parâmetros desnecessários (I67beb) - As classes
androidx.car.app.hardwareforam adicionadas para fornecer acesso a dados específicos do carro, como combustível, bateria e velocidade (Iff3c9). - Adição de suporte à
ActionStripemMessageTemplate(Ida657). setLoadingfoi adicionado aMessageTemplate. (I2a4b5).ConnectionToCarfoi renomeado comoCarConnection(Ife9bd).- Mudança em
NavigationTemplatepara retornar umPanModeDelegateexplícito (I13877). - A ordem dos parâmetros foi atualizada em
CarContext.requestPermissions(Ib890a). - A chave de metadados foi atualizada para definir o nível mínimo da API do carro para
androidx.car.api.minCarApiLevel(Ib0d41). - Foi criada uma API que permite observar o estado da conexão do carro (Ifc935).
- Foi adicionado suporte à definição de um botão para uma
Action, além do tipo de movimentaçãoAction(Ica6af). CarNotificationManagerfoi criado para oferecer suporte ao envio de notificações no carro (I10d7a).- Inclusão de
ConstraintManagerpara definir limites de lista do host (I8690e). - O modo de movimentação e a API Map Action Strip foram adicionados no
NavigationTemplate(I77aa6). - Inclusão da API pan e zoom em
SurfaceCallbackpara apps de navegação (Id5e9d). - Atualização de
CarAppApiLevelpara 2 (Ic1540). - Foi adicionada a capacidade de solicitar permissões em um
CarAppService(I5421e). - A anotação
RequiresCarApi(2)foi adicionada à API de vários textos (Iacb62). - Diversas variantes de texto foram permitidas no título do modelo de meia lista (Ib8df7).
- Foi adicionado um novo
LongMessageTemplate. Requer o nível 2 da API Car (Ic5cee).
Correções de bugs
- Os requisitos de tamanho da imagem foram atualizados para incluir telas de carros maiores (I116dc).
- Não é mais permitido adicionar mais de duas ações em corpos de modelo (I32157).
- Foi garantida a criação de
PendingIntents nas flags do conjunto da biblioteca de apps do carro (If84fe, b/186394900). - Javadoc atualizado para permitir mudanças no texto de
Row, como atualizações (If3f9c). androidx.activity:activity:1.2.0agora é uma dependência de API (Id1cb9).SignInTemplateeLongMessageTemplateforam criados para exigir que ações no corpo deles sejam feitas apenas quando o carro estiver estacionado e atualizar a documentação para indicar que eles só vão ser mostrados quando o carro estiver estacionado (Iddaa9).- Foi corrigida uma exceção que ocorre ao exibir uma
Screendurante a inicialização (Ifcf40, b/184664896). - Cor de texto personalizada permitida em
ForegroundCarColorSpan(I69e59) - Correção de um problema em que
ON_DESTROYem umSessioné observado após umScreendeON_DESTROY(I52e01, b/183696617) - O javadoc atualizado foi ativado ao definir o tempo restante de um
TravelEstimatepara um horário desconhecido (I99610, b/183632456). Actionfoi atualizado para oferecer suporte aForegroundColorSpanno título e em qualquer cor de fundo personalizada (I578e4).NavigationManagerCallback#onStopNavigationnão é executado quando o callback é apagado antes da execução do executor (I7fc5e, b/181143772).- Foi corrigido um problema que exigia que o app assumisse explicitamente uma dependência em lifecycle-common-java8 (I8b8c8).
Problemas conhecidos
- No
SignInTemplate, o teclado na tela mostra um ícone de pesquisa em vez de um ícone de enviar quando o usuário quer confirmar a entrada. Como alternativa, os usuários podem acessar o teclado do smartphone, que é ativado quando o campo de entrada está em foco. - No Android Auto versão 6.5, os callbacks de movimentação e zoom em
SurfaceCallbackpodem ser invocados incorretamente com alguns gestos de toque.
Car App Testing versão 1.0.0
Versão 1.0.0-alpha01
24 de março de 2021
Lançamento de androidx.car.app:app-testing:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Essa é a primeira versão do Jetpack da biblioteca de teste código fechado anterior. Consulte nossos exemplos (em inglês) para usar essa biblioteca nos seus testes.
Novos recursos
- Os controladores das classes de modelo foram removidos. Getters de modelo agora fazem parte da superfície da API pública, que permite validar valores que foram definidos nos builders.
- O
CarAppServiceControlleranterior foi substituído pelo novoSessionControllerpara testar a lógica relacionada à vida útil da conexão com o host.
Versão 1.0.0
Versão 1.0.0
21 de abril de 2021
Lançamento de androidx.car.app:app:1.0.0. A versão 1.0.0 contém estas confirmações.
Principais recursos da versão 1.0.0
- No início de abril, anunciamos que os apps podem começar a publicar no canal de produção usando
androidx.car.app:app:1.0.0-rc01. A biblioteca Car App v1.0.0 agora é estável e totalmente compatível com o Android Auto 6.1 e versões mais recentes. - Siga o guia de desenvolvimento para detalhes sobre como criar apps de navegação, estacionamento e carregamento para o Android Auto usando a biblioteca.
Correções de bugs
- Correção de uma exceção que ocorre ao exibir um
Screendurante o início (70aae1, b/184664896) - Correção de um problema em que
ON_DESTROYem umSessioné observado após umScreendeON_DESTROY(0cebor, b/183696617)
Versão 1.0.0-rc01
24 de março de 2021
Lançamento de androidx.car.app:app:1.0.0-rc01. A versão 1.0.0-rc01 contém estas confirmações.
Correções de bugs
- Foi corrigido um bug de disputa em que o
NavigationManagerCallback#onStopNavigationestava sendo chamado depois que o callback era apagado. Isso acontecia quando o callback era apagado antes do executor do callback ser realmente executado (I7fc5e, b/181143772). - Um problema que exigia a inicialização explícita de uma dependência do
lifecycle-common-java8foi corrigido (I8b8c8). - Foi corrigida uma
NullPointerExceptionque era gerada no momento em que o app recebia uma chamadastopNavigationquando já tinha removido um callback (Ib8b89, b/181143772). - Melhorias para não enviar chamadas ao app quando o ciclo de vida não está em um estado
CREATED(I86965, b/179800224, b/177921120). - Foi corrigido um problema em que uma API mínima inválida especificada no manifesto do app gerava uma falha e causava um ANR no host (Iffedd, b/174231592).
Versão 1.0.0-beta01
24 de fevereiro de 2021
Lançamento do androidx.car.app:app:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.
Essa é a primeira versão do Jetpack da biblioteca de código fechado anterior e é compatível com o Android Auto 6.1 e versões mais recentes. Siga o guia de desenvolvimento e veja mais detalhes sobre como criar apps para carros usando a biblioteca.
Novos recursos
- Foi apresentado um
GridTemplate, que seu app pode usar para exibir uma lista de elementos da interface em um layout de grade. - Adição de um método
CarAppService.createHostValidatorpara confirmar que uma conexão de host é de fonte confiável (por exemplo, Android Auto). - Adicionamos uma API
CarAppExtender.Builder.setColor(b/174231592).
Correções de bugs
- Correção de um problema em que a
Screenerrada era retomada ao mostrar as telas em sequência (b/177590791).