Notas de Lançamento do Axe DevTools Mobile - 11 de Novembro de 2026

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

11 de Novembro de 2026

Not for use with personal data

Versões dos Componentes

iOS

  • iOS SDK (axeDevToolsXCUI v5.0.0)

Como atualizar: iOS SDK, Aplicativo Desktop do iOS Analyzer

Android

  • Android SDK (axe-devtools-android v10.0.0)
  • Plugin do Gradle para Android (axe-devtools-android-plugin v2.0.0)
  • Android Analyzer (Axe Accessibility Analyzer v4.2.0)

Como atualizar: Plugin do Gradle para Android, Android Analyzer

Novidades

SDK

Com a aproximação da descontinuação do Painel Mobile, a configuração de regras globais agora é feita na Conta Axe. Aqui, os administradores configuram quais regras serão executadas em testes automatizados e também podem conceder permissões para que os usuários substituam as configurações globais e ignorem regras individuais em seus testes. Quando não é permitido substituir, o comando de ignorar não faz nada e o SDK registra o motivo. Note que se as configurações da organização não puderem ser lidas, as verificações ainda serão executadas. Todas as regras são executadas e ignorações a nível de código são permitidas. Apenas uma organização que desativa explicitamente as substituições as bloqueia.

iOS

  • Encontre um link para seus resultados após o upload. Após um upload de verificação, o log agora imprime View your results in Axe Developer Hub: <link>. As verificações direcionadas vinculam à página do projeto, e o Auto Scan vincula à sua sessão.
  • As regras agora são ignoradas no próprio AxeDevTools, por exemplo axe.ignoreRules(.colorContrast, .screenTitle), ou por elemento com ignoreRules(onElementWithId:) / ignoreRules(onElementOfClass:). Uma regra escrita de forma incorreta agora falha na compilação em vez de executar silenciosamente. (Breaking — veja abaixo.)

Android

  • Encontre um link para os seus resultados após o upload. Após um upload de verificação, o log imprime um link para o Axe Developer Hub. As verificações direcionadas vinculam à página do projeto e o AutoScan vincula à sua sessão.
  • Agora você ignora regras com o enum AxeRuleName, por exemplo axeDevTools.ignoreRules(AxeRuleName.COLOR_CONTRAST, AxeRuleName.SCREEN_TITLE). Para pular regras em um elemento, use ignoreRulesOnElementWithId("resource_id", AxeRuleName.TOUCH_TARGET_SIZE). Um nome de regra mal escrito agora falha na compilação em vez de ser silenciosamente ignorado. (Interrupção, veja abaixo.)
  • Defina as ignorações de regras uma vez por sessão ao realizar testes direcionados. Passe ignoreRules e ignoreRulesOnElementIds para a função mobile: axeStartSession; estas se aplicam a cada verificação direcionada até o fim da sessão. (Nota: Auto Scan não permite ignorações individuais de regras; segue apenas as configurações de regras da organização.)

Correções

iOS

  • Melhorias na precisão das seguintes regras: Etiqueta no Nome, Etiqueta na Frente, Tamanho do Alvo de Toque, Espaçamento do Alvo de Toque
  • As verificações não travam mais quando o executor de testes é criado com Xcode 16.2 ou outras versões anteriores a 16.4
  • Logs de teste mais silenciosos - o SDK não imprime mais no log de teste toda vez que envia análises

Android

  • Melhoria na precisão da regra de Etiqueta no Nome
  • Desempenho aprimorado para Auto Scan - o executor de testes agora aguarda até 10 segundos por uma rede antes de iniciar sessão
  • Desempenho aprimorado do botão flutuante de verificação do Axe Accessibility Analyzer ao usar o TalkBack - agora você pode alcançá-lo deslizando, e ele mantém o foco após uma verificação ou após abrir um menu (Foco de deslize requer versão 16.2 ou posterior do TalkBack)

Atualizações

Android

  • O SDK, o Analisador e os alvos de amostra agora são compilados contra o Android SDK 37 (compileSdk / targetSdk 37). O minSdk permanece em 26. Seu aplicativo não precisa de alterações.
  • Os testes Java agora podem chamar AxeAutoScan.skipScan(...) diretamente, sem .Companion
  • resetIgnoredRules() não é mais obsoleto e você pode continuar a usá-lo

