Known Issues
If you're experiencing any of the below issues, please contact us at helpdesk@deque.com or support.deque.com. We will then be able to notify you once it's resolved or of an identified workaround.
- axe DevTools Mobile only runs on native iOS and Android views. Hybrid platforms such as Cordova, Xamarin, and Flutter are not supported.
- Rules will not run in web views or rendered PDFs. To test against HTML content, please utilize axe DevTools for Web. axe Monitor supports scanning PDFs for accessibility.
axe DevTools Mobile Desktop App
Unable to connect to the database on Java 14+
To utilize the desktop app, please continue to use an earlier version of Java.
axe DevTools Mobile for iOS
axeDevToolsUIKit.xcframework
Views built with SwiftUI cannot be tested using this framework
Use the axeDevToolsXCUI framework in UITesting for SwiftUI views.
Custom rule support is available only in Swift
The custom rule API is not open to Objective-C.
False Positives: CollidingViews, InScrollView, SupportsDynamicType
We are actively working on fixes for the following false positives and will update this list as fixes are released.
CollidingViews
Currently the CollidingViews rule utilizes the size of the UILabel
frame. When the frame is larger than the visible text, it may incorrectly flag text as colliding with another element on the screen.
InScrollView
InScrollView may report issues for text within banner-behaving elements. To make these elements available to those that require larger text, use UILargeContentViewer
.
SupportsDynamicType
You may see false positives in the following scenarios:
- If using the
UIContentSizeCategoryDidChange
notification, the framework may incorrectly report that text does not respond to Dynamic Type in UITests. - If using
UIFontMetrics
with the default iOS font. - If using
NotificationCenter.default.addObserver(forName:.., object:.., queue:.., using:..)
to respond to theUIContentSizeCategoryDidChange
notification. - If using
traitCollectionDidChange
on a text's parent view or view controller to respond to Dynamic Type. - If using
UIButton.Configuration
in iOS 15+. - SupportsDynamicType may report issues for text within banner-behaving elements. To make these elements available to those that require larger text, use
UILargeContentViewer
. - Text within collection view cells.
axeDevToolsXCUI.xcframework
SwiftUI Picker and UIKit Picker
Picker views in SwiftUI and UIKit may cause the framework to get stuck on simulators or devices.
The "Visible to User" filter may not work on views behind custom-built modals
Help make this filter more robust by providing an example snippet of how the modal is implemented to the email above.
Landscape orientation is not formally supported at this time
This will be addressed in a later version.
False Positives: A11yElementFocusBox, CollidingViews, InScrollView
We are actively working on fixes for the following false positives and will update this list as fixes are released.
Various rules may report false positives for elements within header or footer behaving elements (ie: navigation or tab bars), on simulators without a home button.
A11yElementFocusBox
For views that are off-screen, this rule may incorrectly report the VoiceOver focus box is not encapsulating the view.
CollidingViews
Currently the CollidingViews rule utilizes the size of the UILabel
frame. When the frame is larger than the visible text, it may incorrectly flag text as colliding with another element on the screen.
InScrollView
InScrollView may report issues for text within banner-behaving elements. To make these elements available to those that require larger text, use UILargeContentViewer
.
axe DevTools Mobile for Android
Builds with r8 enabled throw an error
A build with r8 enabled may attempt to minify the axeDevTools library resulting in an error similar to:
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.** { *; }
Error message similar to: Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
If you encounter an error along the lines of `Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)`, please contact us at helpdesk@deque.com or support.deque.com for assistance. Under certain conditions, there may be two Compose root nodes existing at the same time.
False Positives: EditTextName, LabelInName
We are actively working on fixes for the following false positives and will update this list as fixes are released.
EditTextName
EditTextName may report issues for TextInputLayout
components.
LabelInName
Text that contains special characters, such as the '/' for 'or' will report issues for LabelInName.