Axe DevTools Mobile Veröffentlichungsnotizen vom 9. Juli 2025
9. Juli 2025
Was ist neu?
Die Benutzererfahrung der Navigation auf dem Axe DevTools Mobile Dashboard wurde aktualisiert, sodass Sie leichter zwischen verschiedenen Bereichen der Axe-Plattform navigieren können. Klicken Sie auf das Axe-Logo in der oberen linken Ecke des Dashboards, um zu anderen Axe-Produkten wie Axe Reports zu navigieren.
Bekannte Probleme
Wenn Sie eines der unten aufgeführten Probleme erleben, kontaktieren Sie uns bitte unter helpdesk@deque.com oder support.deque.com. Wir können Sie dann benachrichtigen, sobald es gelöst ist, oder Ihnen eine identifizierte Lösung mitteilen, falls keine aufgeführt ist.
- Axe DevTools Mobile führt automatisierte Tests auf nativen iOS-, nativen Android- und React Native-Anwendungen durch. Bitte wenden Sie sich an Ihren Deque-Ansprechpartner für Barrierefreiheitstestlösungen auf Ihrem Tech-Stack.
- Obwohl Sie möglicherweise einige Ergebnisse aus Web-Ansichten oder gerenderten PDFs erhalten, empfehlen wir dringend, Tests mit Axe DevTools for Web oder Axe Monitor durchzuführen, um die umfassendste Barrierefreiheitstests für das Web zu gewährleisten.
iOS
Color Contrast rule does not run when text and background colors are the same
Our Color Contrast rule depends on Machine Learning to detect text, which ensures that the text being scanned is visible to users of your application. In cases where the text contained in a view is the same color as the background, our Machine Learning algorithm is unable to detect if any text is present, so the Color Contrast rule does not run on this view.
Scans auf physischen Geräten mit iOS Analyzer 1.4.7 nicht möglich
Eine Konfigurationseinstellung im iOS Analyzer 1.4.7 verhindert das Ausführen von Scans und gibt die Meldung „Test fehlgeschlagen“ zurück. Um Scans auf einem physischen Gerät durchzuführen, aktualisieren Sie auf das neueste iOS Analyzer-Projekt.
Fehler im Analyzer-Projekt & Testen nach Bundle-ID in 2.8.1
Die Funktionalität beim Testen einer Anwendung durch Bundle-Identifier war in Version 2.8.1 defekt, was zu einem Fehler führte, der „Kein Zielanwendungspfad über Testkonfiguration angegeben: ...“ lautete. Aktualisieren Sie auf 2.8.2 oder die neueste Version, um den Fehler zu beheben. Aktualisieren Sie auf das Neueste im iOS Analyzer-Projekt.
„Konnte AxeResult nicht serialisieren“-Fehler im Analyzer-Projekt v1.2.0 & SDK v2.12.3
Das Scannen einiger Anwendungen mit dieser Version des Analyzers und SDKs würde zu einem „Konnte AxeResult nicht serialisieren“-Fehler führen. Aktualisieren Sie auf die neueste Version, um den Fehler zu beheben. Aktualisieren Sie auf das neueste iOS Analyzer-Projekt.Aktualisieren Sie auf das neueste iOS-SDK.
Falsch Positiv: LabelInName und LabelAtFront in SwiftUI & plattformübergreifenden Apps
Einige Bildschirme können aufgrund einer falsch gefundenen associatedText-Eigenschaft (#1622) falsche Positive mit LabelInName und LabelAtFront melden.
Supports Dynamic Type-Regel funktioniert nicht mit iOS 15 Pro-Simulator
Es gibt ein Problem, das den iPhone 15 Pro-Simulator betrifft und verhindert, dass die Supports Dynamic Type-Regel ausgeführt wird. Wenn Sie in die Supports Dynamic Type-Regel eingebunden sind, können Sie sie nicht mit einem iPhone 15 Pro-Simulator testen. Ein Fehler wurde bei Apple gemeldet.
Regeln gegen verschachtelte Steuerelemente
Beim Verbessern unserer Regeln stellten wir fest, dass in XCTest verschachtelte Steuerelemente nicht im Barrierefreiheitsbaum zurückgegeben werden. Ein Fehler wurde bei Apple gemeldet. (#1110)
ImageView Name-Regel benötigt Überprüfungsstatus für UIKit Apps
In UIKit-Apps ist ein Bild ohne `accessibilityLabel` standardmäßig nicht mit unterstützender Technologie fokussierbar.
Die von uns verwendeten Eigenschaften zur Überprüfung der Fokussierbarkeit von Apple können ungenau sein, wenn ein `accessibilityIdentifier` auf dem Bild festgelegt ist. Aufgrund dieses unerwarteten Verhaltens werden die Ergebnisse für ImageView Name-Probleme in UIKit-Apps als Überprüfung erforderlich gemeldet. Ein Fehlerbericht wurde bei Apple eingereicht. (#1633)
Falsch Positiv: In Scroll View, Label In Name, Label am Anfang und v2.11.0 Image View Name & ActiveControlName
Wir arbeiten aktiv an Lösungen für die folgenden Falsch Positiven und werden diese Liste aktualisieren, sobald Korrekturen veröffentlicht werden.
In Scroll View
Möglicherweise werden Probleme für Text in banner-verhaltenen Elementen gemeldet. Um diese Elemente für Personen bereitzustellen, die größere Texte benötigen, verwenden Sie UILargeContentViewer. (#622)
v2.11.0 Image View Name & Active Control Name
Wenn ein UIImageView ein `accessibilityIdentifier` gesetzt hat, aber nicht von VoiceOver fokussierbar ist und es fokussierbare Steuerelemente darin hat, kann ActiveControlName auf dem UIImageView ein Falsch Positiv melden. Das Entfernen des `accessibilityIdentifier` löst das Problem. Ein Fehler wurde bei Apple gemeldet. (#1633)
Label In Name and Label At Front
Diese beiden Regeln suchen das sichtbare Label eines Steuerelements unter den nahen Elementen, um den Regelstatus zu bestimmen. In einigen Ansichthierarchien kann der falsche nahe Text erkannt werden, was dazu führt, dass diese Regeln fehlschlagen. (#1622)
Android
Farbkontrastregel läuft nicht, wenn Text- und Hintergrundfarben identisch sind
Unsere Farbkontrastregel basiert auf maschinellem Lernen zur Texterkennung, was sicherstellt, dass der gescannte Text für die Benutzer Ihrer Anwendung sichtbar ist. In Fällen, in denen der Text in einer Ansicht die gleiche Farbe wie der Hintergrund hat, kann unser maschinelles Lernalgorithmus nicht erkennen, ob Text vorhanden ist, sodass die Farbkontrastregel auf dieser Ansicht nicht ausgeführt wird.
EditTextName auf Android 7 (SDK 24-25)
Apps, die mit XML geschrieben wurden und die Hint-Text-Funktion verwenden, könnten falsche Positive mit der EditTextName -Regel erleben. Hint-Text wurde erst in Android 8 (SDK 26) eingeführt. Die Verwendung dieses Elements in Ihrer XML-App weist den Hint-Text dem Wert des Texteingabefeldes zu. Neuere Versionen von Android sind besser darauf ausgelegt, diese Erfahrung zugänglich zu machen.
Um dieses Problem zu überwinden, empfehlen wir zunächst, Ihre Tests auf neueren Versionen von Android auszuführen. Wenn es jedoch wichtig ist, dass die App auf älteren Android-Versionen zugänglich ist, sollten Sie erwägen, die Nutzung der hintText Funktion zu vermeiden, da sie nicht offiziell unterstützt wird.
Android verborgene Ansichten, die Ergebnisse zurückgeben
Es können Ergebnisse für Ansichten angezeigt werden, die hinter anderen Ansichten auf dem Bildschirm verborgen sind. Diese verborgenen Ansichten sind für unterstützende Technologien nicht zugänglich, aber Axe DevTools Mobile meldet sie dennoch als Probleme.
Wir arbeiten an einer Lösung für dieses komplexe Problem. In der Zwischenzeit können Sie die entsprechenden Probleme ignorieren, wenn TalkBack diese Ansichten nicht erreichen kann. Sie erfordern keine Korrektur, um die Barrierefreiheit zu gewährleisten.
Fehler beim Ausführen der ML Kit Texterkennung
Die Texterkennung mit ML Kit ist in vielen der Axe DevTools Mobile-Regeln erforderlich, um die Genauigkeit der Ergebnisse sicherzustellen. Die ML Kit-Bibliothek sollte automatisch importiert werden, wenn Sie in Ihren automatisierten Espresso- oder UIAutomator-Tests auf Axe DevTools Mobile verweisen. In einigen Fällen erfolgt der automatische Import jedoch nicht, und Sie sehen die folgende Fehlermeldung im Logcat:
Axe DevTools Android: Error while running mlKit Text Detection: MlKitContext has not been initialized.
Um dieses Problem zu beheben, sollten Sie die ML Kit-Bibliothek manuell in Ihr Projekt importieren. In der build.gradle -Datei Ihrer Anwendung fügen Sie Folgendes unter Abhängigkeiten hinzu:
implementation 'com.google.mlkit:text-recognition:16.0.1'
Abstand von Berührungszielen und Jetpack Compose
Die Regel zum Abstand von Berührungszielen läuft derzeit nicht auf Schiebereglern, die in Jetpack Compose geschrieben wurden. Derzeit kann keine Maßnahme ergriffen werden. Es ist jedoch bald ein Fix verfügbar!
Fehler beim lokalen Speichern von Ergebnissen auf API 30
Unter Android API 30 gibt es an einem der Orte, an denen wir versuchen, Ergebnisse lokal zu speichern, einen Berechtigungsfehler. Das Ergebnis wird trotzdem als JSON-Datei gespeichert, auch wenn dieser Fehler angezeigt wird. Der Fehler kann unterdrückt werden, indem der Code im folgenden Block auskommentiert wird:
def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
executable "${android.getAdbExecutable().toString()}"
args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'
// finalizedBy {
// fetchAndroidFolderAxeReportsTask
// }
}
Please note that this code should only be commented out for API 30 as it will cause problems when saving locally for other API levels.
Bildlauf-Erkennung in Hybrid-Apps und plattformübergreifenden Apps
In einigen Hybrid- und plattformübergreifenden Apps können wir unerwartete Ergebnisse zurückgeben, wenn Elemente in einer Bildlaufansicht teilweise vom Bildschirm verschwunden sind. Um ein Element auf Barrierefreiheit zu testen, stellen Sie sicher, dass es vollständig auf dem Bildschirm ist, bevor Sie den Scan durchführen.
Analyzer App: Schwebender Aktionsbutton verschwindet
Mit API 31 (Android 12) wurde die Möglichkeit eingeführt, nicht-systemeigene Überlagerungen auszublenden. Um die Axe Analyzer-App zu nutzen, stellen Sie bitte sicher, dass diese Einstellung nicht aktiviert ist. Wenn Sie sich entschieden haben, diese Funktion aufgrund ihrer Sicherheitserweiterungen zu nutzen, empfehlen wir, sie für interne Testversionen deaktiviert zu lassen, bei denen Sie sicher Testdaten verwenden und so Sicherheitsprobleme eliminieren können. Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.
Um die Axe Accessibility Analyzer App zu nutzen, aktualisieren Sie alle Aufrufe der Methode setHideOverlayWindows(true) zu setHideOverlayWindows(false) auf den betroffenen Aktivitätenfenstern.
Screenshot fehlt (schwarzes Feld) im Dashboard
Um die volle Funktionalität von Axe DevTools für Mobile freizuschalten, stellen Sie sicher, dass Screenshots aktiviert sind. Wir empfehlen, Screenshots in einer Debug- oder Testversion Ihrer App zu aktivieren, die Mock-Daten verwendet, um Sicherheitsbedenken zu vermeiden. Sehen Sie sich unseren Leitfaden zum Aktivieren von Screenshots in Android-Apps an.
Absturz, wenn `minifiedEnabled` auf true gesetzt ist
Wenn Sie Ihren Build minimieren, sehen Sie einen Absturz mit einem Fehlerprotokoll, das berichtet, dass ein Adapter nicht gefunden werden konnte, wenn Sie versuchen, sich bei der Axe DevTools-Bibliothek anzumelden. Deaktivieren Sie die Minimierung für Ihre Debug-Builds mit implementierten Axe DevTools. (#729)
Builds mit aktiviertem r8 werfen einen Fehler
Ein Build mit aktiviertem r8 versucht möglicherweise die Minimierung der axeDevTools-Bibliothek, was zu einem Fehler führt, der ähnlich ist wie:
Caused by: java.lang.NullPointerException: throw with null exception
at g.b.b.a$a.a(Unknown Source:1)
at g.b.b.a$a.a(Unknown Source:0)
at g.b.b.a.a(AccessToken.java:190)
To resolve this error add the following line to your ProGuard file to keep axeDevTools classes:keep class com.deque.** { *; }
Fehlermeldung ähnlich wie:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
oder: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?
Die Compose APIs sind veraltet, bitte verwenden Sie die layout-agnostischen APIs , um weiterhin Updates zu erhalten. Wenn Sie die Compose APIs weiterhin verwenden und auf einen Fehler stoßen, der etwa lautet: `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)` oder `No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?`, lesen Sie bitte nach bei Compose setTestTag API.
Protokollnachricht:MlKitContext has not been initialized
Wenn Sie diese Nachricht erhalten, könnten einige Regel-Ergebnisse nicht wie erwartet zurückgegeben werden, wenn diese Regel künstliche Intelligenz nutzt. Betroffene Regeln umfassen Farbkontrast, Fokusierter Text und Geschachtelte Elementnamen. (#841)
MAUI: Regel für Edit Text Name
Aufgrund von Einschränkungen der MAUI-App-Architektur innerhalb des Android-Ökosystems wird die Edit Text Name-Regel im Dashboard als Überprüfung erforderlich angezeigt, wenn ein Fehler für die SDK-Version 5.5.0 und höher vermutet wird. Bitte bestätigen Sie das korrekte Verhalten manuell in diesem Fall.
Natives Android: Benutzerdefinierte Dialoge / Modale
Wenn Sie benutzerdefinierte Dialoge oder Modale implementieren, die nicht die nativen Steuerungen erweitern, können Sie Ergebnisse für Ansichten hinter dem Modal erhalten. In diesem Fall empfehlen wir, unser Tool nicht gegen diese benutzerdefinierten Modale oder Dialoge auszuführen und sie stattdessen manuell zu überprüfen, um sicherzustellen, dass sie wie gewünscht mit assistiver Technologie funktionieren.
Web-Dashboard
Fehlender Screenshot
Wenn der Screenshot auf der Seite mit den Scan-Details fehlt, verhindert möglicherweise Ihre App, dass Screenshots gemacht werden. Oftmals geschieht dies aus Sicherheitsgründen in Ihrer Produktionsanwendung. Erwägen Sie, diese Anforderung für Ihren Test-Build zu entfernen, um die volle Funktionalität im Axe DevTools Mobile-Dashboard zu ermöglichen.
Einige Android-Scan-Namen sind unformatiert
Einige Android-Scan-Namen, die standardmäßig auf den Bildschirmtitel gesetzt sind, erscheinen als vollständiger Klassenname einschließlich des Paketnamens. In einer zukünftigen Version wird dies behoben, sodass der Bildschirmtitel zu einem besser lesbaren Namen formatiert wird. Als Workaround können Sie den Scan-Namen von dem Dashboard oder den Frameworks aus festlegen. (#1643)