Deprecações e Remoções

iOS

  • A regra de Ação Inacessível foi removida. As verificações nunca a executam, e AxeRuleId.InaccessibleAction não compila mais. Remova quaisquer referências a esta regra do seu código de teste - qualquer código que você adicionou para desabilitar ou ignorar a regra pode ser deletado.
  • As APIs de regras experimentais foram removidas. A chave experimental também foi removida do JSON exportado.
  • A chave optInToSupportsDynamicType foi removida. Se você ainda tiver isso em seu código, delete a linha que a define.
  • As seguintes APIs do painel móvel foram removidas. Estas foram descontinuadas em um lançamento anterior. O caminho para o Axe Developer Hub é o único que sobrou:
    • getResult, tagResult, deleteResult, updateScanName, AxeDevToolsResultKey, AxeResult.tags — removidos, sem substituição.
    • login(withAPIKey:toServer:) e startSession(apiKey:url:projectId:) — use startScanSession(...) ou authenticate(...) em vez disso.
    • postResult(_:withTags:withScanName:) — use postResult(_:withScanName:), que agora não retorna nada.
    • axeServiceUrl / axeServerUrl (para Auto Scan) — use axeAccountUrl.
    • AxeStatus.IGNORED - removido. As regras ignoradas não produzem mais um resultado, então "status":"IGNORED" nunca aparece no JSON exportado.

Android

  • As regras experimentais foram removidas:
    • NestedElementName e NestedActiveControl não existem mais.
    • ignoreExperimental() e a flag experimental em AxeRule foram removidos.
  • AxeRuleViewHierarchy foi descontinuado em março de 2025 e agora foi removido. Regras personalizadas devem estender AxeRule e substituir isApplicable / runRule usando AxeView.
  • APIs do painel móvel foram removidas. Axe Developer Hub agora é o único caminho de upload:
    • loginWithApiKey(...) e startSession(apiKey, projectId, serverUrl) — use startScanSession(apiKey, projectId, axeAccountUrl).
    • tagScanAs, getResult, deleteResult, AxeDevToolsResultKey, TagsSet — removido, sem substituição.
  • ScanResultHandler.uploadToDashboard(uploadOnly) — use uploadToDashboard() sem argumentos. Nota: Isso envia resultados para o Axe Developer Hub.
  • Plugin Gradle axeServerUrl — use axeAccountUrl.
  • AxeStatus.IGNORED - removido. Regras ignoradas não produzem mais resultado, então "status":"IGNORED" nunca aparece no JSON exportado.

Alterações Críticas

iOS

  • A versão mínima do iOS requerida agora é 17. Os alvos de teste de interface do usuário que ainda miram no iOS 16 devem elevar seu alvo de implantação. Rodar em dispositivos com iOS 16 não é mais suportado.
  • Ignorar regras foi movido de axe.configuration, e axe.configuration foi removido. Chamadas antigas falham na compilação com uma mensagem nomeando a nova chamada:
    • axe.configuration.ignore(rules:) - use axe.ignoreRules(...)
    • axe.configuration.ignore(rulesFor:) - use axe.ignoreRules(onElementWithId:_:) ou ignoreRules(onElementOfClass:_:)
    • axe.configuration.customRules.insert(rule) - use axe.addCustomRule(rule)
    • Ignorar regras personalizadas e reativar uma regra não são mais suportados
  • Os valores de AxeRuleId agora estão em lowerCamelCase (por exemplo, .ColorContrast se torna .colorContrast). Códigos Swift usando a grafia antiga não compilam mais. Código Objective-C, JSON exportado, Axe Developer Hub, e configurações Appium ignoreRules permanecem inalterados.
  • URLs de conta http:// são recusadas ao se autenticar com uma chave de API. Clientes on-prem cujas URLs de conta começam com http:// devem mudar para https://.
  • APIs removidas listadas sob Deprecações e Remoções falham na compilação.

