Notas de Lançamento do Axe DevTools Mobile - 11 de Novembro de 2026
11 de Novembro de 2026
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 exemploaxe.ignoreRules(.colorContrast, .screenTitle), ou por elemento comignoreRules(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 exemploaxeDevTools.ignoreRules(AxeRuleName.COLOR_CONTRAST, AxeRuleName.SCREEN_TITLE). Para pular regras em um elemento, useignoreRulesOnElementWithId("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
ignoreRuleseignoreRulesOnElementIdspara a funçãomobile: 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/targetSdk37). OminSdkpermanece 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.InaccessibleActionnã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
experimentaltambém foi removida do JSON exportado. - A chave
optInToSupportsDynamicTypefoi 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:)estartSession(apiKey:url:projectId:)— usestartScanSession(...)ouauthenticate(...)em vez disso.postResult(_:withTags:withScanName:)— usepostResult(_:withScanName:), que agora não retorna nada.axeServiceUrl/axeServerUrl(para Auto Scan) — useaxeAccountUrl.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:
NestedElementNameeNestedActiveControlnão existem mais.ignoreExperimental()e a flagexperimentalemAxeRuleforam removidos.
AxeRuleViewHierarchyfoi descontinuado em março de 2025 e agora foi removido. Regras personalizadas devem estenderAxeRulee substituirisApplicable/runRuleusandoAxeView.- APIs do painel móvel foram removidas. Axe Developer Hub agora é o único caminho de upload:
loginWithApiKey(...)estartSession(apiKey, projectId, serverUrl)— usestartScanSession(apiKey, projectId, axeAccountUrl).tagScanAs,getResult,deleteResult,AxeDevToolsResultKey,TagsSet— removido, sem substituição.
ScanResultHandler.uploadToDashboard(uploadOnly)— useuploadToDashboard()sem argumentos. Nota: Isso envia resultados para o Axe Developer Hub.- Plugin Gradle
axeServerUrl— useaxeAccountUrl. 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, eaxe.configurationfoi removido. Chamadas antigas falham na compilação com uma mensagem nomeando a nova chamada:axe.configuration.ignore(rules:)- useaxe.ignoreRules(...)axe.configuration.ignore(rulesFor:)- useaxe.ignoreRules(onElementWithId:_:)ouignoreRules(onElementOfClass:_:)axe.configuration.customRules.insert(rule)- useaxe.addCustomRule(rule)- Ignorar regras personalizadas e reativar uma regra não são mais suportados
- Os valores de
AxeRuleIdagora estão em lowerCamelCase (por exemplo,.ColorContrastse 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 AppiumignoreRulespermanecem 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 comhttp://devem mudar parahttps://. - 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"))- useignoreRules(AxeRuleName.COLOR_CONTRAST)ignoreByViewIdResourceName(id, listOf(...))- useignoreRulesOnElementWithId(id, AxeRuleName.X, ...)ignoreExperimental()- remova a chamada.
TouchSizeWcagagora é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 flagexperimentalparaAxeRule, não compilam mais. - Plugin Gradle: Builds que ainda configuram
axeServerUrlno blocoaxeDevTools { }devem mudar paraaxeAccountUrl. - APIs removidas listadas sob Deprecações e Remoções falham na compilação.
Problemas Conhecidos
- 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).
