Appcompat
| Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
|---|---|---|---|---|
| 4 de junho de 2025 | 1.7.1 | - | - | - |
Como declarar dependências
Para adicionar uma dependência a Appcompat, é preciso adicionar o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários no arquivo build.gradle para
seu app ou módulo:
Groovy
dependencies { def appcompat_version = "1.7.1" implementation "androidx.appcompat:appcompat:$appcompat_version" // For loading and tinting drawables on older versions of the platform implementation "androidx.appcompat:appcompat-resources:$appcompat_version" }
Kotlin
dependencies { val appcompat_version = "1.7.1" implementation("androidx.appcompat:appcompat:$appcompat_version") // For loading and tinting drawables on older versions of the platform implementation("androidx.appcompat:appcompat-resources:$appcompat_version") }
Para ver mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Versão 1.7
Versão 1.7.1
4 de junho de 2025
Lançamento de androidx.appcompat:appcompat:1.7.1 e androidx.appcompat:appcompat-resources:1.7.1. A versão 1.7.1 contém estas confirmações.
Correções de bugs
- O
AppCompatfoi atualizado para usar a Activity 1.8.0 e permitir que ele use a APIinitializeViewTreeOwners()doComponentActivitypara garantir que ele sempre tenha oViewTreeOwnerscorreto definido. Isso corrige uma incompatibilidade entreAppCompatActivitye NavigationEvent e as bibliotecas que são criadas com base nelas, como Navigation 3. (I96919, b/419208471).
Versão 1.7.0
29 de maio de 2024
Lançamento de androidx.appcompat:appcompat:1.7.0 e androidx.appcompat:appcompat-resources:1.7.0. A versão 1.7.0 contém estas confirmações.
Mudanças importantes desde a versão 1.6.0
- Agora,
AppCompatDialogdefine corretamenteLifecycleOwner,SavedStateRegistryOwnereOnBackPressedDispatcherOwnerna visualização de decoração da caixa de diálogo pelas APIsViewTree, corrigindo problemas ao hospedar umComposeViewem umAppCompatDialog. - A
AppCompatActivityagora define oViewTreeOnBackPressedDispatcherOwnerpara que seja possível extrair o agente da visualização - Melhoria significativa no desempenho de
SupportMenuInflater. Locale.getDefault()agora retorna a localidade do sistema após uma inicialização a frio.LinearLayoutCompatagora preserva os parâmetros de layout de margem.
Atualizações de dependência
- O
AppCompatagora depende da Activity 1.7.0. - O
AppCompatagora depende do Fragment 1.5.4.
Versão 1.7.0-rc01
14 de maio de 2024
Lançamento de androidx.appcompat:appcompat:1.7.0-rc01 e androidx.appcompat:appcompat-resources:1.7.0-rc01. A versão 1.7.0-rc01 contém estas confirmações.
Versão 1.7.0-beta01
1º de maio de 2024
Lançamento de androidx.appcompat:appcompat:1.7.0-beta01 e androidx.appcompat:appcompat-resources:1.7.0-beta01. A versão 1.7.0-beta01 contém estas confirmações.
Versão 1.7.0-alpha03
26 de julho de 2023
Lançamento de androidx.appcompat:appcompat:1.7.0-alpha03 e androidx.appcompat:appcompat-resources:1.7.0-alpha03. A versão 1.7.0-alpha03 contém estas confirmações.
Novos recursos
Suporte para acessar localidades por app em contextos que não são de atividade (I58e753). Quatro novas APIs foram adicionadas a esse recurso:
LocaleManagerCompat.getApplicationLocales(): para que os desenvolvedores tirem as localidades por app do escopo da atividade.ContextCompat.getString(): retorna strings localizadas com base nas localidades por app.ContextCompat.getContextForLanguage(): o contexto retornado por esse método vai respeitar as localidades por app.ConfigurationCompat.setLocales(): para APIs acima, para definir a localidade da configuração.
Outras mudanças na API
setLineHeight(unit, lineHeight)foi adicionado às classes de compatibilidadeTextView(Ia9fa9).setLineHeight(unit, lineHeight)foi adicionado às classes de compatibilidadeTextView(Ib2ee1).setLineHeight(unit, lineHeight)foi adicionado às classes de compatibilidadeTextView(I15716).
Correções de bugs
- Agora,
AppCompatDialogdefine corretamenteLifecycleOwner,SavedStateRegistryOwnereOnBackPressedDispatcherOwnerna visualização de decoração da caixa de diálogo pelas APIsViewTree, corrigindo problemas ao hospedar umComposeViewem umAppCompatDialog. OAppCompatagora depende da Activity 1.7.0. (Ib28ab, b/261314581). - Melhoramos significativamente a performance de
SupportMenuInflater(I0b087).
Versão 1.7.0-alpha02
8 de fevereiro de 2023
Lançamento de androidx.appcompat:appcompat:1.7.0-alpha02 e androidx.appcompat:appcompat-resources:1.7.0-alpha02. A versão 1.7.0-alpha02 contém estas confirmações.
Correções de bugs
- Correção de um vazamento de memória no
AppCompatDelegate.getLocaleManagerForApplication()(44b57fd). - O
AppCompatagora depende do Fragment 1.5.4 (I54dcd).
Versão 1.7.0-alpha01
5 de outubro de 2022
Lançamento de androidx.appcompat:appcompat:1.7.0-alpha01 e androidx.appcompat:appcompat-resources:1.7.0-alpha01. A versão 1.7.0-alpha01 contém estas confirmações.
Correções de bugs
- A
AppCompatActivityagora define oViewTreeOnBackPressedDispatcherOwnerpara que seja possível extrair o agente da visualização (I1a115, b/235416503). Locale.getDefault()agora retorna a localidade do sistema após uma inicialização a frio (I6a94b).LinearLayoutCompatagora preserva os parâmetros de layout de margem (Id2af4).
Versão 1.6.1
Versão 1.6.1
8 de fevereiro de 2023
Lançamento de androidx.appcompat:appcompat:1.6.1 e androidx.appcompat:appcompat-resources:1.6.1. A versão 1.6.1 contém estas confirmações.
Correções de bugs
- Correção de um vazamento de memória no
AppCompatDelegate.getLocaleManagerForApplication()(44b57fd).
Versão 1.6.0
Versão 1.6.0
11 de janeiro de 2023
Lançamento de androidx.appcompat:appcompat:1.6.0 e androidx.appcompat:appcompat-resources:1.6.0. A versão 1.6.0 contém estas confirmações.
Mudanças importantes desde a versão 1.5.0
- Agora é possível personalizar localidades de apps. Consulte
AppCompatDelegate.setApplicationLocales(LocaleListCompat)para mais informações. Oferece compatibilidade com versões anteriores da nova API de preferências por idioma disponível no Android 13. - Atualizações de nulidade para alinhamento com o SDK do Android 13 (Tiramisu, API de nível 33).
- As classes de compatibilidade
DrawableWrapper,DrawableContainereStateListDrawableforam adicionadas à plataforma da API pública.
Versão 1.6.0-rc01
7 de setembro de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-rc01 e androidx.appcompat:appcompat-resources:1.6.0-rc01. A versão 1.6.0-rc01 contém estas confirmações.
Correções de bugs
- A
AppCompatActivityagora define oViewTreeOnBackPressedDispatcherOwnerpara que seja possível extrair o agente da visualização (I1a115, b/235416503). - Foi corrigido um bug que substituiu a configuração transmitida para
onConfigurationChanged, o que causava problemas em testes que injetavam as próprias configurações personalizadas usandoonConfigurationChanged.
Versão 1.6.0-beta01
10 de agosto de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-beta01 e androidx.appcompat:appcompat-resources:1.6.0-beta01. A versão 1.6.0-beta01 contém estas confirmações.
Mudanças na API
- As classes de compatibilidade
DrawableWrapper,DrawableContainereStateListDrawableforam movidas para a API pública (I37f3e, b/227789566). - Introdução de uma nova fábrica para infladores de layout assíncronos (Ia657b).
Correções de bugs
- A
Toolbaragora vai chamaronPrepareMenu()antes do menu ser mostrado, em vez de fazer isso incondicionalmente quando o menu é criado (I2a58d, b/232206677). - A
AppCompatagora depende explicitamente doLifecycle2.5.1eSavedState1.2.0(I7e3e2). - Adicionamos suporte ao callback invocado para a classe
AppCompatDelegatee à implementação da barra de ferramentas fornecida pelaAppCompat(I24062). - As APIs
AppCompatforam finalizadas para a versão 1.5.0-beta01 (I2a43d, b/236866227). - As APIs
AppCompatforam finalizadas para a versão 1.5.0-beta01 (I2a43d, b/236866227).
Versão 1.6.0-alpha05
15 de junho de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha05 e androidx.appcompat:appcompat-resources:1.6.0-alpha05. A versão 1.6.0-alpha05 foi desenvolvida em uma ramificação de pré-lançamento particular e não tem confirmações públicas.
Mudanças na API
- Atualizações de nulidade vão ser alinhadas com a plataforma final da API no SDK do Tiramisu Beta 3.
- O
minCompileSdkagora é 33 para se alinhar com o SDK do Tiramisu Beta 3.
Versão 1.6.0-alpha04
18 de maio de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha04 e androidx.appcompat:appcompat-resources:1.6.0-alpha04. Essa biblioteca foi desenvolvida em uma ramificação de pré-lançamento particular. Portanto, nenhum registro de confirmação está disponível.
Mudanças na API
- Foi adicionada uma API para substituir a restrição de largura de SwitchCompat para uso pelo MDC-Android.
Correções de bugs
- A configuração gerenciada é evitada quando a configuração muda fora de attachBaseConfig.
Versão 1.6.0-alpha03
27 de abril de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha03 e androidx.appcompat:appcompat-resources:1.6.0-alpha03.
Esta versão exige o Android 13 Beta 1 para compilar, e não há garantias de que ela será compatível com o ambiente de execução em futuras prévias para desenvolvedores.
Novos recursos
- Suporte para a seleção de idioma personalizado em todo o app via
AppCompatDelegate.setApplicationLocales(). Delega a implementação da plataforma na API 33 e mais recentes.
Versão 1.6.0-alpha01
23 de fevereiro de 2022
Lançamento de androidx.appcompat:appcompat:1.6.0-alpha01 e androidx.appcompat:appcompat-resources:1.6.0-alpha01. A versão 1.6.0-alpha01 foi criada com base em uma ramificação interna e não tem confirmações visíveis publicamente.
Esta versão exige o Android Tiramisu DP1 para compilar, e não há garantias de que ela será compatível com ambientes de execução em versões futuras da prévia para desenvolvedores.
Novos recursos
- Agora é possível personalizar localidades de apps. Consulte
AppCompatDelegate.setApplicationLocales(LocaleListCompat)para ver mais informações. Oferece compatibilidade com versões anteriores da nova API de preferências por idioma disponível no Android 13.
Versão 1.5.1
Versão 1.5.1
7 de setembro de 2022
Lançamento de androidx.appcompat:appcompat:1.5.1 e androidx.appcompat:appcompat-resources:1.5.1. A versão 1.5.1 contém estas confirmações.
Atualizações de dependência
- A
AppCompatagora depende explicitamente do Lifecycle2.5.1e do SavedState1.2.0(I7e3e2).
Versão 1.5.0
Versão 1.5.0
10 de agosto de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0 e androidx.appcompat:appcompat-resources:1.5.0. A versão 1.5.0 contém estas confirmações.
Mudanças importantes desde a versão 1.4.0
- Esta versão estável inclui melhorias na estabilidade do modo noturno, correções de bugs e suporte a tonalidades de drawable composto para widgets de texto com suporte à AppCompat, assim como melhorias à usabilidade da API. Consulte as notas da versão anteriores da série 1.5.0 para ver uma lista detalhada das mudanças.
Versão 1.5.0-rc01
27 de julho de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0-rc01 e androidx.appcompat:appcompat-resources:1.5.0-rc01. A versão 1.5.0-rc01 contém estas confirmações.
Correções de bugs
- Correção de um problema em que o wrapper de contexto do AppCompat reutilizava a implementação de recursos de apoio do contexto do aplicativo, fazendo com que o
uiModefosse substituído (Idf9d5).
Versão 1.5.0-beta01
13 de julho de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0-beta01 e androidx.appcompat:appcompat-resources:1.5.0-beta01. A versão 1.5.0-beta01 contém estas confirmações.
Mudanças na API
- Foi adicionada uma flag substituível para desativar o ajuste padrão de largura da chave (I37cb7).
- A anotação
@FloatRangefoi adicionada à API Getter da posição da chave (If524c). - Foram adicionadas anotações de nulidade ausentes a
AnimatedStateListDrawableCompat(Ieb4ec).
Correções de bugs
- As APIs
AppCompatforam finalizadas para a versão 1.5.0-beta01 (I2a43d, b/236866227). - O valor de
classNamefoi mudado para queActionMenuItemViewo trate como umButton(I5ee1c).
Versão 1.5.0-alpha01
6 de abril de 2022
Lançamento de androidx.appcompat:appcompat:1.5.0-alpha01 e androidx.appcompat:appcompat-resources:1.5.0-alpha01. A versão 1.5.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição de uma nova API para expor a posição da chave para as subclasses (I9bfb4).
- Atualização de nulidade para corresponder ao Tiramisu DP2 (I0cbb7).
- Backport da tonalidade do drawable composto para widgets derivados da TextView (Idf98c, b/165822337).
AppCompatDialogagora estendeComponentDialogpara compatibilidade comOnBackPressedDispatcher(Id9b91, b/217620781).SearchView.onQueryRefine()agora tem visibilidade protegida para permitir substituições (I6cce0, b/212882845).
Correções de bugs
- AppCompat
Toolbaragora chama a APIonPrepareMenu()doMenuHostHelper(I9b9b5, b/227376894). AppCompatEditText,AppCompatAutoCompleteEditText,AppCompatMultiAutoCompleteEditTextnão redefinem mais elementos clicáveis ou longClickable no construtor quando definidos em XML (Ic5066, b/221094907).AppCompatEditText,AppCompatAutoCompleteTextVieweAppCompatMultiAutoCompleteTextViewnão vão chamar a substituição desetKeyListenerdurante o construtor (I5c13a, b/208480173).- O AppCompat não vai unir instâncias do
NumberKeyListenertransmitidas para osetKeyListener, permitindo que aTextViewconfigure corretamente a localidade emNumberKeyListeners(Ibf113, b/207119921). - Foi corrigido um problema com todas as subclasses
NumberKeyListenerapresentadas no AppCompat 1.4.0, que permitiam que caracteres inesperados, como pontuação, fossem inseridos (Iede7a, b/207119921).
Versão 1.4.2
Versão 1.4.2
1º de junho de 2022
Lançamento de androidx.appcompat:appcompat:1.4.2 e androidx.appcompat:appcompat-resources:1.4.2. A versão 1.4.2 contém estas confirmações.
Correções de bugs
- Foi corrigida uma falha em que
AppCompatDelegateImplfazia uma chamada interna paraensureSubDecorantes da criação da barra de ações (aosp/2048349, b/226648941).
Versão 1.4.1
12 de janeiro de 2022
Lançamento de androidx.appcompat:appcompat:1.4.1 e androidx.appcompat:appcompat-resources:1.4.1. A versão 1.4.1 contém estas confirmações.
Correções de bugs
AppCompatEditText,AppCompatAutoCompleteTextVieweAppCompatMultiAutoCompleteTextViewnão vão chamar osetKeyListenermodificado durante o construtor (I5c13a, b/208480173).- A
Emoji2não vai unir as instâncias doNumberKeyListener, permitindo que a localidade seja configurada por textview.- A Appcompat não vai unir as instâncias do
NumberKeyListenertransmitidas para osetKeyListener, permitindo que aTextViewconfigure corretamente a localidade nosNumberKeyListeners(Ibf113, b/207119921).
- A Appcompat não vai unir as instâncias do
- Foi corrigido um problema em todas as subclasses
NumberKeyListenerlançadas na Appcompat 1.4.0, que permitiam que caracteres inesperados, como pontuação, fossem inseridos (b/207119921) (Iede7a, b /207119921).
Versão 1.4.0
Versão 1.4.0
17 de novembro de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0 e androidx.appcompat:appcompat-resources:1.4.0. A versão 1.4.0 contém estas confirmações.
Mudanças importantes desde a versão 1.3.0
- A biblioteca agora é destinada ao nível de linguagem Java 8.
- O suporte a emojis atualizáveis agora é ativado por padrão na biblioteca androidx.emoji2.
- Melhoramos a inspeção de atributo no Layout Inspector do Android Studio (I02d55).
- Foi incluído o suporte a recursos de tonalidade e drawables vetoriais aninhados nos backports de carregamento do recurso AppCompat. No entanto, isso significa que os apps não podem substituir o getDrawable() em um objeto Resources personalizado quando os backports estão ativados (Ia6b03, b/176129022).
- Adicionamos marcas de seleção e um plano de fundo tingível com backport a CheckedTextView (I8575c).
Versão 1.4.0-rc01
27 de outubro de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-rc01 e androidx.appcompat:appcompat-resources:1.4.0-rc01. A versão 1.4.0-rc01 contém estas confirmações.
Versão 1.4.0-beta01
29 de setembro de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-beta01 e androidx.appcompat:appcompat-resources:1.4.0-beta01. A versão 1.4.0-beta01 contém estas confirmações.
Mudanças na API
- A
Toolbardo AndroidX AppCompat agora é umMenuHoste pode gerenciarMenuProviders (I5cd95).
Correções de bugs
- O gerenciamento da AppCompatProgressBar para as barras de progresso da lista de camadas foi corrigido (I6ece3, b/142004509).
android:digitssão retidos corretamente noAppCompatEditText. Isso corrige o bug 193047889 introduzido na versão 1.4.0-alpha03 da AppCompat (I4b4fc, b/193047889).- O SDK OnReceiveContentListener foi integrado e oferece suporte a APIs lib (Ic6914, b/173814913).
Versão 1.4.0-alpha03
30 de junho de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-alpha03 e androidx.appcompat:appcompat-resources:1.4.0-alpha03. A versão 1.4.0-alpha03 contém estas confirmações.
Novos recursos
- A biblioteca agora é destinada ao nível de linguagem Java 8.
- O suporte a emoji2 foi adicionado para mais subclasses TextView (
AppCompatMultiAutoCompleteTextView,AppCompatAutoCompleteTextView,AppCompatRadioButton,AppCompatCheckBox).
Mudanças na API
- Uma API foi adicionada para configurar uma InputConnection para usar View.PerformReceberContent para processar chamadas do IME (editor de método de entrada, na sigla em inglês) para InputConnection.commitContent (I3a2ad).
- A compatibilidade com EmojiCompat foi adicionada à
AppCompatMultiAutoCompleteTextView(Ifece0). - O suporte a EmojiCompat foi adicionado à
AppCompatAutoCompleteTextView(Ia1f4b). - O suporte a EmojiCompat foi adicionado ao
AppCompatRadioButton(If08af). - O suporte a EmojiCompat foi adicionado à
AppCompatCheckBox(I2b3bc). - Agora, o uso de um
KeyListenernulo é permitido emAppCompatEditText. Isso vai reverter a anotação não nula que foi adicionada a AppCompatEditText na versão 1.4-alpha01 e restaurar o comportamento anterior quando transmitida como nula (I21482, b/189559345). PopupMenu.setForceShowIconfoi adicionado para paridade com as APIs da plataforma (I43bb3, b/182789798).
Correções de bugs
- Corrigido bug em AppCompatEditText que redefinirá o inputType especificado em XML para remover variações. Esse bug foi introduzido na AppCompat 1.4.0-alpha01 (I9df36, b/191061070).
Versão 1.4.0-alpha02
2 de junho de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-alpha02 e androidx.appcompat:appcompat-resources:1.4.0-alpha02. A versão 1.4.0-alpha02 contém estas confirmações.
Mudanças na API
- Adição do construtor
AppCompatDialogFragment, que usa um ID de layout (Icbf22, b/188119987). - A compatibilidade com o Layout Inspector foi aprimorada (I02d55).
- Pacote em
emoji2-views-helperrenomeado comoandroidx.emoji2.viewsintegration. Essa é uma alteração interruptiva para AppCompat1.4.0-alpha01, e os apps precisam garantir que a dependência de AppCompat seja atualizada para usar a nova versão de emoji2 (Ie8397).
Correções de bugs
- Correção do problema em que as atividades interrompidas não recebiam mudanças de configuração das alterações no modo noturno instrumentadas pelo AppCompat (I8fa8f, b/188681415).
- Correção do bug em
AppCompatEditTextque fazia com que as visualizações fossem focalizáveis mesmo quandoandroid:focusable="false"era especificado no XML. Esse bug foi introduzido no AppCompat1.4.0-alpha01(Ib9412).
Versão 1.4.0-alpha01
18 de maio de 2021
Lançamento de androidx.appcompat:appcompat:1.4.0-alpha01 e androidx.appcompat:appcompat-resources:1.4.0-alpha01. A versão 1.4.0-alpha01 contém estas confirmações.
Mudanças na API
- O suporte a EmojiCompat foi integrado a vários widgets AppCompat (Id409b, If7a1a, Ic262d, Ib5f4a e I4fb3c).
- Foi incluído o suporte a recursos de tonalidade e drawables vetoriais aninhados nos backports de carregamento do recurso AppCompat. No entanto, isso significa que os apps não podem modificar o
getDrawable()em um objeto Resources personalizado quando os backports estão ativados (Ia6b03, b/176129022). - A compatibilidade com o Layout Inspector foi aprimorada (I6d771).
Correções de bugs
- Foi corrigida uma situação em que chamar setSupportActionBar depois da configuração do callback da janela substituía o callback (Ie43ee, b/186791590).
- Foi incluída uma solução alternativa para um problema nos SDKs 29 e 30 em que os recursos ColorStateListDrawable clonados do cache de drawable não carregavam uma cor padrão até receber uma mudança de estado (Iedb4b).
- NPE foi evitado ao lidar com callbacks nulos de modo de ação de seleção personalizada em visualizações compatíveis com AppCompat (I033c7, b/173435375).
Atualizações de dependência
- A partir do AppCompat
1.5.0: o AppCompat agora depende do Fragment1.3.4(I13089). - A partir do AppCompat
1.5.0: o AppCompat agora depende da Activity1.2.3(I815b7). - A partir do AppCompat
1.5.0: o AppCompat agora depende do Lifecycle2.3.1(Ia75a1).
Contribuição externa
- Plano de fundo tingível com backport e marca de seleção para
CheckedTextView(I8575c).
Versão 1.3.1
Versão 1.3.1
21 de julho de 2021
Lançamento de androidx.appcompat:appcompat:1.3.1 e androidx.appcompat:appcompat-resources:1.3.1. A versão 1.3.1 contém estas confirmações.
Atualizações de dependência
- O AppCompat agora depende das bibliotecas Activity
1.2.4e Fragment1.3.6. As correções dessas versões são incluídas por padrão durante o uso do AppCompat1.3.1(I8fbec).
Versão 1.3.0
Versão 1.3.0
18 de maio de 2021
Lançamento de androidx.appcompat:appcompat:1.3.0 e androidx.appcompat:appcompat-resources:1.3.0. A versão 1.3.0 contém estas confirmações.
Mudanças importantes desde a versão 1.2.0
- Foi corrigida a propagação de atributos
android:themeem layouts<include>d em dispositivos anteriores ao Lollipop. - Foi reduzido o tamanho da biblioteca ao converter vários recursos PNG em VectorDrawables.
- O suporte a eventos de arrastar e soltar foi adicionado ao
AppCompatEditTextusando oOnReceiveContentListener. - Houve uma atualização para oferecer suporte às mudanças no tratamento de margens de janela no Android 11.
- O suporte a RTL foi adicionado a itens de menu com ícones.
O suporte à inserção de conteúdo avançado (por exemplo, colar uma imagem) foi adicionado ao
AppCompatEditText.Dependências atualizadas: o
appcompatatualizou muitas dependências transitórias para oferecer suporte a novas funções e correções:- O Fragment
1.1.0foi atualizado para Fragment1.3.4. - A Activity 1.0.0 foi atualizada para Activity
1.2.3. - O Lifecycle
2.0.0foi atualizado para Lifecycle2.3.1. - O Core 1.3.0 foi atualizado para Core
1.5.0.
- O Fragment
Versão 1.3.0-rc01
24 de março de 2021
Lançamento de androidx.appcompat:appcompat:1.3.0-rc01 e androidx.appcompat:appcompat-resources:1.3.0-rc01. A versão 1.3.0-rc01 contém estas confirmações.
Correções de bugs
- Impede que as permissões sejam revogadas antes do processamento da inserção de conteúdo do IME (editor de método de entrada, na sigla em inglês).
Atualizações de dependência
- AppCompat agora depende das bibliotecas Activity
1.2.2, Fragment1.3.2e Lifecycle2.3.1(Ia75a1).
Contribuição externa
- A propagação do atributo
android:themefoi corrigida em layouts<include>para dispositivos anteriores ao Lollipop (Simon Berner, Opera).
Versão 1.3.0-beta01
13 de janeiro de 2021
Lançamento de androidx.appcompat:appcompat:1.3.0-beta01 e androidx.appcompat:appcompat-resources:1.3.0-beta01. A versão 1.3.0-beta01 contém estas confirmações.
Novos recursos
- Drawables de modo de ação no nível do tema foram substituídos por fontes vetoriais. Isso pode causar pequenas mudanças na aparência de ícones individuais (I741a6).
Mudanças na API
- Integração do arraste e solte (eventos de soltar) no AppCompatEditText com OnReceiveContentListener (Ib26c9, b/175343405).
OnReceiveContentListenere APIs relacionadas atualizadas. Consulte as mudanças na biblioteca androidx.core para saber mais detalhes (Ib4616, b/173814913).- Widget.RichContentReceiverCompat movido para view.OnReceiveContentListener (Ifdab7, b/173814913).
- As APIs para fornecer e recuperar o texto inicial correspondente passaram por backport recuadas para
EditorInfoCompat. Elas permitem que apps IME (editor de método de entrada, na sigla em inglês) evitem latência IPC adicional (Ie3809).
Versão 1.3.0-alpha02
19 de agosto de 2020
Lançamento de androidx.appcompat:appcompat:1.3.0-alpha02 e androidx.appcompat:appcompat-resources:1.3.0-alpha02. A versão 1.3.0-alpha02 contém estas confirmações.
Correções de bugs
- Drawables PNG AppCompatRatingBar foram substituídos por fontes vetoriais. Isso pode causar pequenas mudanças na aparência de estrelas individuais. (I6b99d)
- Atualização do WindowInsetsCompat para APIs do Android 11 (I3df9e).
- O suporte a RTL foi adicionado a itens de menu com ícones (I2f5c5).
Atualizações de dependência
- O AppCompat atualizou a dependência do fragmento
1.1.0para o fragmento1.3.0-alpha08. É altamente recomendável ler as notas da versão do fragmento1.2.0para entender as principais mudanças introduzidas na versão anterior do fragmento. - O AppCompat atualizou a dependência da atividade
1.0.0para a atividade1.2.0-alpha08. É altamente recomendável ler as notas da versão da atividade1.1.0para entender as principais mudanças introduzidas na versão anterior da atividade.AppCompatActivityagora usa a APIOnContextAvailableListenerintroduzida na atividade1.2.0-alpha08para configurar oAppCompatDelegate. Todos os listeners adicionados às subclasses daAppCompatActivityserão executados depois desse listener. (I513da)
Versão 1.3.0-alpha01
20 de maio de 2020
Lançamento de androidx.appcompat:appcompat:1.3.0-alpha01 e androidx.appcompat:appcompat-resources:1.3.0-alpha01. A versão 1.3.0-alpha01 contém estas confirmações.
Novos recursos
- Adicione uma nova regra Lint para sinalizar chamadas para setActionBar em atividades que estendem AppCompatActivity
- Foi adicionado suporte a
ViewTreeLifecycleOwnerdo Lifecycle2.3.0-alpha01,ViewTreeViewModelStoreOwnerdo Lifecycle2.3.0-alpha03eViewTreeSavedStateRegistryOwnerdo SavedState1.1.0-alpha01ao usar umaViewdentro daAppCompatActivity(b/151603528, aosp/1300264). - Adição da API comum para inserir conteúdo avançado (por exemplo, colar uma imagem). O novo callback fornece uma única API que os apps podem implementar para oferecer suporte às diferentes maneiras de inserir conteúdo avançado. Por enquanto, a API é adicionada apenas a
AppCompatEditTexte vai ser invocada para os seguintes caminhos de código:- colar da área de transferência
- Inserção de conteúdo do IME (
InputConnection.commitContent) (I22bf7).
Correções de bugs
- Do AppCompat
1.2.0-rc01: o AppCompat não chama mais oonMenuOpened()com um menunull(b/142843126). - Resolução correta das cores de link e hint em dispositivos mais antigos quando TextViewCompat.setTextAppearance é chamado com um estilo de aparência de texto que tem listas de estado de cor que se referem a atributos de cor para temas (b/154702995).
Versão 1.2.0
Versão 1.2.0
5 de agosto de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0 e androidx.appcompat:appcompat-resources:1.2.0. A versão 1.2.0 contém estas confirmações.
Principais mudanças desde a versão 1.1.0
- Correção da compatibilidade com casos de uso de modificação da configuração, incluindo localidades personalizadas e escalas de fonte. Clique aqui para ver um exemplo de como implementar modificações corretamente usando
appcompat:1.2.0. - O uso de
AppCompatDelegate.attachBaseContext()foi descontinuado. Se você está chamando ou modificando esse método, useAppCompatDelegate.attachBaseContext2(). - O uso de
CollapsibleActionViewfoi descontinuado. Essa interface não é mais necessária, use a interfaceandroid.view.CollapsibleActionViewfornecida pela plataforma.
Versão 1.2.0-rc02
22 de julho de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-rc02 e androidx.appcompat:appcompat-resources:1.2.0-rc02. A versão 1.2.0-rc02 contém estas confirmações.
Correções de bugs
- Correção de um problema relacionado ao modo noturno, em que chamar
AppCompatDelegate.setDefaultNightModeusando uma caixa de diálogo falhava ao recriar atividades e aplicar o novo modo (aosp/1348308, b/158923881)
Versão 1.2.0-rc01
14 de maio de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-rc01 e androidx.appcompat:appcompat-resources:1.2.0-rc01. A versão 1.2.0-rc01 contém estas confirmações.
Mudanças na API
AppCompatDelegate.setLocalNightModefoi marcado para exigir a versão 17 ou mais recente do SDK devido a um problema de plataforma com mudanças de configuração entre atividades em SDKs anteriores.
Correções de bugs
AppCompatDelegate.setLocalNightModeagora pode ser chamado antes deActivity.attachBaseContext.- Correção do consumo do recuo de
ActionBarOverlayLayoutque estava usando incorretamente os insets em cache. - AppCompat não chama mais
onMenuOpened()com um menunull(b/142843126, link em inglês)
Versão 1.2.0-beta01
1º de abril de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-beta01 e androidx.appcompat:appcompat-resources:1.2.0-beta01. A versão 1.2.0-beta01 contém estas confirmações.
Novos recursos
- Adicionadas as seguintes novas regras de lint que sinalizarão usos incorretos de AppCompat nos cenários a seguir:
- Carregar listas de estados de cor: sugere o uso das APIs
ContextCompateAppCompatResourcespara compatibilidade com versões anteriores - Carregar drawables: sugere o uso das APIs
ContextCompateResourcesCompatpara compatibilidade com versões anteriores - Usar listas de estados de cor com o atributo Alfa: sinalizações com o atributo
android:alphaausente que levarão à exibição incorreta em algumas versões da plataforma - Tonalizar visualizações de imagem: sinaliza a falta de uso de
app:tint, que leva à exibição incorreta em versões mais antigas da plataforma - Usar drawables compostos e tonalidade em visualizações de texto: sugere o uso de atributos compatíveis e APIs para compatibilidade com versões anteriores
- Carregar listas de estados de cor: sugere o uso das APIs
Correções de bugs
- Foi corrigido um problema em que
ActionBarOverlayLayout(ação de decoração da janela) não estava distribuindo WindowInsets corretamente. - Correção de problemas na tonalidade de drawables e na aparência do texto em versões mais antigas da plataforma.
- Foi corrigido um problema em que
androidx.appcompat:appcompat:1.1.0causava uma falha na WebView quando o usuário tocava nela e a mantinha pressionada (b/141351441). - Correções implementadas para problemas com manipulação de contexto base e recuperação de serviços do sistema durante a inicialização da atividade
Versão 1.2.0-alpha03
4 de março de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-alpha03 e androidx.appcompat:appcompat-resources:1.2.0-alpha03. A versão 1.2.0-alpha03 contém estas confirmações.
Correções de bugs
- Foi corrigido um problema em que a proteção de status do modo de ação se estendia erroneamente para a barra de navegação e tinha a cor errada (Ia4a09).
- Foi corrigido um problema em que as atividades interrompidas não eram retomadas na API de nível 23 e anteriores (I45201).
Versão 1.2.0-alpha02
29 de janeiro de 2020
Lançamento de androidx.appcompat:appcompat:1.2.0-alpha02 e androidx.appcompat:appcompat-resources:1.2.0-alpha02. A versão 1.2.0-alpha02 contém estas confirmações.
Correções de bugs
- Foi corrigido um problema em que o appcompat 1.1.0 fazia com que a WebView falhasse quando o usuário tocava nela e a mantinha pressionada (b/141351441).
- A tonalidade do drawable na TextView foi corrigida em relação a drawables de composição na API de nível 23 (aosp/1172194).
- Garantia de que o contexto base seja sempre um wrapper (aosp/1194355).
- Foram adicionadas algumas melhorias para ser mais inteligente ao modificar a configuração de contexto base (aosp/1204543).
- O
createConfigurationContext()foi desativado para Roboletric (aosp/1186218).
Versão 1.2.0-alpha01
4 de dezembro de 2019
Lançamento de androidx.appcompat:appcompat:1.2.0-alpha01 e androidx.appcompat:appcompat-resources:1.2.0-alpha01. A versão 1.2.0-alpha01 contém estas confirmações.
Correções de bugs
- As chamadas para PackageManager.getActivityInfo não falham mais no modo restrito e com as verificações de reconhecimento de inicialização ativadas
- Correções de tonalização de drawables no AppCompatButton
- Correções de tonalização e aparência do texto em versões mais antigas da plataforma
Versão 1.1.0
Versão 1.1.0
5 de setembro de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0 e androidx.appcompat:appcompat-resources:1.1.0. As confirmações incluídas nessa versão podem ser encontradas neste link.
Mudanças importantes desde a versão 1.0.0
- Melhorias no modo escuro:
MODE_NIGHT_AUTOe a alternação entre claro e escuro com base no horário atual agora foram suspensas. Considere usar uma configuração explícita ouMODE_NIGHT_AUTO_BATTERY. - Acivity 1.0:
AppCompatActivityagora se estende transitivamente doComponentActivityde1.0.0pelo Fragment1.1.0. Consulte as notas de versão associadas para ver informações sobre as mudanças em cada biblioteca. - Construtor AppCompatActivity LayoutId: subclasses de
AppCompatActivityagora podem optar por chamar um construtor emAppCompatActivityque leva um IDR.layout, indicando o layout que será definido como a visualização de conteúdo, em vez de chamarsetContentView()emonCreate(). Isso não altera a exigência de que sua subclasse tenha um construtor sem argumento.
Versão 1.1.0-rc01
2 de julho de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-rc01 e androidx.appcompat:appcompat-resources:1.1.0-rc01. As confirmações incluídas nessa versão podem ser encontradas aqui (link em inglês).
Correções de bugs
- O recurso DayNight agora respeita
configChangescorretamente (aosp/981105). onConfigurationChangedsó é chamado em Activities iniciadas (aosp/987483).
Versão 1.1.0-beta01
5 de junho de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-beta01 e androidx.appcompat:appcompat-resources:1.1.0-beta01. As confirmações incluídas nessa versão podem ser encontradas neste link.
Correções de bugs
- Limpeza dos receptores em AppCompatDialogs. (aosp/959376).
- Foi adicionado suporte a
buttonGravity=center_verticalna barra de ferramentas (b/130361721). - Correção do deslocamento horizontal do ícone de carregamento (b/79477181).
Versão 1.1.0-alpha05
7 de maio de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-alpha05 e androidx.appcompat:appcompat-resources:1.1.0-alpha05. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
- setDefaultNightMode() agora recria automaticamente todas as atividades iniciadas.
Correções de bugs
- Várias correções no modo DayNight.
- Invalidação de contorno em qualquer alteração em segundo plano na ActionBar.
- Correção da rolagem do widget do ícone de carregamento.
- Corrigidos planos de fundo de janela de conjunto personalizados que estavam sendo modificados no AlertDialog.
Versão 1.1.0-alpha04
3 de abril de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-alpha04 e androidx.appcompat:appcompat-resources:1.1.0-alpha04. As confirmações incluídas nessa versão podem ser encontradas neste link.
Novos recursos
- Adicionadanova família
ThemeOverlay.AppCompat.DayNightde temas. Esses temas serão usados com o recurso DayNight.
Mudanças na API
- AppCompatActivity agora contém um segundo construtor que usa um
@LayoutRes int, que substitui o comportamento anterior de anotar sua classe AppCompatActivity com@ContentView. Essa abordagem funciona nos módulos do app e da biblioteca (b/128352521).
Correções de bugs
- As dependências internas são fixadas em versões estáveis sempre que possível.
- A rolagem de
AppCompatSpinnerfoi corrigida no modo suspenso (b/124274573). applyOverrideConfiguration()só é chamado quando necessário para o DayNight.
Versão 1.1.0-alpha03
13 de março de 2019
Lançamento de androidx.appcompat:appcompat:1.1.0-alpha03 e androidx.appcompat:appcompat-resources:1.1.0-alpha03. Essa é a primeira versão de appcompat-resources.
A lista completa de confirmações incluídas nessa versão pode ser encontrada neste link (link em inglês).
Novos recursos
- A nova biblioteca appcompat-resources contém APIs que permitem que os apps carreguem e tonalizem drawables (inclusive drawables vetoriais) em versões anteriores da plataforma. Essa é a mesma funcionalidade que fazia parte anteriormente do módulo appcompat. No entanto, ela agora está disponível sem a sobrecarga do backport completo do Material Design, que inclui widgets, caixas de diálogo, modo noturno etc.
- Correções importantes no suporte ao modo DayNight.
- Nova opção
MODE_NIGHT_AUTO_BATTERYpara o modo DayNight. - Tonalização do Drawable em
AppCompatTextView - O estouro da Toolbar agora pode ser estilizado com listas de estados de cores com temas.
- Agora, os ícones de menu podem usar cores que fazem referência a atributos de tema.
- O novo atributo app:menu pode ser definido em uma Toolbar para disponibilizar o conteúdo do menu no momento da inflação.
Correções de bugs
- Correção do modo de tonalidade padrão no ImageView, versão 21.
- Correção da dispensa incorreta do pop-up do ícone de carregamento ao girar o dispositivo.
- Corrigido DayNight, que não respeitava
configChangesno manifesto. - Foi corrigido um problema em que a mudança para
MODE_NIGHT_FOLLOW_SYSTEMnão funcionava (b/111345020). - Corrigido WebView, que redefinia recursos do DayNight (b/37124582).
Versão 1.1.0-alpha02
7 de fevereiro de 2019
Lançamento de androidx.appcompat:appcompat 1.1.0-alpha02.
Novos recursos
- Extração do processamento do drawable específico de recurso para um hook (aosp/870976).
- As Barras de Ferramentas
titleTextColoresubtitleTextColorreceberam permissão para usar umColorStateList, e foram adicionadas sobrecargasColorStateListdos métodossetTitleTextColoresetSubtitleTextColor(osp/867489).
Correções de bugs
- Corrigida
fontFamilyque não funcionava em APIs de níveis anteriores a 24 (aosp/807054). - Corrigido bug em que
textFontWeightnão funcionava quando uma atividade se estendia deAppCompatActivity(aosp/847640). - Correção do bug que fazia com que o texto do título no pop-up do widget para o ícone de carregamento (no modo de caixa de diálogo) não usasse a fonte especificada na
fontFamily(aosp/789994). - Corrigido bug que impedia que os widgets
AppCompatCheckBoxeAppCompatRadioButtonalterassem a tonalidade do plano de fundo (aosp/825160). - Corrigido bug em que AppCompat não modificava
android: list styles(aosp/862350).
Versão 1.1.0-alpha01
3 de dezembro de 2018
Novos recursos
AppCompatTextView agora oferece suporte a drawables compostos
app:drawableLeftCompat,app:drawableTopCompat,app:drawableRightCompat,app:drawableBottomCompat,app:drawableStartCompateapp:drawableEndCompat, além de suporte a tipos drawable de versões anteriores, comoVectorDrawableCompat.Os drawables padrão de
AppCompatCheckBoxeAppCompatRadioButtonagora animam as mudanças do estado de verificação.
Mudanças na API
- aosp/740385:
ActionBarOverlayLayout agora implementa NestedScrollingParent2 e
NestedScrollingParent3, facilitando a funcionalidade mais recente na
rolagem aninhada 3. Se o código do desenvolvedor atualmente modificar
ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int), ele provavelmente não será mais chamado eActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[])precisará ser modificado.
Versão 1.0.2
Versão 1.0.2
7 de novembro de 2018
Versão de correção de bugs de core-1.0.1 e appcompat-1.0.2.
Correções de bugs
- Correção do bug em que
PrecomputedTextCompatfalhava quando usado comAppCompatTextViewRTL b/113070424 (link em inglês)
Versão 1.0.0
Versão 1.0.0
7 de novembro de 2018
Novos recursos
- A classe
AnimatedStateListDrawableCompatoferece transições animadas entre estados de drawable.