Android

  • As APIs de ignorar regras mudaram. Chamadas antigas não compilam mais:
    • ignoreRules(listOf("ColorContrast")) - use ignoreRules(AxeRuleName.COLOR_CONTRAST)
    • ignoreByViewIdResourceName(id, listOf(...)) - use ignoreRulesOnElementWithId(id, AxeRuleName.X, ...)
    • ignoreExperimental() - remova a chamada.
  • TouchSizeWcag agora é TouchTargetSize, o que corresponde ao iOS e ao Axe Developer Hub. Atualize qualquer código, filtro ou painel que busque pelo nome antigo.
  • Regras personalizadas que estendem AxeRuleViewHierarchy, ou que passam a flag experimental para AxeRule, não compilam mais.
  • Plugin Gradle: Builds que ainda configuram axeServerUrl no bloco axeDevTools { } devem mudar para axeAccountUrl.
  • APIs removidas listadas sob Deprecações e Remoções falham na compilação.

Problemas Conhecidos

important
  • Os testes automatizados do Axe DevTools Mobile rodam em iOS nativo, Android nativo, aplicativos React Native e apps construídos com Appium. Por favor, entre em contato com seu representante Deque para soluções de teste de acessibilidade no seu stack de tecnologia.
  • Estas são as mudanças nos Problemas Conhecidos desde o lançamento de outubro de 2026. Para todos os problemas atuais, veja Problemas Conhecidos.
  • Embora você possa obter alguns resultados de web views ou PDFs renderizados, recomendamos fortemente testar usando o Axe DevTools for Web ou o Axe Monitor para os testes de acessibilidade mais abrangentes para a web.

Novos Problemas

Se você estiver enfrentando algum dos problemas abaixo, entre em contato conosco em helpdesk@deque.com ou support.deque.com. Assim, poderemos notificá-lo assim que for resolvido ou sobre uma solução alternativa identificada, caso nenhuma esteja listada.

iOS

Falsos positivos para regras Supports Dynamic Type e Clipped Text

As regras Supports Dynamic Type e Clipped Text (iOS 17 e posteriores) usam resultados da auditoria de acessibilidade da Apple. Essa auditoria ocasionalmente sinaliza textos que escalam corretamente ou estão totalmente visíveis, e essas regras reportam o que a Apple retona. A maioria dos erros dessas regras são problemas reais, por isso não recomendamos descartá-los como um grupo. Este problema foi relatado à Apple, e estamos trabalhando para reduzir esses falsos positivos.

Para confirmar um erro, ative Tamanhos de Acessibilidade Maiores em Settings > Accessibility > Display & Text Size > Larger Text. Passe por cada tamanho de texto, do padrão ao maior, e verifique se o texto sinalizado escala e permanece totalmente visível. O texto pode parecer bem no tamanho maior, mas quebrar em um tamanho intermediário.

Se o erro for um falso positivo, ignore a regra nesse elemento pelo seu identificador de acessibilidade. Não recomendamos ignorar a regra para toda a varredura ou pelo nome da classe, pois isso pode esconder falhas reais.

Android

Falsos positivos ao escanear mapas

Atualmente não é possível determinar com precisão se um elemento na tela está contido dentro de um mapa, portanto, nossas regras podem escanear inadvertidamente pinos de mapa e dar resultados de falso positivo. Este é um problema com a forma como o sistema Android reporta mapas para o Serviço de Acessibilidade.

Use nossa API de regras de ignorar para isentar seu mapa ou pinos de mapa de serem escaneados usando seus IDs.

Saiba mais sobre ignorar regras.

Apps construídos com Unity não podem ser escaneados

O Axe DevTools Mobile não pode escanear o conteúdo na tela de apps construídos com o motor de jogos Unity. Isso afeta escaneamentos automatizados com a biblioteca Android, assim como escaneamentos do aplicativo Accessibility Analyzer. Os resultados mostram apenas verificações de nível de tela - para regras como Orientação de Tela e Título de Tela - e nada para os botões, textos ou chaves do aplicativo.

Não há solução alternativa no momento.

Problemas Resolvidos

iOS

Removido: falso positivo desatualizado do Nome da Visualização de Imagem e Nome do Controle Ativo

Removemos uma entrada desatualizada sobre falsos positivos do Nome do Controle Ativo em um UIImageView que possui um accessibilityIdentifier. Este problema afetou apenas a versão 2.11.0 e foi corrigido no lançamento de junho de 2024. Nome do Controle Ativo não opera mais nesses imagens em aplicativos UIKit. Nome da Visualização de Imagem os reporta como Necessita de Revisão em vez disso (veja Resultados da Revisão da Regra de Nome de ImageView para Aplicativos UIKit).