App para carro

Criar apps de navegação, estacionamento e carregamento para o Android Auto.
Atualização mais recente Versão estável atual Próximo candidato a lançamento Versão Beta Versão Alfa
16 de junho de 2021 1.0.0 - - 1.1.0-alpha01

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 no arquivo build.gradle para seu app ou módulo:

Groovy

dependencies {
    implementation "androidx.car.app:app:1.0.0"

    // For testing
    implementation "androidx.car.app:app-testing:1.1.0-alpha01"
}

Kotlin

dependencies {
    implementation("androidx.car.app:app:1.0.0")

    // For testing
    implementation("androidx.car.app:app-testing:1.1.0-alpha01")
}

Para ver mais informações sobre dependências, consulte Adicionar dependências de compilação.

Feedback

Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas existentes nesta biblioteca antes de criar um novo. Adicione seu voto a um problema existente clicando no botão de estrela.

Criar novo problema

Consulte a documentação do Issue Tracker para saber mais.

Versão 1.1.0

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 SignInTemplate e LongMessageTemplate que podem ser usados para fluxos de login quando o veículo estiver estacionado.
  • API de nível 2: nova compatibilidade com a interação com o mapa no NavigationTemplate.
  • API de nível 2: nova compatibilidade com 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 ver mais informações e diretrizes sobre como usar esses recursos em hosts de carro compatíveis com API de nível 2.

Mudanças na API

  • Todos os métodos de interface *Callback foram padronizados e renomeados como OnRequestPermissionsCallback -> OnRequestPermissionsListener (Ibb3ec9).
  • As classes androidx.car.app.hardware foram atualizadas para remover builders e classes de parâmetros desnecessários (I67beb)
  • Adição de classes androidx.car.app.hardware para acesso a dados específicos do carro, como combustível, bateria e velocidade (Iff3c9).
  • Adição de compatibilidade com ActionStrip em MessageTemplate (Ida657).
  • setLoading foi adicionado ao grupo MessageTemplate (I2a4b5).
  • ConnectionToCar foi renomeado como CarConnection (Ife9bd).
  • Mudança em NavigationTemplate para retornar um PanModeDelegate explícito (I13877).
  • Atualização da ordem dos parâmetros para CarContext.requestPermissions (Ib890a).
  • Atualização da chave de metadados para definir o nível mínimo da API do carro para androidx.car.api.minCarApiLevel (Ib0d41).
  • Criação de uma API que permite observar o estado da conexão do carro (Ifc935).
  • Inclusão de compatibilidade com a definição de um botão para uma Action e inclusão do tipo de movimentação Action (Ica6af).
  • Criação de CarNotificationManager para oferecer compatibilidade com o envio de notificações no carro (I10d7a).
  • Inclusão de ConstraintManager para definir limites de lista do host (I8690e).
  • Inclusão do modo de movimentação e API de ações do mapa em NavigationTemplate (I77aa6).
  • Inclusão da API pan e zoom em SurfaceCallback para apps de navegação (Id5e9d).
  • Atualização de CarAppApiLevel para 2 (Ic1540).
  • Adição de capacidade de solicitar permissões em um CarAppService (I5421e).
  • Anotação RequiresCarApi(2) adicionada à API de vários textos (Iacb62).
  • São permitidas diversas variantes de texto no título do modelo de meia lista (Ib8df7).
  • Um novo LongMessageTemplate foi adicionado (requer nível 2 da API Car) (Ic5cee).

Correções de bugs

  • Requisitos de tamanho da imagem atualizados para representar telas de automóveis maiores (I116dc).
  • Não é permitido adicionar mais de duas ações em corpos de modelo (I32157).
  • Garantida a criação de PendingIntents nas sinalizações 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.0 agora é uma dependência de API (Id1cb9).
  • SignInTemplate e LongMessageTemplate foram criados para exigir ações no corpo deles somente quando o carro estiver estacionado e atualizar a documentação para indicar que só serão exibidos quando o carro estiver estacionado (Iddaa9).
  • Correção de uma exceção que ocorre ao exibir uma Screen durante a inicialização (Ifcf40, b/184664896)
  • Cor de texto personalizada permitida em ForegroundCarColorSpan (I69e59)
  • Correção de um problema em que ON_DESTROY em um Session é observado após um Screen de ON_DESTROY (I52e01, b/183696617)
  • O javadoc atualizado foi ativado ao definir o tempo restante de um TravelEstimate para um horário desconhecido (I99610, b/183632456).
  • Atualização de Action para oferecer compatibilidade com ForegroundColorSpan no título e em qualquer cor de fundo personalizada (I578e4).
  • NavigationManagerCallback#onStopNavigation não é executado se o callback for apagado antes da execução do executor (I7fc5e, b/181143772).
  • Correção de 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 SurfaceCallback podem 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 antiga. Consulte nossos exemplos (link 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 CarAppServiceController anterior foi substituído pelo novo SessionController para 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 de 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 ver 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 Screen durante o início (70aae1, b/184664896)
  • Correção de um problema em que ON_DESTROY em um Session é observado após um Screen de ON_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.1.0-rc01 contém estas confirmações.

Correções de bugs

  • Um bug de disputa em que o NavigationManagerCallback#onStopNavigation estava sendo chamado depois que o callback era apagado foi corrigido. Isso acontecia se o callback fosse 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-java8 foi corrigido (I8b8c8).
  • Uma NullPointerException que era gerada quando o app recebia uma chamada stopNavigation quando já tinha removido um callback foi corrigida (Ib8b89, b/181143772).
  • Melhorias para não enviar chamadas para o app se o ciclo de vida não estiver em um estado CREATED (I86965, b/179800224, b/177921120).
  • 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 ou versões mais recentes. Siga o guia de desenvolvimento para mais detalhes sobre como criar apps para carros usando a biblioteca.

Novos recursos

Correções de bugs

  • Correção de um problema em que a Screen errada era retomada ao exibir as telas em sequência (b/177590791).