Wear
androidx.wear.activity
androidx.wear.ambient
androidx.wear.input
androidx.wear.utils
androidx.wear.widget
androidx.wear.widget.drawer
Consulte os documentos de referência para todos os pacotes do Wear
Esta tabela lista todos os artefatos no grupo androidx.wear.
| Artefato | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
|---|---|---|---|---|
| wear | 1.3.0 | - | - | 1.4.0-alpha02 |
| wear-input | 1.2.0 | - | - | - |
| wear-input-testing | 1.2.0 | - | - | - |
| wear-ongoing | 1.1.0 | - | - | - |
| wear-phone-interactions | 1.1.0 | - | - | - |
| wear-remote-interactions | 1.1.0 | - | - | 1.2.0-alpha01 |
Declarar dependências
Para adicionar uma dependência ao Wear, adicione 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.wear:wear:1.3.0" // Add support for wearable specific inputs implementation "androidx.wear:wear-input:1.2.0" implementation "androidx.wear:wear-input-testing:1.2.0" // Use to implement wear ongoing activities implementation "androidx.wear:wear-ongoing:1.1.0" // Use to implement support for interactions from the Wearables to Phones implementation "androidx.wear:wear-phone-interactions:1.1.0" // Use to implement support for interactions between the Wearables and Phones implementation "androidx.wear:wear-remote-interactions:1.1.0" }
Kotlin
dependencies { implementation("androidx.wear:wear:1.3.0") // Add support for wearable specific inputs implementation("androidx.wear:wear-input:1.2.0") implementation("androidx.wear:wear-input-testing:1.2.0") // Use to implement wear ongoing activities implementation("androidx.wear:wear-ongoing:1.1.0") // Use to implement support for interactions from the Wearables to Phones implementation("androidx.wear:wear-phone-interactions:1.1.0") // Use to implement support for interactions between the Wearables and Phones implementation("androidx.wear:wear-remote-interactions:1.1.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.
Wear Core: versão 1.0
Versão 1.0.0-rc01
8 de outubro de 2025
Lançamento de androidx.wear:wear-core:1.0.0-rc01 sem mudanças. A versão 1.0.0-rc01 contém estes commits.
Versão 1.0.0-beta02
10 de setembro de 2025
Lançamento de androidx.wear:wear-core:1.0.0-beta02. A versão 1.0.0-beta02 contém estes commits.
Correções de bugs
- Impedir que
WearApiVersionHelpergere exceções em dispositivos mais antigos ao verificar APIs mais recentes.
Versão 1.0.0-beta01
30 de julho de 2025
androidx.wear:wear-core:1.0.0-beta01 é lançado sem mudanças significativas desde a última versão Alfa. A versão 1.0.0-beta01 contém estes commits.
Versão 1.0.0-alpha02
16 de julho de 2025
Lançamento de androidx.wear:wear-core:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estes commits.
Mudanças na API
- Atualiza
WearApiVersionHelperpara incluir VIC/Baklava (I4676d).
Correções de bugs
- Agora, essa biblioteca usa anotações de nulidade do JSpecify, que são de uso de tipo. Os desenvolvedores Kotlin precisam usar os seguintes argumentos do compilador para garantir o uso correto:
-Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(Icbfb9, b/326456246).
Versão 1.0.0-alpha01
29 de maio de 2024
Lançamento de androidx.wear:wear-core:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estes commits.
Mudanças na API
- Adicionada uma nova classe
WearApiVersionhelperpara ajudar na verificação de compatibilidade da API em tempo de execução no Wear. Os clientes podem usar essa classe auxiliar estática e o método fornecido (#isApiVersionAtLeast(VERSION)) para verificar a compatibilidade.
Visualização das ferramentas do Wear: versão 1.0
Versão 1.0.0
29 de novembro de 2023
Lançamento de androidx.wear:wear-tooling-preview:1.0.0. A versão 1.0.0 contém estas confirmações.
Recursos na versão 1.0.0
- Adicione
WearDevicespara listar dispositivos wearable válidos que podem ser usados em prévias da interface.
Versão 1.0.0-rc01
15 de novembro de 2023
Lançamento de androidx.wear:wear-tooling-preview:1.0.0-rc01 sem mudanças. A versão 1.1.0-rc01 contém estas confirmações.
Versão 1.0.0-beta01
18 de outubro de 2023
Lançamento de androidx.wear:wear-tooling-preview:1.0.0-beta01 sem mudanças. A versão 1.0.0-beta01 contém estas confirmações.
Versão 1.0.0-alpha01
23 de agosto de 2023
Lançamento de androidx.wear:wear-tooling-preview:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Mudanças na API
- Adicione
WearDevicesà lista de dispositivos Wear válidos que podem ser usados para prévias da interface (Ib036e).
Wear: versão 1.4
Versão 1.4.0-alpha02
16 de julho de 2025
Lançamento de androidx.wear:wear:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estes commits.
Correções de bugs
- Agora, essa biblioteca usa anotações de nulidade do JSpecify, que são de uso de tipo. Os desenvolvedores Kotlin precisam usar os seguintes argumentos do compilador para garantir o uso correto:
-Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(If4b1a, b/326456246).
Versão 1.4.0-alpha01
15 de novembro de 2023
Lançamento de androidx.wear:wear:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estas confirmações.
Correções de bugs
- Centralize verticalmente o ícone
ConfirmationOverlayquando não houver mensagem. (I496d8).
Wear: versão 1.3
Versão 1.3.0
9 de agosto de 2023
androidx.wear:wear:1.3.0 é lançado sem mudanças desde 1.3.0-rc01. A versão 1.3.0 contém estas confirmações.
Mudanças importantes desde a versão 1.2.0
- Migre
AmbientModeSupportpara usarLifecycleObserver. DescontinueAmbientModeSupportem favor das novas classes com reconhecimento do ciclo de vida. - Atualização do
ConfirmationOverlaycom novos ícones/layout, fontes e métricas de fontes SwipeDismissTransitionHelperatualizado para usar um elemento combinável em segundo plano em vez de um segundoViewpara corrigir erros ao usar oFragmentContainerView- A animação
SwipeDismissFrameLayoutfoi atualizada para ser consistente com a plataforma Wear e as implementações do Wear Compose. - Correção de bug
SwipeDismissFrameLayoutpara evitar a dispensa acidental de fragmentos com uma rolagem vertical. ArcLayoutagora oferece suporte a pesos de expansão que funcionam de forma parecidas com os pesos de layout normais.- Suporte a
layoutDirectionnoArcLayout
Versão 1.3.0-rc01
21 de junho de 2023
androidx.wear:wear:1.3.0-rc01 é lançado sem mudanças desde 1.3.0-beta01. A versão 1.3.0-rc01 contém estas confirmações.
Versão 1.3.0-beta01
7 de junho de 2023
Lançamento de androidx.wear:wear:1.3.0-beta01. A versão 1.3.0-beta01 contém estas confirmações.
Mudanças na API
AmbientLifecycleObserveratualizado após o feedback.AmbientLifecycleObserverInterfacefoi renomeado comoAmbientLifecycleObserver, e uma instância pode ser obtida chamandoAmbientLifecycleObserver(...).isAmbientfoi movido para ser um campo em vez de um método. (I84b4f).
Correções de bugs
- Adição de verificações de nulo para processar casos em que a visualização principal é nula ao redefinir alfa e tradução em
SwipeToDismiss. (Ib0ec7).
Versão 1.3.0-alpha05
19 de abril de 2023
Lançamento de androidx.wear:wear:1.3.0-alpha05. A versão 1.3.0-alpha05 contém essas confirmações.
Mudanças na API
- Migre
AmbientModeSupportpara usarLifecycleObserver. DescontinueAmbientModeSupportem favor das novas classes com reconhecimento de ciclo de vida. (I1593b)
Correções de bugs
- Atualize a abordagem de tela de fundo
SwipeDismissTransitionHelperpara usar elementos gráficos em vez de adicionar visualização para corrigir erros ao usarFragmentContainerView. (I851cd).
Versão 1.3.0-alpha04
25 de janeiro de 2023
Lançamento de androidx.wear:wear:1.3.0-alpha04. A versão 1.3.0-alpha04 contém estas confirmações.
Correções de bugs
- Atualizamos a animação no
SwipeDismissFrameLayoutpara que ela seja consistente com a plataforma Wear e as implementações do Wear Compose (I7261b).
Versão 1.3.0-alpha03
24 de agosto de 2022
Lançamento de androidx.wear:wear:1.3.0-alpha03. A versão 1.3.0-alpha03 contém essas confirmações.
Novos recursos
ArcLayoutagora oferece suporte a pesos de expansão que funcionam de forma parecidas com os pesos de layout normais. Isso significa que você pode especificar o tamanho relativo de elementos filhos sem precisar calcular os ângulos diretamente. Também adicionamos umMaxAngleDegrees, que é respeitado ao abrir elementos filhos com pesos. Por exemplo, você pode fixar o arco com vários filhos com pesos em 90 graus e ainda respeitar o espaço ocupado por todos os elementos não abertos.
Mudanças na API
- Adicionamos pesos ao
ArcLayout.LayoutParams, que permitem que um widget se expanda para preencher o espaço disponível. Se houver mais de um widget, a parcela do espaço disponível vai ser proporcional ao peso. Além disso, adicionamosArcLayout.setMaxAngleDegreespara que você possa limitar a abertura a 90 graus, por exemplo. Isso não afeta o layout de widgets filhos de tamanho fixo. Por fim,ArcLayout.Widgetagora temsetSweepAngleDegrees, que permite queArcLayoutinforme um widget com um peso diferente de zero para o próprio tamanho (I75f24). - Atualização da nulidade de
setColorFilter(I99ddf, b/236498063).
Versão 1.3.0-alpha02
23 de fevereiro de 2022
Lançamento de androidx.wear:wear:1.3.0-alpha02. A versão 1.3.0-alpha02 contém estas confirmações.
Novos recursos
- Suporte para
layoutDirectionemArcLayout(I14d49). - Mensagem de descrição de conteúdo aprimorada para VerificationOverlay (I0fdf8).
- Atualização do
ConfirmationOverlaycom novos ícones/layout (If5b54).
Correções de bugs
- Inclusão de regras do Proguard para garantir que o código relacionado ao ambiente seja mantido (Idaa10).
- Evite a dispensa acidental de fragmentos em SwipeDismissFrameLayout com uma rolagem vertical (Idb6d8).
- Correção de ConfirmOverlay quando não há mensagem (I63e6f).
Contribuição externa
- Dae Gyu LEE (Samsung): evite a dispense acidental de fragmentos em SwipeDismissFrameLayout com uma rolagem vertical (Idb6d8).
Versão 1.3.0-alpha01
29 de setembro de 2021
Lançamento de androidx.wear:wear:1.3.0-alpha01. A versão 1.3.0-alpha01 contém estas confirmações.
Correções de bugs
- Agora, a
ConfirmationOverlaycoloca o ícone mais acima para acomodar mensagens mais longas, sem que fiquem na borda do dispositivo ou fora da tela (I54bff).
Wear-Remote-Interactions: versão 1.2.0
Versão 1.2.0-alpha01
2 de julho de 2025
Lançamento de androidx.wear:wear-remote-interactions:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estes commits.
Novos recursos
- Atualizamos o
RemoteActivityHelper.startRemoteActivitypara usar uma nova API pública do SDK do Wear (startRemoteActivity) se ela estiver disponível (do Wear 6 em diante). (Id1e77).
Wear Ongoing & Interactions: versão 1.1.0
Versão 1.1.0
26 de fevereiro de 2025
Lançamento de androidx.wear:wear-phone-interactions:1.1.0. A versão 1.1.0 contém estes commits.
Mudanças importantes desde a versão 1.0.0
- Esta versão contém uma correção de bug crucial para apps executados no Wear OS 5 (nível 34 da API) ou mais recente e direcionados ao nível 35 da API ou mais recente.
- Os apps precisam ser atualizados para essa versão da biblioteca antes de atualizar o
targetSdkVersionpara 35 ou mais. - Caso contrário, uma exceção de tempo de execução será gerada.
- Uma nova definição para o tipo de dispositivo pareado (
none) foi adicionada quando o dispositivo não está pareado com o smartphone.
Versão 1.1.0-rc01
12 de fevereiro de 2025
androidx.wear:wear-phone-interactions:1.1.0-rc01 é lançado sem mudanças significativas desde a última versão Beta. A versão 1.1.0-rc01 contém estes commits.
Versão 1.1.0-beta01
29 de janeiro de 2025
Lançamento de androidx.wear:wear-phone-interactions:1.1.0-beta01. A versão 1.1.0-beta01 contém estes commits.
Novos recursos
A versão 1.1.0-beta01 do Wear Phone Interactions indica que esta versão da biblioteca está com todos os recursos e a API está bloqueada (exceto onde marcado como experimental). O Wear Phone Interactions 1.1 inclui as seguintes novas funcionalidades e APIs:
- A propriedade
redirectUrlfoi adicionada aOAuthRequest. - Correções na documentação
- Adicione um tipo em
PhoneTypeHelperpara especificar quando o dispositivo não está pareado com o smartphone, em vez de usar o tipo desconhecido atual.
Mudanças na API
- Adicionamos uma nova definição para o tipo de dispositivo pareado: "nenhum", quando o dispositivo não está pareado com o smartphone. (I06cb8).
Versão 1.1.0-alpha05
11 de dezembro de 2024
Lançamento de androidx.wear:wear-phone-interactions:1.1.0-alpha05. A versão 1.1.0-alpha05 contém estes commits.
Correções de bugs
- Correção de um bug de falha ao executar no Wear OS 5 (nível 34 da API) ou mais recente ao segmentar o nível 35 da API ou mais recente. Os apps precisam ser atualizados para essa versão da biblioteca antes de atualizar o
targetSdkVersionpara 35 ou mais.
Versão 1.1.0
11 de dezembro de 2024
Lançamento de androidx.wear:wear-remote-interactions:1.1.0. A versão 1.1.0 contém estes commits.
Mudanças importantes desde a versão 1.0.0
- Adicionamos
RemoteActivityHelper.isRemoteActivityHelperAvailable, que ajuda a verificar se a funcionalidade de iniciar uma atividade remota está disponível. (I107a9)
Versão 1.1.0-rc01
16 de outubro de 2024
androidx.wear:wear-remote-interactions:1.1.0-rc01 é lançado sem mudanças desde 1.1.0-beta01. A versão 1.1.0-rc01 contém estes commits.
Versão 1.1.0-beta01
24 de julho de 2024
Lançamento de androidx.wear:wear-remote-interactions:1.1.0-beta01. A versão 1.1.0-beta01 contém estes commits. A versão 1.3.0-beta01 do Wear Remote Interactions indica que esta versão da biblioteca está com todos os recursos e a API está bloqueada (exceto quando marcada como experimental).
Versão 1.1.0-alpha04
10 de janeiro de 2024
Lançamento de androidx.wear:wear-phone-interactions:1.1.0-alpha04. A versão 1.1.0-alpha04 contém estas confirmações.
Mudanças na API
- Adicionamos
RemoteAuthClient.isRemoteAuthAvailable, que verifica se a autenticação remota está disponível. (Ibc10c).
Versão 1.1.0-alpha02
10 de janeiro de 2024
Lançamento de androidx.wear:wear-remote-interactions:1.1.0-alpha02. A versão 1.1.0-alpha02 contém estas confirmações.
Mudanças na API
- Adicionamos
RemoteActivityHelper.isRemoteActivityHelperAvailable, que ajuda a verificar se a funcionalidade de iniciar uma atividade remota está disponível. (I107a9) - Atualizamos o construtor de
RemoteActivityHelperpara ter um parâmetro opcional compatível com Java. (I75554)
Versão 1.1.0-alpha01
21 de junho de 2023
Lançamento de androidx.wear:wear-remote-interactions:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Correções de bugs
- Melhoramos a forma como o tratamento de erros e a conclusão são feitos em
RemoteActivityHelper. (I60d60).
Contribuição externa
- Remova a dependência do Guava de
wear-remote-interactionse use alternativas menores.
Wear-Phone-Interactions: versão 1.1.0-alpha03
9 de março de 2022
Lançamento de androidx.wear:wear-phone-interactions:1.1.0-alpha03. A versão 1.1.0-alpha03 contém estas confirmações.
Correções de bugs
- O
redirectUrldaOAuthRequestagora retorna uma string vazia se o URL de redirecionamento não estiver definido no URL de solicitação em questão (I44242).
Wear-Phone-Interactions: versão 1.1.0-alpha02
15 de dezembro de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.1.0-alpha02. A versão 1.1.0-alpha02 contém estas confirmações.
Correções de bugs
- Correção dos erros na documentação da
RemoteAuthClient, incluindo o erro no snippet do exemplo de código e no link inativo para oErrorCode(I260e8).
Wear-Phone-Interactions: versão 1.1.0-alpha01
15 de setembro de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Mudanças na API
Wear Ongoing & Interactions: versão 1.0.0
Wear-Phone-Interactions: versão 1.0.1
15 de dezembro de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.1. A versão 1.0.1 contém estas confirmações.
Correções de bugs
- Correção da exceção gerada na classe
BridgingManagerao tentar desativar as notificações de transmissão sem asexcludedTags.
Wear-Phone-Interactions Wear-Remote-Interactions: versão 1.0.0
15 de setembro de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0 e androidx.wear:wear-remote-interactions:1.0.0. A versão 1.0.0 contém estas confirmações.
Principais recursos da versão 1.0.0
A biblioteca Phone Interaction contém APIs para interações de wearables com smartphones. O conteúdo é o seguinte:
- A classe
PhoneDeviceType, que fornece métodos auxiliares para determinar o tipo de smartphone ao qual o relógio atual está pareado, para uso somente em dispositivos wearable. - As APIs
BridgingManager,BridgingManagerServiceeBridgingConfigpara ativar/desativar notificações no momento da execução e, opcionalmente, definir tags para notificações isentas do modo bridge. - A biblioteca
RemoteAuthClient, que oferece suporte à autenticação remota em wearables e à adição da extensão OAuth PKCE. Também são fornecidos outros gerenciadores e classes auxiliares para comunicação.
A biblioteca Remote Interaction contém APIs para interações entre wearables e smartphones. O conteúdo é o seguinte:
- A classe
WatchFaceConfigIntentHelper, que fornece funções auxiliares para especificar o nome do componente e o ID nas atividades de configuração do mostrador do relógio para o companion no smartphone. - A classe
RemoteActivityHelper, que pode ser usada para abrir intents em outros dispositivos (por exemplo, do relógio para o smartphone).
Wear-Phone-Interactions Wear-Remote-Interactions: versão 1.0.0-rc01
1º de setembro de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0-rc01 e androidx.wear:wear-remote-interactions:1.0.0-rc01. A versão 1.0.0-rc01 contém estas confirmações.
Correções de bugs
- Correção do bug que impedia que os erros gerados no Google Play Services fossem propagados para o autor da chamada ao usar o RemoteActivityHelper (I60d60).
- Correção do bug em que o RemoteActivityHelper nunca atendia o próprio Future se não houvesse nós conectados ou se o nodeId solicitado não fosse encontrado (I60d60).
Wear-Ongoing: versão 1.1
Versão 1.1.0
10 de setembro de 2025
Lançamento de androidx.wear:wear-ongoing:1.1.0. A versão 1.1.0 contém estes commits.
Mudanças importantes desde a versão 1.0.0:
- Adição de um campo de descrição do conteúdo às atividades em andamento, que é usado por serviços de acessibilidade.
- Adicionamos anotações
RequiresPermissionàs APIs que exigem a permissãoPOST_NOTIFICATIONSno SDK 33 e versões mais recentes.
Versão 1.1.0-rc01
27 de agosto de 2025
androidx.wear:wear-ongoing:1.1.0-rc01 é lançado sem mudanças desde a última versão Beta. A versão 1.1.0-rc01 contém estes commits.
Versão 1.1.0-beta01
30 de julho de 2025
androidx.wear:wear-ongoing:1.1.0-beta01 é lançado sem mudanças significativas desde a última versão Alfa. A versão 1.1.0-beta01 contém estes commits.
Versão 1.1.0-alpha01
23 de agosto de 2023
Lançamento de androidx.wear:wear-ongoing:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição de um campo de descrição do conteúdo à atividade em andamento Isso será usado pelos serviços de acessibilidade para descrever a atividade em andamento. (I79fc6).
Correções de bugs
@RequiresPermissionforam adicionadas a APIs que exigem a concessão da permissãoPOST_NOTIFICATIONSno SDK 33 e versões mais recentes (Ie542e, b/238790278).
Wear-Ongoing: versão 1.0.0
1º de setembro de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0. A versão 1.0.0 contém estas confirmações.
Principais recursos da versão 1.0.0
- A API Wear Ongoing Activities é voltada para desenvolvedores, incluindo desenvolvedores terceiros, e é usada para marcar a atividade como "em andamento" e fornecer as informações necessárias.
- Atividades em andamento são aquelas que podem estar em execução em segundo plano no relógio, por exemplo, treinos, chamadas e mídia. No Wear 3, uma atividade declarada como em andamento terá mais destaque com um ícone dedicado no mostrador do relógio e uma renderização diferente no Acesso rápido aos apps.
- Para ver mais informações, consulte o Guia de atividades em andamento do Wear
Wear-Phone-Interactions Wear-Remote-Interactions: versão 1.0.0-beta01
18 de agosto de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0-beta01 e androidx.wear:wear-remote-interactions:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.
Mudanças na API
- A classe
RemoteIntentHelperfoi renomeada comoRemoteActivityHelper. As funçõesRemoteIntentHelper#getRemoteIntentExtraIntenteRemoteIntentHelper#getRemoteIntentNodeIdforam renomeadas comoRemoteActivityHelper#getTargetIntenteRemoteActivityHelper#getTargetNodeId, respectivamente (Id2042).
Wear Ongoing: versão 1.0.0-rc01
18 de agosto de 2021
androidx.wear:wear-ongoing:1.0.0-rc01 é lançado sem mudanças desde 1.0.0-beta01. A versão 1.0.0-rc01 contém estas confirmações.
Wear Ongoing: versão 1.0.0-beta01
4 de agosto de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.
Mudanças na API
- Agora, alguns setters na classe OngoingActivity.Builder aceitam um argumento nulo para dar simetria e consistência aos setters e getters (I17ee5).
Wear-Phone-Interactions: versão 1.0.0-alpha07
4 de agosto de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0-alpha07. A versão 1.0.0-alpha07 contém estas confirmações.
Mudanças na API
- Renomeação de
WearTypeHelper.isChinaDevicecomoWearTypeHelper.isChinaBuild(I47302). - Atualização da biblioteca RemoteAuthClient para selecionar redirect_uri automaticamente com base no tipo de dispositivo (todos os outros países/China) (I38866).
- Correção do bug que fazia com que a conversão de BridgingConfig para/do Bundle falhasse com a ClassCastException. Adição de testes de unidade para a classe BridgingManagerService (I68ecb).
Wear-Remote-Interactions: versão 1.0.0-alpha06
4 de agosto de 2021
Lançamento de androidx.wear:wear-remote-interactions:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.
Wear-Phone-Interactions: versão 1.0.0-alpha06
21 de julho de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.
Mudanças na API
- A classe
BridgingManagerSeviceBinderagora é uma subclasse da Service e foi renomeada como BridgingManagerSevice (I9fca2). - O método
RemoteAuthClient.Callback.onAuthorizationErrorfoi mudado para incluir o parâmetro OAuthRequest. Os métodos que exigem callback agora também precisam de um executor para executar o callback (I35e11).
Correções de bugs
- Tornamos a API de autenticação mais clara com parâmetros mais documentados e com o uso de propriedades quando possível (I12287).
Wear-Phone-Interactions: versão 1.0.0-alpha05
30 de junho de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.
Correções de bugs
- Parâmetros documentados que precisam ser transmitidos no construtor para
BridgingConfig.Builder.
Wear-Ongoing versão 1.0.0-alpha06
2 de junho de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.
Mudanças na API
- Adição do campo "Título" à atividade em andamento (I7a405).
Correções de bugs
SerializationHelper.copy()agora faz uma cópia defensiva das informações (I8b276).- Melhoria na documentação de setCategory (Iff01f)
Wear Ongoing: versão 1.0.0-alpha05
18 de maio de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.
Mudanças na API
A
OngoingActivityagora tem getters para extrair todos os valores definidos diretamente pelo builder (ou os padrões da notificação associada) (Id8ac8).- A nova classe
Statusagora é usada para criar o status daOngoingActivity. - O
OngoingActivityDatae oOngoingActivityStatusnão fazem mais parte da API pública.
- A nova classe
As classes
TextStatusParteTimerStatusPartnão fazem mais parte da API pública (I57fb6).- Para criar uma
Partcom texto estático, useStatus.TextPart. - Para criar uma
Partcom cronômetro (contagem progressiva), useStatus.Stopwatch. - Para criar uma
Partcom timer (contagem regressiva), useStatus.Timer.
- Para criar uma
Wear-Ongoing: versão 1.0.0-alpha04
5 de maio de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.
Mudanças na API
- Na OngoingActivity, os métodos fromExistingOngoingActivity agora são chamados de recoverOngoingActivity.
- A OngoingActivity agora tem um conjunto completo de getters, o mesmo anteriormente disponível apenas no OngoingActivityData (I0ee4d).
Wear-Remote-Interactions: versão 1.0.0-alpha05
21 de julho de 2021
Lançamento de androidx.wear:wear-remote-interactions:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.
Mudanças na API
Adicionamos a classe
RemoteIntentHelper(anteriormente chamada de RemoteIntent na Biblioteca de Suporte para Wearables), que pode ser usada para abrir intents em outros dispositivos, desde um smartwatch até um smartphone (I1d7e0).A classe PlayStoreAvailability foi removida da biblioteca do AndroidX. Para detectar se a Play Store está disponível em um smartphone conectado, use o método
androidx.phone.interactions.PhoneTypeHelper.getPhoneDeviceTypepara descobrir se o dispositivo usa o Android. Em seguida, use o métodoandroidx.wear.utils.WearTypeHelper.isChinaDevicepara determinar se o smartphone conectado é chinês. Caso o smartphone seja Android e não seja um dispositivo chinês, isso significa que a Play Store está disponível (Ie7dec).
Wear-Phone-Interactions: versão 1.0.0-alpha04
7 de abril de 2021
Lançamento de androidx.wear:wear-phone-interactions:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.
Mudanças na API
- Atualização das constantes de
ErrorCodepara tornar a nova biblioteca compatível com versões anteriores da implementação na Biblioteca de Suporte de Wearables.
Correções de bugs
- Correção da exceção causada pela nova API OAuth ao iniciar uma sessão OAuth.
Wear-Remote-Interactions: versão 1.0.0-alpha03
7 de abril de 2021
Lançamento de androidx.wear:wear-remote-interactions:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.
Mudanças na API
- Mudança da classe
PlayStoreAvailabilitypara que ela passe a conter um objeto complementar com métodos estáticos. O uso continua o mesmo.
Correções de bugs
- O documento de resumo da classe
WatchFaceConfigIntentHelperfoi corrigido para mostrar corretamente o exemplo de código com caracteres HTML reais.
Wear-Ongoing Wear-Phone-Interactions: versão 1.0.0-alpha03
10 de março de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-alpha03 e androidx.wear:wear-phone-interactions:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
- Migrar o OAuthClient da Biblioteca de Suporte de Wearables para o AndroidX. Esta classe migrada foi renomeada como RemoteAuthClient e oferece suporte à autenticação remota em wearables, além de suporte à adição da extensão PKCE OAuth. Também são fornecidos outros gerenciadores e classes auxiliares para comunicação.
- As atividades contínuas agora podem ser associadas, usando o novo construtor de OngoingActivity.Builder, a uma notificação que tenha uma tag.
Mudanças na API
- Foi adicionado suporte a tags de notificação à biblioteca Ongoing Activities (I653b4).
- O OAuthClient foi migrado da Biblioteca de Suporte do Wear para o AndroidX e foi adicionado suporte à extensão PKCE OAuth (I3eaaa).
Wear-Remote-Interactions versão 1.0.0-alpha02
10 de março de 2021
Lançamento de androidx.wear:wear-remote-interactions:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.
Novos recursos
- A classe PlayStoreAvailability foi migrada da Biblioteca de Suporte de Wearables para o AndroidX, que oferece uma API para verificar se a Play Store está disponível no smartphone.
Correções de bugs
- A classe PlayStoreAvailability foi migrada da Biblioteca de Suporte de Wearables para o AndroidX (I69bfe).
Versão 1.0.0-alpha02
10 de fevereiro de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-alpha02 e androidx.wear:wear-phone-interactions:1.0.0-alpha02. A versão 1.0.0-alpha02 contém estas confirmações.
Mudanças na API
- Adição de suporte a um status mais complexo. Eles são compostos de um modelo (ou vários) e uma série de partes que serão usadas para preencher os marcadores do modelo. O OngoingActivityStatus agora tem um método estático para criar status simples com apenas uma parte (um texto ou timer), e um builder para criar status mais complexos (I1fe81).
- As classes BridgingManager e BridgingConfig da Biblioteca de Suporte do Wear para o AndroidX oferecem APIs para ativar/desativar notificações durante o tempo de execução e, opcionalmente, definir tags para notificações isentas do modo bridge (I3a17e).
Versão 1.0.0-alpha01
27 de janeiro de 2021
Lançamento de androidx.wear:wear-ongoing:1.0.0-alpha01, androidx.wear:wear-phone-interactions:1.0.0-alpha01 e androidx.wear:wear-remote-interactions:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Mudanças na API
Migração da biblioteca Ongoing Activities para uma nova sub-biblioteca: wear-ongoing. As classes agora ficam no pacote androidx.wear.ongoing (antes chamado de androidx.wear.ongoingactivities) (I7c029).
Criação de uma nova biblioteca de suporte para conter classes compatíveis com interações de wearables com smartphones. Ela é inicialmente preenchida com classes migradas da Biblioteca de Suporte de Wearables (Id5180).
Migração da classe PhoneDeviceType da Biblioteca de Suporte de Wearables para AndroidX. A classe migrada é renomeada como PhoneTypeHelper, que fornece métodos auxiliares para determinar o tipo de smartphone ao qual o relógio atual está pareado, para uso apenas em dispositivos wearables (Ibd947).
Criação de uma nova biblioteca de suporte para conter classes compatíveis com interações entre wearables e smartphones. Ela é inicialmente preenchida com classes migradas da Biblioteca de Suporte de Wearables (I9deb4).
Migração da classe WatchFaceCompanion da Biblioteca de Suporte de Wearables para AndroidX. A classe migrada é renomeada como WatchFaceConfigIntentHelper, que oferece funções auxiliares para especificar o nome do componente e o ID nas atividades de configuração do mostrador do relógio em apps complementares no smartphone. Ela também pode ser usada localmente para configurar o mostrador do relógio no dispositivo wearable (Ia455f).
Wear Complications e Watchface 1.0.0
Versão 1.0.0-alpha22
15 de setembro de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha22. A versão 1.0.0-alpha22 contém estas confirmações.
Novos recursos
- A EditorSession agora se inscreve em observadores do ciclo de vida. Não é mais necessário fechá-la explicitamente quando a atividade desaparece.
Mudanças na API
- EditorSession e ListenableEditorSession agora usam StateFlows do Kotlin para complicationSlotsState, ComplicationsPreviewData e ComplicationsDataSourceInfo (I761d9).
- EditorSession#userStyle agora é um
MutableStateFlow<UserStyle>(I32ca9). - EditorSession.createOnWatchEditorSession agora usa um observador do ciclo de vida e fecha automaticamente quando observa o onDestroy. Além disso, o método
createOnWatchEditorSessionagora só requer que a atividade seja transmitida. Mudanças idênticas também foram aplicadas à ListenableEditorSession (Ic6b7f). - O construtor de CustomValueUserStyleSetting foi restabelecido como parte da API pública (I2e69a).
- A classe
UserStyleagora herda deMap<UserStyleSetting, UserStyleSetting.Option>eMutableUserStyleSetting#putgera uma IllegalArgumentException se a configuração não estiver no esquema ou se a opção não corresponder à configuração (Iba40f).
Versão 1.0.0-alpha21
1º de setembro de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha21. A versão 1.0.0-alpha21 contém estas confirmações.
Mudanças na API
- Todas as APIs públicas de mostrador do relógio, cliente, editor e complicação agora usam java.time.Instant em vez de um Long. Como consequência, o nível mínimo de API aumentou para 26 (I3cd48).
- As APIs de mostrador do relógio e complicação agora usam o ZonedDateTime imutável em vez do Calendar (I25cf8).
- ComplicationSlots agora são inicializados com NoDataComplicationData, ComplicationSlot.complicationData agora tem um valor e CanvasComplicationDrawable.complicationData não é mais anulável (I4dfd6). Isso reduz (mas não elimina) oscilações ao alternar entre os mostradores do relógio.
Versão 1.0.0-alpha20
18 de agosto de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha20. A versão 1.0.0-alpha20 contém estas confirmações.
Mudanças na API
- createFallbackPreviewData foi acrescentado a ComplicationDataSourceInfo e pode ser usado quando ComplicationDataSourceInfoRetriever.recoverPreviewComplicationData retorna nulo (I38c4d).
- ComplicationDataSourceUpdateRequester foi transformado em uma interface para autorizar a simulação em testes de unidade. Você pode construir um ComplicationDataSourceUpdateRequester concreto com ComplicationDataSourceUpdateRequester.create() (I7da22).
- RenderParameters.PressComplicationSlotIds foi substituído por RenderParameters.lastComplicationTapDownEvents, expondo a nova classe TapEvent, que contém o triplo de coordenadas x, y do toque em pixels e um carimbo de data/hora.
WatchFace.TapListener.onTapfoi substituído poronTapEvent(@TapType tapType: Int, tapEvent: TapEvent). Além disso,InteractiveWatchFaceClient.displayPressedAnimationfoi removido (Id87d2). - Uma anotação de linha de execução explícita foi acrescentada a setImportanteForAccessibility (I990fa).
- ComplicationSlotBoundsType foi movido para androidx-wear-watchface.ComplicationSlotBoundsType em wear/wear-watchface (I09420).
- Adicionamos suporte à transmissão dos IDs de recursos de string a UserStyleSetting e Options. Agora, essa é a maneira recomendada de construir esses objetos (I03d5f).
- Foram impostos limites ao tamanho máximo do fio de um esquema UserStyle. Além disso, os ícones no esquema não podem ser maiores que 400 x 400 pixels (I3b65b).
- A classe MutableUserStyle foi adicionada para oferecer suporte às mudanças em instâncias do UserStyle (I95a40).
- Renomeamos
ListenableWatchFaceMetadataClient.Companion#listenableCreateWatchFaceMetadataClientcomoListenableWatchFaceMetadataClient.Companion#createListenableWatchFaceMetadataClient(I64ce2). - Modificamos EditorState.previewComplicationsData para que contenha apenas dados de complicações ativadas e adicionamos
EditorSession.DEFAULT_PREVIEW_TIME_MILLISque, se transmitido pararenderWatchFaceToBitmapouPreviewScreenshotParams, solicita a renderização com o tempo de visualização padrão do mostrador do relógio (If7b3c). - Removemos os construtores UserStyleSetting que usam o CharSequence da API pública. É recomendável usar os construtores que exigem IDs StringResource (I8537b).
- Agora,
CurrentUserStyleRepository.UserStyleChangeListeneroferece suporte para a conversão de SAM (I85989).
Versão 1.0.0-alpha19
4 de agosto de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha19. A versão 1.0.0-alpha19 contém estas confirmações.
Mudanças na API
- Adição de
ListenableWatchFaceMetadataClient.listenableCreateWatchFaceMetadataClient, que fornece um wrapperListenableFutureparaWatchFaceMetadataClient.createWatchFaceMetadataClient(I5fa37). UserStyleOption.getOptionForIdagora aceitaUserStyleOption.Idem vez de uma matriz de bytes (I469be).- Fornecimento das constantes
BooleanOption.TRUEeBooleanOption.FALSEe impedimento da criação de instâncias (I46e09). - Os métodos em wear-watchface-client que podem gerar uma RemoteException agora estão anotados adequadamente (Ib8438).
- Para manter a consistência, renomeamos
EditorSession.createOnWatchEditingSessioncomocreateOnWatchEditorSession. Da mesma forma,createHeadlessEditingSessionagora écreateHeadlessEditorSession. Os wrappers guava também foram renomeados (I1526b). - A
EditorSessionagora é uma interface, e a delegação deListenableEditorSession.commitChangesOnCloseagora é feita corretamente (I7dc3e). - Agora, rejeitamos qualquer esquema de estilo de usuário que tenha configurações ou opções com códigos conflitantes (Ic2715).
- Adicionamos um parâmetro
UserStyle.getsobrecarregado que aceitaUserStyleSetting.Id(I2aa0f).
Versão 1.0.0-alpha18
21 de julho de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha18. A versão 1.0.0-alpha18 contém estas confirmações.
Mudanças na API
- Movemos a
ComplicationHelperActivitypara a bibliotecaandroidx.wear:wear-watchface(I39e76). - Para fins de consistência e clareza, o
ComplicationProviderfoi renomeado comoComplicationDataSourcee todas as classes com Provider no nome também foram renomeadas (Iaef0b). CanvasComplication.isHighlightedfoi movido paraRenderParameters.pressedComplicationSlotIds. Essa é uma etapa para tornar oCanvasComplicationsem estado. Para oferecer suporte a essa mudança, oCanvasComplication.renderagora também aceita oslotIdcomo um parâmetro, e transmitimosComplicationSlotparaGlesTextureComplication(I50e6e).- Adicionamos a
headlessDeviceConfigàEditorRequest. Se não for nulo, esse parâmetro será usado para construir uma instância headless para a EditorSession, em vez de agir na instância interativa. Isso possibilita que o editor seja invocado para um mostrador do relógio que não seja o atual (I0a820). - Adicionamos um
WatchFaceMetadataClientexperimental que possibilita a extração eficiente de metadados de mostradores de relógio estáticos, como oUserStyleSchema, e corrigimos detalhes nosComplicationSlots(I6bfdf). - Renomeamos
CanvasRenderer.uiThreadInitcomo init (I6fff9). - Adicionamos um novo parâmetro opcional, PreviewScreenshotParams, à EditorRequest, que instrui a EditorSession a fazer uma captura de tela da visualização para confirmar esse parâmetro. A imagem de visualização está exposta na
EditorState.previewImage(Ic2c16).
Correções de bugs
- Os desenvolvedores não precisam mais adicionar a ComplicationHelperActivity ao manifesto (I6f0c2).
Versão 1.0.0-alpha17
30 de junho de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha17. A versão 1.0.0-alpha17 contém estas confirmações.
Novos recursos
Em
GlesRenderer,makeUiThreadContextCurrentemakeBackgroundThreadContextCurrentforam substituídos porrunUiThreadGlCommandserunBackgroundThreadGlCommands, que aceitam umRunnable. A biblioteca garante que somente um comando GL executável possa ser executado por vez.Para facilitar a inicialização da UiThread, adicionamos
CanvasRenderer.uiThreadInit, que é chamado uma vez na UiThread antes de qualquer chamada ser renderizada. Também adicionamos o atributoonRendererCreatedàCanvasComplication, que facilita o compartilhamento do estado paraRenderereCanvasComplication.Para maior clareza, renomeamos
ComplicationcomoComplicationSlotecomplicationIdparacomplicationSlotIdoucomplicationInstanceId, dependendo do uso
Mudanças na API
- Para maior clareza, renomeamos
ComplicationcomoComplicationSlotecomplicationIdcomocomplicationSlotIdoucomplicationInstanceId, dependendo do uso. As classes que usam "Complication" também foram renomeadas. Por exemplo, "ComplicationsManager" agora é chamada "ComplicationSlotsManager" (I4da44). - Em GlesRenderer,
makeUiThreadContextCurrentemakeBackgroundThreadContextCurrentforam substituídas porrunUiThreadGlCommandserunBackgroundThreadGlCommands, que aceitamRunnable. Essas funções só são necessárias se você precisa fazer chamadas de GL fora da renderização,runBackgroundThreadGlCommandseonUiThreadGlSurfaceCreated. Isso é necessário porque pode haver vários GlesRenderers, cada um com os próprios contextos no mesmo processo, possivelmente de diferentes mostradores do relógio. Além disso, o acesso ao contexto GL compartilhado atual agora é sincronizado (I04d59). - Adicionamos
CanvasRenderer.uiThreadInit, que é chamado uma vez no UiThread antes de qualquer chamada para renderizar. Além disso, para maior clareza na GlesRenderer, renomeamosonGlContextCreatedcomoonBackgroundThreadGlContextCreatedeonGlSurfaceCreatedcomoonUiThreadGlSurfaceCreated(If86d0). - Os
HeadlessWatchFaceClienteInteractiveWatchFaceClientgetComplicationsSlotStateforam renomeados comogetComplicationSlotsState. EmComplicationSlot:createRoundRectComplicationBuilder,createBackgroundComplicationBuilderecreateEdgeComplicationBuilderforam renomeados comocreateRoundRectComplicationSlotBuilder,createBackgroundComplicationSlotBuilderecreateEdgeComplicationSlotBuilder, respectivamente (Ib9adc). - Adição de onRendererCreated ao CanvasComplication, facilitando o compartilhamento de estado entre Renderer e CanvasComplication (I5e1ac).
Versão 1.0.0-alpha16
16 de junho de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha16. A versão 1.0.0-alpha16 contém estas confirmações.
Novos recursos
- Corrigimos diversos bugs relacionados às mudanças recentes no modelo de encadeamento e cuidamos de outros problemas com o editor de mostrador do relógio.
Correções de bugs
- Prevenção do NPE em
onComplicationProviderChooserResult(b/189594557) - Correção de problemas com superfícies desatualizadas e drawBlack (b/189452267).
- Correção de disputa ao acessar
complicationsManager.watchState(b/189457893). - Correção de bug em ciclo de vida da linha de execução em segundo plano (b/189445428).
- Correção de problemas no editor de mostrador do relógio de versões anteriores (b/189126313).
- Parâmetros de inicialização direta não são atualizados para mudanças de estilo do editor (b/187177307).
Versão 1.0.0-alpha15
2 de junho de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha15. A versão 1.0.0-alpha15 contém estas confirmações.
Novos recursos
A maior parte da inicialização do mostrador do relógio é feita em uma linha de execução em segundo plano. No entanto, após o carregamento de toda a renderização do mostrador, o restante ocorre na UiThread. Há uma barreira de memória entre o carregamento e a renderização, então a maioria dos mostradores de relógio do usuário não precisa fazer nada de especial. Os mostradores que usam o GLES podem ser uma exceção, uma vez que o contexto é específico da linha de execução e que criamos dois contextos vinculados. Então, é possível fazer upload de recursos do GL (por exemplo, texturas e sombreadores) na linha de execução em segundo plano e usá-los na UiThread.
Dividimos a construção de mostradores de relógio em três funções: createUserStyleSchema, createComplicationsManager e createWatchFace. Presumimos que a createUserStyleSchema e a createComplicationsManager são rápidas e que a createWatchFace pode levar algum tempo para carregar os recursos. Aproveitando isso, introduzimos WatchFaceControlClient.getDefaultProviderPoliciesAndType, que retorna um mapa de IDs de complicação para DefaultComplicationProviderPolicies e o ComplicationType padrão. Isso é mais rápido do que criar uma instância headless, porque não é necessário inicializar o mostrador do relógio completamente para realizar a consulta.
Por fim, as complicações agora são construídas com uma CanvasComplicationFactory, que permite a construção lenta dos renderizadores de CanvasComplication.
Mudanças na API
- A
@TargetApifoi substituída pela@RequiresApi(I0184a, b/187447093, b/187447094). - Introduzimos
WatchFaceControlClient.getDefaultProviderPoliciesAndType, que retorna um mapa de IDs de complicação para DefaultComplicationProviderPolicies e o ComplicationType padrão. Sempre que possível, um caminho rápido é usado para evitar que o mostrador do relógio seja totalmente construído. Para facilitar esse processo, a API WatchFaceService precisou mudar com dois novos métodos: createUserStyleSchema e createComplicationsManager, cujos resultados são transmitidos para createWatchFace. Além disso, as complicações agora são construídas com uma CanvasComplicationFactory, que permite a construção lenta dos renderizadores da CanvasComplication (Iad6c1). - Removemos Most_RECENT_APP de SystemProviders (I3df00).
- ObservableWatchData agora é uma classe selada (Ic940d).
- CanvasComplicationFactory.create, que normalmente é limitado por E/S, agora é chamado em uma linha de execução em segundo plano para cada complicação antes da renderização da linha de execução de IU ser iniciada. Há uma barreira de memória entre a construção e a renderização, então não são necessários primitivos de linhas de execução especiais (Ia18f2)
- A construção do mostrador do relógio agora é feita em uma linha de execução em segundo plano, embora toda a renderização seja feita na linha de execução de IU. Para fazer isso, o GlesRenderer oferece suporte a dois contextos vinculados. WatchFaceControlClient.createHeadlessWatchFaceClient e WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient podem ser resolvidas antes de WatchFaceService.createWatchFace ser concluída. As chamadas de API subsequentes serão bloqueadas até que a inicialização do mostrador do relógio seja concluída (Id9f41).
- EXPANSION_DP e STROKE_WIDTH_DP não estão mais visíveis no api.txt (I54801).
- Fizemos EditorSession.createOnWatchEditSession gerar uma TimeoutCancelException caso haja um erro em vez de enviar uma sessão nula. Além disso, o valor de retorno de EditorRequest.createFromIntent e EditorSession.createOnWatchEditingSession agora é NonNull (I41eb4).
Versão 1.0.0-alpha14
18 de maio de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha14. A versão 1.0.0-alpha14 contém estas confirmações.
Novos recursos
EditorSession.openComplicationProviderChooseragora retorna ChosenComplicationProvider, que contém o ID de complicaçãoComplicationProviderInfoe um pacote com outros extras retornados pelo seletor de provedores.- Além disso, migramos constantemente códigos para o Kotlin, e a maior parte da API do mostrador do relógio agora está definida no Kotlin.
Mudanças na API
- As propriedades
eglContexteeglDisplaydo GlesRenderer agora não são anuláveis. Os erros de GL agora são relatados pelaGlesRenderer.GlesExceptionem vez das RuntimeExceptions (Ib1005). - Migramos o
androidx.wear.watchface.complications.rendering.ComplicationDrawabledo Java para o Kotlin (Ibc3eb). - Migramos o
androidx.wear.watchface.complications.rendering.ComplicationStyledo Java para o Kotlin (I3375e). - Adicionamos informações sobre o provedor de complementos para cada complemento na EditorSession (I37f14).
- Estendemos o resultado do
EditorSession.openComplicationProviderChooserpara que inclua as informações retornadas pelo provedor escolhido (Iead6d).
Wear Complications e Watchface: versão 1.0.0-alpha13
5 de maio de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha13. A versão 1.0.0-alpha13 contém estas confirmações.
Novos recursos
Os mostradores do relógio podem ter elementos visuais importantes além de mostrar a hora e as complicações. Para oferecer suporte a leitores de tela para isso, o mostrador do relógio agora pode especificar ContentDescriptionLabels de acessibilidade usando a propriedade additionalContentDescriptionLabels do renderizador. Além disso, para controlar a ordem de ContentDescriptionLabels, o accessibilityTraversalIndex foi adicionado às complicações. Isso pode ser modificado por uma ComplicationsUserStyleSetting
Para incentivar os desenvolvedores a considerar cuidadosamente os leitores de tela, tornamos obrigatória a transmissão do campo
contentDescriptiondoShortTextComplicationData.Builder, doLongTextComplicationData.Buildere doRangedValueComplicationData.Builderpara os respectivos construtores. Se oComplicationText.EMPTYfor transmitido para o campocontentDescription, umacontentDescriptionserá gerada automaticamente a partir do texto e do título.O
WatchFaceControlClient.getOrCreateInteractiveWatchFaceClientagora gerará umaServiceStartFailureExceptionse o mostrador do relógio gerar uma exceção durante a inicialização. Isso facilita o diagnóstico de problemas durante a inicialização do mostrador do relógio.
Mudanças na API
- Adicionamos suporte para ter um nome de componente nulo em ComplicationProviderInfo, o que é necessário para compatibilidade com versões mais antigas do Wear OS (I744d2).
- Migramos
androidx.wear.complications.SystemProvidersdo Java para o Kotlin (Ia1f8b). - Ocultamos todas as classes da API pública que estão em android.support.wearable.complications e criamos wrappers correspondentes no AndroidX, quando necessário (I7bd50).
- Renomeamos o método em
TimeDifferenceComplicationText.BuilderdesetMinimumUnitparasetMinimalTimeUnit(I20c64). - É obrigatório que o campo
contentDescriptiondoShortTextComplicationData.Builder, doLongTextComplicationData.Buildere doRangedValueComplicationData.Builderseja transmitido no construtor (I8cb69). - Renomeamos ComplicationProviderService.onComplicationUpdate como onComplicationRequest e encapsulamos o código e o parâmetro de tipo desse método na ComplicationRequest de dados. O listener correspondente foi renomeado como ComplicationRequestListener e o método dele como ComplicationRequestListener.onComplicationData (Iaf146).
- Removemos o método
isActiveAtdoComplicationDatae expusemos o campovalidTimeRange. É possível substituir essa chamada de método porvalidTimeRange.contains(I65936). - Mudamos a descrição do método ComplicationProviderService.onComplicationActivated para receber um ComplicationType em vez de um int (Idb5ff).
- Migração do ProviderUpdateRequester do Java para o Kotlin (Ibce13).
- O GlesRender.makeContextCurrent agora é público. O código do mostrador do relógio pode precisar fazer chamadas gl fora de render e onGlContextCreated e, como pode haver um contexto interativo e um headless, é necessário chamar isso (I8a43c).
- O WatchFaceControlClient.getOrCreateInteractiveWatchFaceClient agora gerará uma ServiceStartFailureException se o mostrador do relógio for gerado durante a inicialização. Além disso, o WatchFaceService agora gera uma exceção quando o createWatchFace demora mais de seis segundos (I59b2f).
- Removemos a propriedade do código não utilizado da
GlesTextureComplication(I28958). - O mostrador do relógio agora pode especificar ContentDescriptionLabels de acessibilidade usando a propriedade additionalContentDescriptionLabels do
Renderer. Além disso, para controlar a ordem de ContentDescriptionLabels, o accessibilityTraversalIndex foi adicionado às complicações. Isso pode ser modificado por uma ComplicationsUserStyleSetting (Ib7362). - A documentação sobre o processamento de eventos de toque no mostrador do relógio foi expandida (Iaf31e).
Correções de bugs
- O
EditorSession.getComplicationsPreviewData()agora retorna um mapa para todas as complicações não vazias. Uma instância de EmptyComplicationData é usada para complicações vazias (I1ef7e).
Wear Complications e Watchface versão 1.0.0-alpha12
21 de abril de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha12. A versão 1.0.0-alpha12 contém estas confirmações.
Novos recursos
Os editores de mostradores de relógio precisam destacar partes do mostrador para ajudar a controlar que aspecto do relógio está sendo configurado. Estendemos o RenderParameters para permitir que os estilos e as complicações sejam destacados. Há uma nova HighlightLayer opcional que tem como objetivo ser opaca em cima do mostrador do relógio com transparência alfa (as APIs de captura de tela podem fazer isso, ou você pode fornecer a HighlightLayer por conta própria para obter a máxima flexibilidade). Por exemplo, se você tiver um estilo que permita configurar a aparência dos ponteiros do relógio, o renderizador na renderHighlightLayer poderá desenhar um contorno em volta deles.
Para estimular o suporte ao Complication Provider para acessibilidade, tornamos o campo contentDescription do PhotoImageComplicationData.Builder, do MonochromaticImageComplicationData.Builder e do SmallImageComplicationData.Builder para que sejam um argumento de construtor obrigatório. ComplicationTapFilter e Complication.createEdgeComplicationBuilder foram adicionados para oferecer suporte às complementos da borda (desenhadas ao redor da borda da tela). A renderização e o teste de hit das complicações da borda são deixados para o mostrador do relógio. O teste de hit da borda não tem suporte do editor complementar.
Mudanças na API
- O prefixo
PROVIDER_foi adicionado às constantes em SystemProviders (I1e773). - É obrigatório que o campo
contentDescriptiondoPhotoImageComplicationData.Builder, doMonochromaticImageComplicationData.Buildere doSmallImageComplicationData.Builderseja transmitido no construtor (I9643a). ProviderInfoRetriever.requestPreviewComplicationDatafoi renomeado comoretrievePreviewComplicationData(I911ee).ComplicationProviderServicefoi migrado de Java para Kotlin (I849f2).- O método
ComplicationProviderService.onBindagora é final (I39af5). - Restabelecemos a interface
CanvasComplicatione movemosCanvasComplicaitonDrawable,GlesTextureComplicationeComplicationHighlightRendererparawear-watchface-complications-rendering(I84670). RenderParametersfoi refatorado para dar suporte à renderização de destaque estendida. Agora é possível solicitar a renderização de destaques para estilos de uma única complicação ou de todas. Além disso, o CanvasRenderer e o GlesRenderer têm um novo método abstrato renderHighlightLayer para renderizar qualquer destaque solicitado pelo editor. A camada foi renomeada para WatchFaceLayer (Ic2444).ComplicationTapFiltereComplication.createEdgeComplicationBuilderforam adicionados para dar suporte às complicações da borda. A renderização e o teste de hit das complicações da borda são deixados para o mostrador do relógio. Os editores internos não oferecem suporte a testes de hit (Ia6604).- Para
DoubleRangeUserStyleSettingeLongRangeUserStyleSetting:defaultValue,maximumValueeminimumValueagora são propriedades do Kotlin. Além disso, funçõesUserStyleSetting.Optioncomo toBooleanOption, toCoplicationOptions, toListOption e similares foram removidas (I52899). - Adicione o tamanho do queixo às propriedades do dispositivo disponível para o mostrador do relógio (I76e1e).
- O construtor do
ComplicationHighlightRendereragora aceita parâmetrosoutlineExpansioneoutlineStrokeWidth(I87009). ComplicationDrawable.getNoDataTextagora faz parte da API pública (I00598).
Versão 1.0.0-alpha11
7 de abril de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha11. A versão 1.0.0-alpha11 contém estas confirmações.
Novos recursos
- Mais ajustes foram aplicados às APIs de mostrador do relógio. A maioria das mudanças é de renomeações simples, mas
InteractiveWatchFaceWcsClienteInteractiveWatchFaceSysUiClientforam mescladas emInteractiveWatchFaceClient.
Mudanças na API
- ContentDescriptionLabel.text agora é uma ComplicationText em vez da antiga TimeDependentText da Biblioteca de Suporte de Wearables (I80c03).
- Não há garantias de que
SystemProviders.GOOGLE_PAYesteja em todos os dispositivos Android R, então ele foi removido da lista. Ainda é possível usar esse provedor com aDefaultComplicationProviderPolicy(If01b5). - Renomeação de ComplicationUpdateCallback como ComplicationUpdateListener para manter a consistência (I61ec7).
- O mapa no formato de conexão UserStyle mudou para
Map<String, byte[]>e, por conveniência, uma classeUserStyleDatafoi adicionada à API pública e agora é usada por wear-watchface-client e wear-watchface-editor. Além disso, CustomValueUserStyleSetting.CustomValueOption.value agora ébyte[]em vez deString(Iaa103). UserStyleSettingeUserStyleSetting.Optionagora usamUserStyleSetting.IdeUserStyleSetting.Option.Id, respectivamente, para armazenar os IDs em vez de uma string (I63f72).InteractiveWatchFaceClient.SystemStatefoi renomeado comoWatchUiState(I6a4e0).InteractiveWatchFaceWcsClienteInteractiveWatchFaceSysUiClientforam mescladas porque era difícil explicar a divisão de responsabilidade (Iff3fa).- Os valores de enumeração da camada foram renomeados para maior clareza.
Layer#TOP_LAYERagora éLayer#COMPLICATIONS_OVERLAY, eLayer#BASE_LAYERagora éLayer#BASE(Ia144e). - A interface
UserStyleListenerfoi renomeada comoUserStyleChangeListener(I18524). - A classe
UserStyleRepositoryfoi renomeada comoCurrentUserStyleRepository(I6ea53). InteractiveWatchFaceWcsClient.updateInstancefoi renomeada comoupdateWatchfaceInstance(I321dc).- Os eventos TapFace WatchType foram renomeados para se alinhar com MotionEvents / Compose (I0dfd0).
- takeWatchfaceScreenshot foi renomeado como renderWatchFaceToBitmap, e takeComplicationScreenshot foi renomeado como renderComplicationToBitmap (Ie0697).
- A interface CanvasComplication foi substituída pela classe aberta CanvasComplicationDrawable (I1f81f).
WatcfaceControlServiceFactoryfoi removida da API pública (I1f8d3).CanvasComplication.setDatafoi renomeada comoCanvasComplication.loadData(If1239).ComplicationsManager.bringAttentionToComplicationfoi renomeada comodisplayPressedAnimation(Ic4297).WatchFaceService.createWatchFaceagora tem uma anotação@UiThread(Ib54c2).- Mudança do nome de um parâmetro CanvasComplicationDrawable para corrigir um bug (I50dac).
- Adição de
HeadlessWatchFaceClient.toBundle()eHeadlessWatchFaceClient.createFromBundlepara oferecer suporte ao envio daHeadlessWatchFaceClientpor AIDL (I07c35). - Agora, HeadlessWatchFaceClient e InteractiveWatchFaceClient têm ClientDisconnectListener e isConnectionAlive() para você observar se a conexão foi interrompida por algum motivo. Por exemplo, o mostrador do relógio foi encerrado (Ie446d).
WatchFaceControlClient#getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsyncagora é uma função de suspensão e foi renomeada comogetOrCreateInteractiveWatchFaceClient(Ib745d).EditorState.commitChangesehasCommitChanges()foram renomeadas comoshouldCommitChanges()(I06e04).previewComplicationDatafoi renomeado comopreviewComplicationsDatapara indicar que (geralmente) há mais de uma complicação no mapa (I56c06).InteractiveWatchFaceWcsClient.bringAttentionToComplicationfoi renomeada comodisplayPressedAnimationpara consistência comComplicationsManager.displayPressedAnimation(Ic9999).- Todas as instâncias do ID de instância do mostrador do relógio foram encapsuladas em uma nova classe WatchFaceId (I45fdf).
- A propriedade
complicationStatefoi renomeada comocomplicationsStatepara indicar a pluralidade (Ided07). - Remoção de várias conversões wear-watchface-client Binder. Elas são desnecessárias (Icc4c0).
- Para consistência,
EditorServiceClientfoi refatorada para o uso de listeners em vez de observadores (Iec3a4). - Algumas anotações
@Pxausentes foram adicionadas emInteractiveWatchFaceSysUiClienteWatchFaceControlClient(I3277a). - Renomeação de EditorObserverCallback como EditorObserverListener para consistência (Ie572d).
- EditorState.watchFaceInstanceId foi restrito ao nível de API do Android R e mais recentes e não é mais anulável (Id52bb).
EditorSession.launchComplicationProviderChooserfoi renomeada comoopenComplicationProviderChooser(I9d441).EditorSession.createOnWatchEditingSessionAsyncfoi renomeada comocreateOnWatchEditingSessione agora é uma função de suspensão (Id257b).- Adição de várias anotações
@UiThreadausentes naEditorSession(I6935c). UserStyleSetting.affectsLayersfoi renomeado comoaffectedLayers(I6e22b).
Versão 1.0.0-alpha10
24 de março de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha10. A versão 1.0.0-alpha10 contém estas confirmações.
Novos recursos
- Agora é possível criar objetos gl abertos, por exemplo, texturas, durante WatchFaceService.createWatchFace, porque o GlesRenderer agora exige uma chamada explícita para initOpenGLContext, que pode ser feita dentro de createWatchFace.
Mudanças na API
IdAndComplicationDataera um pouco estranho e foi removido da API pública. As classes e interfaces que o usavam foram refatoradas (I4c928).- Substituímos
ReferenceTimeporCountUpTimeReferenceeCountDownTimeReference, que são mais autoexplicativos (Ib66c6). - Adição de algumas anotações
@Pxe@ColorIntausentes (I9bbc3). Complication.complicationConfigExtrasagora não é anulável e o padrão éBundle.EMPTY(Iad04f).- Agora,
GlesRendererexige que você chameinitOpenGLContextapós a construção. Essa função era um detalhe interno, mas agora está na API pública para autorizar chamadas GL mais cedo dentro do createWatchFace (I726c2). - Removemos
Complication.setRendererporque não é mais necessário (Ie992f). Complicaiton.setComplicationBoundsnão faz mais parte da API pública. Se você precisar ajustar a posição de uma complicação, useComplicationsUserStyleSetting(Ibd9e5).ComplicationsManager.TapCallback.onComplicationSingleTappedfoi renomeado comoonComplicationTapped(I3a55c).ComplicationOutlineRenderer.drawComplicationSelectOutlinefoi renomeado comodrawComplicationOutline(I14b88).
Versão 1.0.0-alpha09
10 de Março de 2021
Lançamento de androidx.wear:wear-complications-*:1.0.0-alpha09 e androidx.wear:wear-watchface-*:1.0.0-alpha09. A versão 1.0.0-alpha09 contém estas confirmações.
Novos recursos
- A interface entre o host WCS/SysUI e o mostrador do relógio evoluiu. Agora, um editor pode determinar se uma mudança de estilo ativará ou desativará uma complicação (enabled = initiallyEnabled, além de qualquer substituição de ComplicationsUserStyleSetting). O
EditorService.closeEditortambém permite que a SysUI feche remotamente o editor de mostrador do relógio, se necessário. - Além disso,
InteractiveWatchFaceWcsClient.setUserStyletem um comando mais eficienteupdateInstanceque altera o ID da instância, define o estilo e limpa as complicações de uma só vez.
Mudanças na API
- TraceEvents foram adicionados às bibliotecas de mostradores de relógio (I1a141).
ComplicationStateagora tem uma nova propriedadeinitiallyEnabledque é útil para prever as consequências da mudança de estilos (I8c905).- Substituímos
InteractiveWatchFaceWcsClient.setUserStylepor um comando mais eficienteupdateInstanceque altera o ID da instância, define o estilo e limpa as complicações (Ife6f6). - As APIs de captura de tela WatchFaceClient não compactam mais as capturas de tela porque esse processo era lento. Em vez disso, deixamos o pós-processamento para o autor da chamada (Id35af).
- Agora é possível fechar remotamente um editor de mostrador do relógio usando
EditorService.closeEditor(Ic5aa4). - Anotações de nulidade foram adicionadas (Ic16ed).
Versão 1.0.0-alpha08
24 de fevereiro de 2021
Lançamento do androidx.wear:wear-*:1.0.0-alpha08. A versão 1.0.0-alpha08 contém estas confirmações.
Novos recursos
- Alguns mostradores de relógio são projetados de acordo com uma ou mais complementos específicas. Para isso, adicionamos Complication.Builder#setFixedComplicationProvider, que, se definido como verdadeiro, impede que o usuário mude a complemento nesse slot.
- As bibliotecas do mostrador do relógio são o Kotlin e usam corrotinas (por exemplo, funções de suspensão). Para usuários de Java, fornecemos wrappers ListenableFuture para melhorar a interoperabilidade nas seguintes bibliotecas: wear/wear-watchface-guava, wear/wear-watchface-client-guava e wear/wear-watchface-editor-guava.
Mudanças na API
- Removemos o suporte a toques duplos em complicações iniciando o seletor de provedores. Esse recurso não era comum em mostradores de relógio e complicava a implementação do SysUI (I3ef24).
- Os métodos ProviderInfoRetriever podem gerar ServiceDisconnectedException se o vinculador fechar inesperadamente (Ib2cc4).
- No Android 11 e versões mais recentes, existem restrições sobre quando o ProviderChooser pode ser executado, além de que gostaríamos que os editores fossem criados com o novo
wear-watchface-editorpara que a ComplicationHelperActivity seja removida da API pública (Ib19c1). - Métodos estáticos de ComplicationText foram removidos em favor dos builders (Ibe399).
- Lançamos wrappers ListenableFuture para os métodos suspensos da biblioteca de mostradores de relógio (I16b2c).
- Para clareza da API, adicionamos um construtor secundário a RenderParameters que não precisa de tonalidade, para uso com LayerModes diferentes de
LayerMode.DRAW_OUTLINED(I497ea). - Anteriormente, ListUserStyleSetting era diferente do outro porque tinha um argumento padrão. Agora todos os construtores de subclasses StyleSetting assumem o valor padrão por último (I9dbfd).
- A CanvasComplication foi refatorada para uso com um método oculto, o que facilita a implementação de uma subclasse (I5b321).
- Refatoramos o EditorResult em favor de um novo EditorService e um
EditorSession.broadcastState()para transmitir atualizações a um observador (normalmente SysUI) (Ic4370). - Alguns mostradores de relógio são construídos em torno de uma complicação específica como parte integral do mostrador do relógio em que o provedor não pode ser configurado pelo usuário. Para oferecer suporte, adicionamos
Complication.Builder#setFixedComplicationProvider(I4509e). - EditorRequest agora especifica o nome do pacote em vez de ComponentName, porque era inconveniente para o SysUI procurar o nome da classe do editor, e só precisamos do nome do pacote (Ib6814).
Versão 1.0.0-alpha07
10 de fevereiro de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha07. A versão 1.0.0-alpha07 contém estas confirmações.
Novos recursos
- WatchFaceService.createWatchFace agora é uma função de suspensão, o que significa que o mostrador do relógio não precisa mais bloquear a linha de execução de IU enquanto espera por I/O. Semelhante a wear-watchface-editor e wear-complications-data
Mudanças na API
- Remoção da classe PhotoImage e uso direto de Icon (I8a70b).
- Exposição do validTimeRange de ComplicationData (I91366).
- Os atributos semelhantes a imagem agora são mais explícitos (I81700).
- Refatoração de wear-watchface-editor e wear-complications-data para usar funções de suspensão em vez de corrotinas. Wrappers de compatibilidade futuros e rx java serão lançados posteriormente (If3c5f).
- ProviderInfoRetriever agora gera uma PreviewNotAvailableException se requestPreviewComplicationData não puder retornar dados de visualização devido a problemas de conexão ou falta de suporte à API (I4964d).
- WatchFaceControlService::createWatchFaceControlClient agora é uma função de suspensão e getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient agora getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientAsync é chamado, retornando
Deferred<InteractiveWatchFaceWcsClient>. Wrappers de compatibilidade futuros e rx java serão lançados posteriormente (I5d461). CATEGORY_PROVIDER_CONFIG_ACTIONfoi renomeado comoCATEGORY_PROVIDER_CONFIG(I7c068).- Observe que createOnWatchEditingSession agora é uma função suspensa, porque o mostrador do relógio às vezes não estará disponível até o início da atividade do editor (Ida9aa).
- WatchFaceService.createWatchFace agora é uma função de suspensão que permite a inicialização assíncrona. Anteriormente, você teria que bloquear a linha de execução principal (If076a).
- UserStyle agora tem um operador de matriz e adicionamos assistentes de transmissão a UserStyle.Option (I35036).
- Corrigimos um bug de gerenciamento de wireformats UserStyle que alteravam parte da API oculta instável (I8be09).
- Adicionamos CustomValueUserStyleSetting, que permite armazenar uma única string específica de aplicativo em um UserStyle. Os editores de mostrador do relógio padrão ignoram esse valor (Ic04d2).
- InstanceID não é transmitido nos extras de intent para as versões R e mais antigas do Android WearOS que não podem fazer upgrade. Para oferecer suporte a elas, agora permitimos que o InstanceID seja nulo (Id8b78).
- EditorRequest agora inclui o ComponentName do editor, que é definido como o componente em WatchFaceEditorContract.createIntent (I3cd06).
- O EditorResult do mostrador do relógio agora inclui uma visualização de ComplicationData para permitir que o autor da chamada faça uma captura de tela do mostrador após a edição (I2c561).
Correções de bugs
- Adição de substituições toString() para UserStyle, UserStyleSetting e UserStyleSchema, que faz com que trabalhar com essas classes seja mais agradável (I9f5ec).
Versão 1.0.0-alpha06
27 de janeiro de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha06. A versão 1.0.0-alpha06 contém estas confirmações.
Novos recursos
- Lançamos uma nova biblioteca wear/wear-watchface-editor, que permite que os desenvolvedores de mostradores de relógio e, possivelmente, OEMs criem um editor de estilo e complicação. O SysUI enviará uma intent ao mostrador do relógio, que usará a nova classe EditorSession para acessar os detalhes do WatchFace e registrar o resultado por Activity.setWatchRequestResult. Para permitir isso, adicionamos ProviderInfoRetriever.requestPreviewComplicationData, que permite aos editores de mostradores de relógio solicitar a visualização ComplicationData. A vantagem da visualização ComplicationData é que, diferente dos dados em tempo real, você não precisa se preocupar em mostrar caixas de diálogo de permissão ao renderizar o editor. Observe que se um usuário selecionar um provedor com uma permissão, ele ainda vai receber uma solicitação para conceder a permissão.
Mudanças na API
- ComplicationProviderInfo agora tem um campo para o ComponentName do provedor. O suporte a esse campo será adicionado ao WearOS em breve e, enquanto isso, o campo será nulo (Id8fc4).
- Adicionamos ProviderInfoRetriever.requestPreviewComplicationData, que permite aos editores de mostradores do relógio solicitar a visualização ComplicationData. Isso é útil porque complicações em tempo real podem exigir permissões, e agora você pode exibir dados de visualização para complicações que não estão ativas (I2e1df).
- ComplicationManager agora é um parâmetro opcional do construtor WatchFace, e os argumentos foram reordenados para permitir isso (I66c76).
- Adicionamos um pacote opcional a Complications que, se definido, é mesclado com a intent enviada para iniciar a atividade do seletor de provedores (Ifd4ad).
- Adicionamos uma nova biblioteca
wear-watchface-editorpara suporte a mostradores de relógio e editores hospedados com SysUI. A SysUI iniciará esses editores enviando uma intent. O serviço de atividade do mostrador do relógio pode usar a nova classe EditorSession para acessar os detalhes do WatchFace e registrar o resultado usando Activity.setWatchRequestResult (I2110d). - LayerMode.DRAW_HIGHLIGHTED agora é chamado de LayerMode.DRAW_OUTLINED e RenderParameters.highlightComplicationId agora é chamado de RenderParameters.selectedComplicationId, que desenha um destaque na complicação especificada, além de um contorno (I90a40).
- O futuro do WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient agora poderá ser resolvido com uma ServiceStartFailureException se o serviço for desativado enquanto espera o mostrador do relógio ser criado (I0f509).
- EditorSession.complicationPreviewData agora é um ListenableFuture porque a busca desses dados é um processo assíncrono (Iead9d).
Correções de bugs
- Estamos removendo campos que não são usados de ComplicationOverlay, deixando ativos e complicationBounds (I17b71).
Versão 1.0.0-alpha05
13 de janeiro de 2021
Lançamento de androidx.wear:wear-*:1.0.0-alpha05. A versão 1.0.0-alpha05 contém estas confirmações.
Novos recursos
Mostradores de relógio geralmente são compatíveis com diversas configurações de complemento com um número variável de complementos mostrado. Para facilitar a configuração, agora oferecemos suporte a complicações inicialmente desativadas ao chamar setEnabled(false) no builder. É possível ativá-las mais tarde com ComplicationsUserStyleSetting.
Mudanças na API
- ComplicationHelperActivity agora aceita
Collection<ComplicationType>em vez de uma matriz int, facilitando o uso (I1f13d). ProviderInfoRetriever.retrieveProviderInfoagora retornaListenableFuture<ProviderInfo[]>corretamente (If2710).- Agora é possível criar uma complicação inicialmente desativada chamando setEnabled(false) no builder (Idaa53).
- WatchFaceState agora tem uma propriedade isHeadless que só é verdadeira para instâncias headless (Ifa900).
- ComplicationDrawable agora é compatível com o carregamento síncrono de drawables. Isso é usado pelas APIs de captura de tela (I34d4a).
Versão 1.0.0-alpha04
16 de dezembro de 2020
Lançamento de androidx.wear:wear-*:1.0.0-alpha04. A versão 1.0.0-alpha04 contém estas confirmações.
Novos recursos
- A biblioteca de mostradores do relógio do Wear agora oferece suporte à configuração de limites por tipo. Por exemplo, você pode alternar para uma caixa delimitadora ampla para ComplicationType.LONG_TEXT enquanto usa uma caixa delimitadora menor para outros tipos.
Mudanças na API
- As complementos agora usam ComplicationBounds, que agrupa um
Map<ComplicationType, RectF>para oferecer suporte por tamanhos de tipos de complemento (I1ebe7). - RenderParameters agora permite especificar a tonalidade do destaque para uso em capturas de tela (Iff42b).
- Com exceção dos limites, agora é preciso usar ComplicationsUserStyleSetting para modificar as complicações. Isso serve para garantir a sincronização do SO (I8dc5d).
- O Renderer agora é uma classe selada. Isso significa que o CanvasRenderer e o GlesRenderer agora são classes internas do Renderer (Iab5d4, b/173803230).
- Renomeação de CanvasComplicationDrawable.drawHighlight para drawOutline. ObservableWatchData agora tem algumas anotações UiThread ausentes. ScreenState foi totalmente removido do WatchState (If1393).
- O nível mínimo de API para o mostrador do relógio agora é 25. O suporte à tela de hardware exige o nível de API 26 ou mais recente (Ic9bbd).
- InteractiveWatchFaceWcsClient agora tem um auxiliar getComplicationIdAt (I05811).
- O nível de API para wear-watchface-client foi reduzido para 25. No entanto, as APIs de captura de tela exigem o nível 27 (Id31c2).
Correções de bugs
- Agora expomos o ComplicationType atual da ComplicationData da complicação em ComplicationState (I9b390).
- InteractiveWatchFaceWcs agora tem um método `bringAttentionToComplication para destacar brevemente a complicação especificada (I6d31c).
InteractiveWatchFaceWcsClient#setUserStyleagora tem uma sobrecarga que aceita Map, o que pode evitar mais uma ida e volta na IPC necessária para construir UserStyle (I24eec).
Versão 1.0.0-alpha03
2 de dezembro de 2020
Lançamento de androidx.wear:wear-*:1.0.0-alpha03. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
A classe Complication agora tem uma propriedade compicationData, permitindo que mostradores de relógio observem mudanças em ComplicationData. Isso permite mudar as dimensões da complicação com base no tipo dela.
Agora, os frame rates variáveis são compatíveis com a atribuição ao Renderer.interactiveDrawModeUpdateDelayMillis. Para mostradores de relógio que executam animações curtas a cada segundo, isso pode gerar uma boa economia de energia no modo suspenso, quando eles não estiverem com animações.
Mudanças na API
BACKGROUND_IMAGEfoi renomeado comoPHOTO_IMAGEde acordo com as classes relacionadas. Esse tipo de complicação não é usado exclusivamente em segundo plano. Por isso, o nome foi mudado (I995c6).- DefaultComplicationProviderPolicy anotado corretamente com IntDefs (I3b431).
- A classe oculta TimeDependentText não é mais exposta por ContentDescriptionLabel. Em vez disso, adicionamos um acessador para receber o texto em um horário especificado (Ica692).
- O construtor do ObservableWatchData agora é interno (I30121, b/173802666).
- Complication agora tem ComplicationData, permitindo que mostradores de relógio observem mudanças em ComplicationData. Complication também tem uma nova chamada isActiveAt, que pode ser usada para saber se algo precisa ser renderizado na data e hora informadas (Ic0e2a).
- O
SharedMemoryImagevazio não está mais na API pública (I7ee17). WatchFace.overridePreviewReferenceTimeMillisagora tem uma anotação IntRange, e o getter e o setter têm nomes consistentes (Ia5f78).Complication.Builderagora é criado viaComplication.createRoundRectComplicationBuilderouComplication.createBackgroundComplicationBuilderpara maior clareza (I54063).- Foi adicionado um WatchFace.TapListener, que permite que toques não consumidos por complicações sejam observados pelo WatchFace (Ic2fe1, b/172721168).
- O WatchFace agora é compatível com frame rates variáveis atribuindo a
Renderer.interactiveDrawModeUpdateDelayMillis. Isso pode ajudar a preservar a duração da bateria no modo suspenso, quando não houver animações (I707c9). - WatchFace.Builder não é mais necessário, e invalid() e interactiveUpdateRateMillis foram movidos para o Renderer (I329ea).
- Para melhoria na interoperabilidade do Java, os getters foram renomeados para propriedades booleanas no WatchState (I6d2f1).
- Renomeação de TapListener como TapCallback e InvalidateCallback como InvalidateListener para consistência (I9414e).
- As opções de estilo do mostrador do relógio do Wear 2.0 foram movidas para a própria classe, para maior clareza. Os setters WatchFace.Builder agora têm getters simétricos da classe WatchFace (Iefdfc).
- Adição de InteractiveWatchFaceWcsClient e
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClient, que recebem uma instância existente ou a criam assim que o serviço de plano de fundo se conecta e produz o mecanismo (Id666e). - WatchFaceControlClient agora é uma interface para permitir a simulação de testes (I875d9).
- HeadlessWatchFaceClient, InteractiveWatchFaceSysUiClientImpl e InteractiveWatchFaceWcsClient agora são interfaces para facilitar os testes (I7cdc3).
- Adição de anotações aos métodos em
wear-watchface-complications-rendering(I0d65c).
Correções de bugs
- Remoção do formato de tela do DeviceConfig, que estava duplicando
android.content.res.Configuration#isScreenRound()(Ifadf4). - Mudança de
WatchFaceControlClient.getOrCreateWallpaperServiceBackedInteractiveWatchFaceWcsClientpara aceitar umMap<String, String>em vez deUserStyle, porque é difícil criar umUserStylesem conhecer o esquema, que só é possível receber depois que o cliente é criado (Iea02a). - Correção de
InteractiveWatchFaceWcsClientpara usarComplicationStateem vez do formato de condutor (Icb8a4). UserStyleSettingsagora é uma classe selada porque os editores de mostradores de relógio só entendem as classes integradas (I2d797).
Versão 1.0.0-alpha02
11 de novembro de 2020
androidx.wear:wear-*:1.0.0-alpha02 é lançado. A versão 1.0.0-alpha02 contém estas confirmações.
Mudanças na API
- O
ComplicationDetailsagora é chamado deComplicationStatee está adequadamente encapsulado. Os usos do suporte de wearable com@ComplicationData.ComplicationTypeforam migrados para oComplicationTypedo androidx (I4dd36). - Adição de um parâmetro
highlightedComplicationIdopcional a RenderParameters, que permite solicitar o destaque de uma única complicação nas capturas de tela (I66ce9). - O
ComplicationProviderServiceusará a nova API de complicação de estilo para consistência (Id5aea). getPreviewReferenceTimeMillisagora recebe tempos de referência deDeviceConfig(I779fe).- Simplificação da plataforma da API Renderer. Agora, o
SurfaceHolder.Callbackpode ser usado para observar as mudanças (I210db). - O
CanvasComplicationRenderernão é uma extensão doRenderer. Renomeando para maior clareza (Ibe880).
Correções de bugs
- Primeira versão de
androidx.wear:wear-watchface-client(I1e35e). - Mudança do nome de
GlesTextureComplication#rendererpara maior clareza (Ibb78f7). - Renomeação de
StyleCategorycomoStyleSettingpara maior clareza (I488c7). - Adição de
UserStyleSchemapara uma API mais limpa (If36f8).
Versão 1.0.0-alpha01
28 de outubro de 2020
Lançamento de androidx.wear:wear-complications-*:1.0.0-alpha01 e androidx.wear:wear-watchface-*:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Mudanças na API
- Remoção de alguns itens que não pretendíamos expor na API pública (I41669).
- Criação da biblioteca
androidx.wear:wear-complications-provider(I77f1f). - ComplicationsUserStyleCategory é a nova categoria recomendada para configurar complicações (I96909).
- Adição da API wear-complication-data (I7c268).
- As funções com valores de retorno booleanos serão prefixadas com "is" em vez de "get" (If36ff).
- A recomendação da API é evitar o uso protegido, de modo que essa classe tenha sido refatorada para receber parâmetros pelo construtor (I61644).
- Renomeação de setBackgroundComplication para maior clareza (I96fe3).
- Uso de propriedades Kotlin para dados e isHighlighted do ComplicationDrawable (I4dcc8).
- Em vez de ComplicationRenderer.InvalidateCallback, adicionamos Complication#invalidate() (I4f4c6).
- Essas APIs estão sendo descontinuadas em WearableSupport e vão ser removidas aqui (Ib425c).
- Alguns métodos do builder WatchFace foram renomeados para enfatizar a natureza de legado do Wear 2.0 (Idb775).
- Primeira candidata de API Beta para wear/wear-watchface (Id3981).
- Primeira versão rastreada da API (Ie9fe6).
- ComplicationDrawable.BorderStyle IntDef foi adequadamente ocultado e movido para ComplicationStyle para consistência (I27f7a).
- Adição de anotações ausentes para métodos ComplicationStyle (I838fd).
- Esta biblioteca não tem plataforma de API pública (I88e2b).
- Todas as classes Option de categoria de estilo agora são adequadamente finais (Ib8323).
- Primeira versão rastreada da API (I27c85).
Correções de bugs
- Mudança de ComplicationProviderService para ter um método getComplicationPreviewData explícito (I4905f).
- A verificação de lint da API para MissingGetterMatchingBuilder está ativada para androidx (I4bbea, b/138602561).
- Renomeação de wear-complications-rendering (Ifea02).
- Os nomes de exibição da categoria de estilo agora são CharSequences (I28990).
- Troca de "Substituir" por "Sobrepor" para corresponder às convenções de nomenclatura de temas e estilos atuais (I4fde9).
- Renomeação de UserStyle#getOptions para maior clareza (I695b6).
Versão 1.2.0
Versão 1.2.0
15 de setembro de 2021
Lançamento de androidx.wear:wear:1.2.0. A versão 1.2.0 contém estas confirmações.
Mudanças importantes desde a 1.1.0
Adição do componente CurvedText para facilitar a escrita seguindo a curvatura do maior círculo que pode ser inscrito na visualização. Um exemplo de uso:
<androidx.wear.widget.CurvedText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="example curved text" app:anchorAngleDegrees="180" app:anchorPosition="center" app:clockwise="false" style="@android:style/TextAppearance.Large" />
Adição do contêiner ArcLayout para definir o layout dos elementos filhos, um por um, em um arco no sentido horário ou anti-horário. Os filhos podem ser widgets Android padrão ou widgets "curvos" que implementam a interface
ArcLayout.Widget(I536da). Um exemplo de uso:<androidx.wear.widget.ArcLayout android:layout_width="match_parent" android:layout_height="match_parent" app:anchorPosition="center"> <ImageView android:layout_width="20dp" android:layout_height="20dp" android:src="@drawable/ic_launcher" /> <androidx.wear.widget.CurvedText android:layout_width="match_parent" android:layout_height="match_parent" android:text="Curved Text" style="@android:style/TextAppearance.Small" android:padding="2dp" /> </androidx.wear.widget.WearArcLayout>
Adição de um novo contêiner de layout DismissibleFrameLayout, que lida com o botão "Voltar" para dispensar e/ou deslizar para dispensar, destinado para uso em uma atividade. Pelo menos um listener precisa ser adicionado para atuar em uma ação de dispensa. Um listener geralmente remove uma visualização ou um fragmento da atividade atual. setSwipeDismissable(boolean) e setBackButtonDismissable(boolean) são fornecidos para controle direto sobre os recursos. Esse novo layout é destinado a substituir o SwipeDismissFrameLayout existente.
Foi adicionado suporte para indicar que uma Activity pode ser "retomada automaticamente" quando o dispositivo sair do modo ambiente na classe AmbientModeSupport. Essa funcionalidade estava disponível anteriormente na classe WearableActivity descontinuada da WearableSupportLibrary (I336ab).
Migração da classe WearableCalendarContract da Biblioteca de Suporte de Wearables. Essa API fornece um subconjunto dos dados disponibilizados pela classe CalendarContract, mas é automaticamente sincronizada com os dispositivos wearable (I6f2d7).
Adição de uma nova API
WearTypeHelperemandroidx.wear.utilspara determinar se o dispositivo Wear fornecido é da China (Ib01a9).Adição de recursos de acessibilidade a
androidx.wear.widget.ConfirmationOverlayque lerão as mensagens em voz alta se definido pela descrição da animação (I524dd).Correção do bug que causava a falha de ConfirmationActivity se nenhuma mensagem fosse fornecida (Ie6055).
O bug em que as RecyclerViews de rolagem horizontal faziam com que
WearableDrawerLayoutmostrasse todas as interações foi corrigido (I24c7f).
Versão 1.2.0-rc01
1º de setembro de 2021
androidx.wear:wear:1.2.0-rc01 é lançado sem mudanças desde a última versão Beta. A versão 1.2.0-rc01 contém estas confirmações.
Versão 1.2.0-beta01
18 de agosto de 2021
Lançamento de androidx.wear:wear:1.2.0-beta01. A versão 1.2.0-beta01 contém estas confirmações.
Correções de bugs
- Correção do bug que causava a falha de VerificationActivity se nenhuma mensagem fosse fornecida (Ie6055).
Versão 1.2.0-alpha13
4 de agosto de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha13. A versão 1.2.0-alpha13 contém estas confirmações.
Mudanças na API
- Renomeação de
WearTypeHelper.isChinaDevicecomoWearTypeHelper.isChinaBuild(I47302).
Correções de bugs
- Adicionamos recursos de acessibilidade a
androidx.wear.widget.ConfirmationOverlayque, se definidos, lerão as mensagens e a descrição da animação (I524dd).
Versão 1.2.0-alpha12
21 de julho de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha12. A versão 1.2.0-alpha12 contém estas confirmações.
Mudanças na API
- Adicionamos uma nova API
WearTypeHelperemandroidx.wear.utilspara determinar se o dispositivo Wear fornecido é da China (Ib01a9).
Versão 1.2.0-alpha11
30 de junho de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha11. A versão 1.2.0-alpha11 contém estas confirmações.
Correções de bugs
- O bug em que as RecyclerViews de rolagem horizontal faziam com que
WearableDrawerLayoutmostrasse todas as interações foi corrigido (I24c7f).
Versão 1.2.0-alpha10
2 de junho de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha10. A versão 1.2.0-alpha10 contém estas confirmações.
Novos recursos
- A versão alpha10 aprimora o suporte à acessibilidade em texto curvo e em ArcLayouts. Ela também adiciona algumas pequenas renomeações no DismissibleFrameLayout para ajudar a esclarecer a API.
Mudanças na API
- Renomeamos os seguintes métodos no
DismissibleFrameLayout(Ib195e):Callback#onDismissed->Callback#onDismissedFinishedisSwipeDismissible->isDismissableBySwipeisBackButtonDismissible->isDismissableByBackButton
- Os seguintes métodos foram definidos como finais (Ib195e):
setBackButtonDismissiblesetSwipeDismissibleregisterCallbackunregisterCallback
Correções de bugs
- Usa o conteúdo de CurvedTextView no Talkback (I05798).
- Melhor acessibilidade para visualizações normais em um ArcLayout (I4418d).
Versão 1.2.0-alpha09
18 de maio de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha09. A versão 1.2.0-alpha09 contém estas confirmações.
Mudanças na API
- Foi acrescentada uma nova função
CurvedTextView.setTypeface()(semelhante àTextView) para definir a fonte do texto e o estilo negrito/itálico (I4653c). - O
WearArcLayoutfoi renomeado comoArcLayout, oWearCurvedTextcomoCurvedTexte oWearArcLayout.ArcLayoutWidgetcomoArcLayout.Widget(I6e5ce).- No
ArcLayout.Widget, ogetThicknessPxfoi renomeado comogetThickness. - As constantes de alinhamento vertical no
ArcLayout.LayoutParamsagora são nomeadas começando comVERTICAL_ALIGN_(em vez deVALIGN_, como antes).
- No
- Na
CurvedTextView, os métodossetMinSweepDegreesesetMaxSweepDegreesforam substituídos pelosetSweepRangeDegrees(I7a9d9).
Versão 1.2.0-alpha08
5 de maio de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha08. A versão 1.2.0-alpha08 contém estas confirmações.
Mudanças na API
- Para melhorar a clareza do código, adicionamos anotações
@FloatRangea alguns parâmetros angulares e tipos de retorno. (I430dd) - Na interface
WearArcLayout.ArcLayoutWidget, o métodoinsideClickAreaagora é chamado de isPointInsideClickArea. (Ia7307)
Versão 1.2.0-alpha07
24 de março de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha07. A versão 1.2.0-alpha07 contém estas confirmações.
Correções de bugs
- Correção de erros com filhos não curvados dentro do WearArcLayout causados pelo uso do tamanho da tela com altura maior que largura. Agora, esses filhos não curvados são posicionados corretamente dentro de um arco em todos os tipos de tela.
Versão 1.2.0-alpha06
27 de janeiro de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha06. A versão 1.2.0-alpha06 contém estas confirmações.
Mudanças na API
- Migração da biblioteca Ongoing Activities para uma nova sub-biblioteca: wear-ongoing. As classes agora ficam no pacote androidx.wear.ongoing (antes chamado de androidx.wear.ongoingactivities) (I7c029).
- Migração da classe WearableCalendarContract da Biblioteca de Suporte de Wearables para AndroidX. Essa API fornece um subconjunto dos dados disponibilizados pela classe CalendarContract, mas é automaticamente sincronizada com os dispositivos wearable (I6f2d7).
Correções de bugs
- Desativação, por padrão, do recurso de dispensar do botão "Voltar" no Dismissible FrameLayout, já que o recurso de deslizar para dispensar continua sendo a principal maneira de voltar para uma tela cheia em dispositivos wearable (Ic24e3).
- Correção de alguns problemas no processamento da visibilidade de filhos no WearArcLayout (Icf912).
Versão 1.2.0-alpha05
13 de janeiro de 2021
Lançamento de androidx.wear:wear:1.2.0-alpha05. A versão 1.2.0-alpha05 contém estas confirmações.
Correções de bugs
- Atualização do javadoc da classe AmbientModeSupport para fornecer snippets de exemplo que mostram melhor o uso geral dessa classe.
Versão 1.2.0-alpha04
16 de dezembro de 2020
Lançamento de androidx.wear:wear:1.2.0-alpha04. A versão 1.2.0-alpha04 contém estas confirmações.
Mudanças na API
- Foi adicionado suporte para indicar que uma Activity pode ser "retomada automaticamente" quando o dispositivo sair do modo ambiente na classe AmbientModeSupport. Essa funcionalidade estava disponível anteriormente na classe WearableActivity descontinuada da WearableSupportLibrary (I336ab).
- OngoingActivity
- Agora, a categoria pode ser definida ao criar uma OngoingActivity, por exemplo,
OngoingActivitiy.Builder.getCategory(String). - OngoingActivityData agora tem um carimbo de data/hora de quando a OngoingActivity foi criada:
OngoingActivityData.getTimestamp() - (I91cb4).
- Agora, a categoria pode ser definida ao criar uma OngoingActivity, por exemplo,
- Foi adicionado suporte à definição de margens em filhos do WearArcLayout mudando os parâmetros de layout para estender MarginLayoutParams, ou seja, WearArcLayout.LayoutParams estende android.view.ViewGroup.MarginLayoutParams (I2cd88).
- Mudança no tipo de âncora do WearCurvedTextView padrão para
WearArcLayout.ANCHOR_CENTER(eraWearArcLayout.ANCHOR_START). Isso simplifica o contrato entre o layout do arco e o texto curvo, porque o texto curvo desenha-se por padrão centrado em X no topo e o layout do arco pai pode girar para onde ele precisar estar (I105ff).
Versão 1.2.0-alpha03
2 de dezembro de 2020
Lançamento de androidx.wear:wear:1.2.0-alpha03. A versão 1.2.0-alpha03 contém estas confirmações.
Novos recursos
Um novo contêiner de layout DismissableFrameLayout, que lida com o botão "Voltar" para dispensar e/ou deslizar para dispensar, para ser usado em uma atividade. Pelo menos um listener precisa ser adicionado para atuar em uma ação de dispensa. Um listener geralmente remove uma visualização ou um fragmento da atividade atual. setSwipeDismissable(boolean) e setBackButtonDismissable(boolean) são fornecidos para controle direto sobre os recursos. Esse novo layout é destinado a substituir o SwipeDismissFrameLayout existente.
Os widgets curvos agora processam eventos de toque. Os widgets normais de um WearArcLayout receberão todos os eventos de toque, mapeados para o próprio espaço de coordenadas. WearCurveTextView, dentro de um WearArcLayout ou não, pode definir gerenciadores onClick e onLongClick.
As classes de atividades contínuas agora são VersionedParcelables em vez de usar serialização/desserialização personalizada. O ícone estático e a intent de toque agora são necessários.
Mudanças na API
- O atributo "sweepDegrees" para WearCurvedTextView é separado em minSweepDegrees e maxSweepDegrees para fornecer um layout mais flexível desse widget.
Versão 1.2.0-alpha02
11 de novembro de 2020
Lançamento de androidx.wear:wear:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.
Esta versão adiciona uma nova API Ongoing Activities pela primeira vez. Os desenvolvedores podem usar essa API para sinalizar que uma atividade de longa duração está em andamento, como um exercício físico ou uma sessão de reprodução de mídia. Ela permite que os desenvolvedores forneçam atualizações de status periódicas, como "distância e tempo decorrido" ou "faixa em reprodução", para exibição no mostrador do relógio ou na tela de início. Essa funcionalidade é voltada a dispositivos futuros com a funcionalidade de atividade contínua ativada.
Mudanças na API
- Nova API para a Ongoing Activities, que é um ambiente autônomo em "dispositivos sem suporte" (I69a31).
Versão 1.2.0-alpha01
28 de outubro de 2020
Lançamento de androidx.wear:wear:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
Novos recursos
- Adição do componente WearCurvedTextView para facilitar a escrita seguindo a curvatura do maior círculo que pode ser inscrito na visualização. Um exemplo de uso:
<androidx.wear.widget.WearCurvedTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="example curved text"
app:anchorAngleDegrees="180"
app:anchorPosition="center"
app:clockwise="false"
style="@android:style/TextAppearance.Large"
/>

- Adição do contêiner WearArcLayout para definir o layout dos elementos filhos, um por um, em um arco no sentido horário ou anti-horário. Os filhos podem ser widgets Android padrão ou widgets "curvos" que implementam a interface ArcLayoutWidget. Um exemplo de uso:
<androidx.wear.widget.WearArcLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:anchorPosition="center">
<ImageView
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/ic_launcher"
/>
<androidx.wear.widget.WearCurvedTextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Curved Text"
style="@android:style/TextAppearance.Small"
android:padding="2dp"
/>
</androidx.wear.widget.WearArcLayout>

(I536da).
Wear-Input 1.2
Versão 1.2.0
10 de setembro de 2025
Lançamento de androidx.wear:wear-input:1.2.0 e androidx.wear:wear-input-testing:1.2.0. A versão 1.2.0 contém estes commits.
Mudanças importantes desde a versão 1.1.0:
- Exposição de constantes de localização de botões físicos.
- Adição de
WearableRemoteInputExtenderpara definir extras específicos do Wear emandroid.app.RemoteInput(por exemplo, ativar a entrada de emojis)
Versão 1.2.0-rc01
27 de agosto de 2025
Lançamento de androidx.wear:wear-input:1.2.0-rc01 e androidx.wear:wear-input-testing:1.2.0-rc01, sem mudanças desde a última versão Beta. A versão 1.2.0-rc01 contém estes commits.
Versão 1.2.0-beta01
30 de julho de 2025
Lançamento de androidx.wear:wear-input:1.2.0-beta01 e androidx.wear:wear-input-testing:1.2.0-beta01, sem mudanças importantes desde as últimas versões Alfa. A versão 1.2.0-beta01 contém estes commits.
Versão 1.2.0-alpha04
16 de julho de 2025
Lançamento de androidx.wear:wear-input:1.2.0-alpha04 e androidx.wear:wear-input-testing:1.2.0-alpha04. A versão 1.2.0-alpha04 contém estes commits.
Novos recursos
- Considere a rotação da tela ao calcular a localização dos botões físicos em relação a ela. (87a57e)
Mudanças na API
- Renomeie LOC* para LOCATION* em wear-input. (I5e879).
Correções de bugs
- Agora, essa biblioteca usa anotações de nulidade do JSpecify, que são de uso de tipo. Os desenvolvedores Kotlin precisam usar os seguintes argumentos do compilador para garantir o uso correto:
-Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(Icbfb9, b/326456246).
Versão 1.2.0-alpha02
29 de setembro de 2021
Lançamento de androidx.wear:wear-input:1.2.0-alpha02 e androidx.wear:wear-input-testing:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.
Mudanças na API
disallowEmojifoi renomeado comosetEmojisAllowedemWearableRemoteInputExtenderpara definir a opção de exibir emojis (I28393).
Versão 1.2.0-alpha01
15 de setembro de 2021
Lançamento de androidx.wear:wear-input:1.2.0-alpha01 e androidx.wear:wear-input-testing:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
Mudanças na API
- Exposição de todas as constantes de localização de botão da funcionalidade
WearableButtons(Ibb12c). - Adição da classe
WearableRemoteInputExtender, que pode ser usada para adicionar extras específicos do Wear para android.app.RemoteInput (I01903).
Wear-Input 1.1.0
Versão 1.1.0
18 de agosto de 2021
Lançamento de androidx.wear:wear-input:1.1.0 e androidx.wear:wear-input-testing:1.1.0. A versão 1.1.0 contém estas confirmações.
Mudanças importantes desde a versão 1.0.0
- A classe
RemoteInputIntentHelperfoi adicionada.- Ela pode ser usada para criar uma intent RemoteInput. Essa intent pode ser usada para solicitar entradas dos usuários em uma atividade personalizável.
Versão 1.1.0-rc01
4 de agosto de 2021
Lançamento de androidx.wear:wear-input:1.1.0-rc01 e androidx.wear:wear-input-testing:1.1.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.
Nenhuma mudança de API desde androidx.wear:wear-input:1.1.0-beta01 e androidx.wear:wear-input-testing:1.1.0-beta01
Versão 1.1.0-beta01
21 de julho de 2021
Lançamento de androidx.wear:wear-input:1.1.0-beta01 e androidx.wear:wear-input-testing:1.1.0-beta01, sem mudanças desde a 1.1.0-alpha03. A versão 1.1.0-beta01 contém estas confirmações.
Versão 1.1.0-alpha03
30 de junho de 2021
Lançamento de androidx.wear:wear-input:1.1.0-alpha03 e androidx.wear:wear-input-testing:1.1.0-alpha03. A versão 1.1.0-alpha03 contém estas confirmações.
Correções de bugs
- Correção do bug que fazia com que intents da RemoteInput, que tivessem
RemoteInputs adicionados a elas viaRemoteInputHelper.putRemoteInputsExtra, fossem rejeitadas.
Versão 1.1.0-alpha02
18 de maio de 2021
Lançamento de androidx.wear:wear-input:1.1.0-alpha02 e androidx.wear:wear-input-testing:1.1.0-alpha02. A versão 1.1.0-alpha02 contém estas confirmações.
Mudanças na API
- Os métodos do
RemoteInputIntentHelperusados para receber ou inserir extras que representam os rótulos de título, cancelamento, confirmação e em andamento agora usam aCharSequenceem vez daStringpara esses rótulos (I0e71f).
Versão 1.1.0-alpha01
27 de janeiro de 2021
Lançamento de androidx.wear:wear-input:1.1.0-alpha01 e androidx.wear:wear-input-testing:1.1.0-alpha01. A versão 1.1.0-alpha01 contém estas confirmações.
Mudanças na API
- Migração da classe RemoteInputIntent da Biblioteca de Suporte de Wearables para AndroidX. A classe migrada é renomeada como RemoteInputIntentHelper, que oferece funções auxiliares para dar suporte a entradas remotas ao iniciar uma intent (I47cee).
Wear-Input 1.0.0
Versão 1.0.0
2 de dezembro de 2020
Lançamento de androidx.wear:wear-input:1.0.0 e androidx.wear:wear-input-testing:1.0.0. A versão 1.0.0 contém estas confirmações.
Essa versão é idêntica a 1.0.0-rc01.
Principais recursos da versão 1.0.0
Migração da funcionalidade WearableButtons da Biblioteca de Suporte de Wearables para o Jetpack.
Adição de
androidx.wear.input.test.TestWearableButtonsProvider, que implementaandroidx.wear.input.WearableButtonsProviderpara ajudar aplicativos de teste desenvolvidos com a bibliotecaandroidx.wear:wear-input
Versão 1.0.0-rc01
11 de novembro de 2020
Lançamento de androidx.wear:wear-input:1.0.0-rc01 e androidx.wear:wear-input-testing:1.0.0-rc01. A versão 1.0.0-rc01 contém estas confirmações.
Essa versão é idêntica à 1.0.0-beta01.
Versão 1.0.0-beta01
28 de outubro de 2020
Lançamento de androidx.wear:wear-input:1.0.0-beta01 e androidx.wear:wear-input-testing:1.0.0-beta01, sem mudanças desde a 1.1.0-alpha01. A versão 1.0.0-beta01 contém estas confirmações.
Wear-Input-Testing versão 1.0.0-alpha01
14 de outubro de 2020
Lançamento de androidx.wear:wear-input-testing:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição de
androidx.wear.input.test.TestWearableButtonsProvider, que implementaandroidx.wear.input.WearableButtonsProviderpara ajudar aplicativos de teste desenvolvidos com a bibliotecaandroidx.wear:wear-input(I0ed0c).
Wear-Input versão 1.0.0-alpha01
2 de setembro de 2020
Lançamento de androidx.wear:wear-input:1.0.0-alpha01. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
Migração da funcionalidade WearableButtons da Biblioteca de Suporte de Wearables para o Jetpack. Mais suporte para testes na biblioteca androidx.wear:wear-input-testing será oferecido na próxima versão do Jetpack.
Versão 1.1.0
Versão 1.1.0
14 de outubro de 2020
Lançamento de androidx.wear:wear:1.1.0. A versão 1.1.0 contém estas confirmações.
Principais mudanças desde a versão 1.0.0
- Adição de um prefixo
layout_ao atributo boxedEdges (agoralayout_BoxedEdges) paraBoxInsetLayoutpara obedecer à convenção de nomenclatura do Android. Isso removerá o erro de linter no Android Studio para esses atributos (I4272f). - Adição de
EXTRA_ANIMATION_DURATION_MILLISopcional aConfirmationActivitypara permitir a duração de exibição da caixa de diálogo de confirmação (adb83ce, b/143356547). - Atualização de
WearableActionDrawViewpara atrasar a inflação da gaveta de ação até que ela seja aberta pela primeira vez (I01026, b/163870541).
Versão 1.1.0-rc03
2 de setembro de 2020
Lançamento de androidx.wear:wear:1.1.0-rc03. A versão 1.1.0-rc03 contém estas confirmações.
Correções de bugs
- Foi corrigido o problema em que a gaveta de ação não mostrava o conteúdo quando aberta (I01026, b/163870541).
Versão 1.1.0-rc02
24 de junho de 2020
Lançamento de androidx.wear:wear:1.1.0-rc02. A versão 1.1.0-rc02 contém estas confirmações.
Correções de bugs
- Adição de um prefixo
layout_ao atributo boxedEdges (agoralayout_boxedEdges) paraBoxInsetLayoutpara obedecer à convenção de nomenclatura do Android. Isso removerá o erro de linter no Android Studio para esses atributos.
Versão 1.1.0-rc01
14 de maio de 2020
androidx.wear:wear:1.1.0-rc01 é lançado sem mudanças desde .1.0-beta01. A versão 1.1.0-rc01 contém estas confirmações.
Versão 1.1.0-beta01
29 de abril de 2020
androidx.wear:wear:1.1.0-beta01 é lançado sem mudanças desde androidx.wear:wear:1.1.0-alpha01. A versão 1.3.0-beta01 contém estas confirmações.
Versão 1.1.0-alpha01
15 de abril de 2020
androidx.wear:wear:1.1.0-alpha01 é lançado. A versão 1.1.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição de
EXTRA_ANIMATION_DURATION_MILLISopcional aConfirmationActivitypara permitir a duração de exibição da caixa de diálogo de confirmação (adb83ce, 134523c, b/143356547).
Correções de bugs
- Atualização de
WearableActionDrawViewpara atrasar a inflação da gaveta de ação até que ela seja aberta pela primeira vez (5cd32f7).