axe DevTools Mobile 2025年8月14日リリースノート

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

2025年8月14日

Not for use with personal data

コンポーネントバージョン

iOS

  • iOS SDK (axeDevToolsXCUI v2.17.0)
  • iOS Analyzer (axe-devtools-mobile-analyzer v1.5.0)
  • iOS Appium Driver (axe-appium-xcuitest-driver v1.7.0) (XCUITest v9.10.4からフォーク)

更新方法: iOS SDKiOS AnalyzeriOS Appium Driver

Android

  • Android SDK (axe-devtools-android v7.1.0)
  • Android Analyzer (axe Accessibility Analyzer v2.1.0)
  • Android Appium Driver (axe-appium-uiautomator2-driver v1.5.0) (UiAutomator2 v4.2.8からフォーク)

更新方法 Android SDKAndroid AnalyzerAndroid Appium Driver

修正

iOS

  • 次のルールの精度を向上: ネストされた要素の名前、タッチターゲットサイズ、タッチターゲット間隔

Android

  • MLKitが実行されない場合、スキャンのルートビューには「要確認」項目が報告され、他の結果が不正確である可能性を示します。次の場合の詳細は以下をご覧ください: MLKitを手動でインポートする方法、この問題が発生した場合。
  • アクティブビュー名ルールの精度向上

更新

Android API レベルサポート

  • モバイルアナライザーアプリはAPIレベル36をサポートしました

既知の問題

以下の問題が発生した場合は、次のメールにご連絡ください: helpdesk@deque.com または support.deque.com。問題が解決した場合、または特定の回避策がリストされていない場合は通知いたします。

important
  • axe DevTools Mobileの自動テストは、ネイティブiOS、ネイティブAndroid、React Nativeアプリケーションで実行されます。お使いの技術スタックでのアクセシビリティテストソリューションについては、Deque担当者にお問い合わせください。
  • ウェブビューやレンダリングされたPDFから結果を取得することも可能ですが、ウェブのアクセシビリティテストを最も包括的に行うには、axe DevTools for Webまたはaxe Monitorを使用することを強くお勧めします。

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.

iOS Analyzer 1.4.7で物理デバイス上でのスキャンが実行できない

iOS Analyzer 1.4.7の設定によりスキャンが実行できず、「テスト失敗」というメッセージが返されます。物理デバイスでのスキャンを実行するには、 最新のiOS Analyzerプロジェクトに更新してください。

AnalyzerプロジェクトとバンドルIDによるテストでのエラー(2.8.1にて)

バンドル識別子によるアプリケーションテストの機能がバージョン2.8.1で破損し、次のタイトルのエラーが発生しました: "No target application path specified via test configuration: ..."。エラーを解決するには、バージョン2.8.2または最新バージョンに更新してください。 iOS Analyzer プロジェクト内で最新バージョンに更新してください。

「AxeResult をシリアライズできません」エラー:Analyzer プロジェクト v1.2.0 & SDK v2.12.3

このバージョンのアナライザーとSDKを使用して一部のアプリケーションをスキャンすると、 "Could not Serialize AxeResult" というエラーが発生する場合があります。エラーを解決するには、最新バージョンに更新してください。 最新のiOSアナライザープロジェクトに更新してください。最新のiOS SDKに更新してください。

誤検出: SwiftUI & クロスプラットフォームアプリでの LabelInName と LabelAtFront

一部の画面では、誤った associatedText プロパティが見つかるため、LabelInName と LabelAtFront が誤検出を報告する場合があります(#1622)。

iOS 15 Pro シミュレーターでの Supports Dynamic Type ルールが動作しない

iPhone 15 Pro シミュレーターに影響を与える問題があり、Supports Dynamic Type ルールの実行を妨げています。Supports Dynamic Type ルールを使用する場合、iPhone 15 Pro シミュレーターを使用してのテストはできません。Appleにバグレポートを提出しています。

ネストされたコントロールに対するルール

ルールの改善を検討する中で、XCTestではアクセシビリティツリーにネストされたコントロールが返されないことが判明しました。Appleにバグレポートを提出しています。(#1110)

UIKitアプリでの ImageView Name ルールのレビュー結果の必要性

UIKitアプリでは、 accessibilityLabel のない画像は、デフォルトで支援技術を使用してフォーカスできません。
Appleから取得したフォーカス可能性をチェックするプロパティが、 accessibilityIdentifier に設定された画像では不正確な場合があります。この予期しない動作により、UIKitアプリにおける ImageView Name の問題について Needs Review として報告されます。Appleにバグリポートを提出しています。(#1633)

誤検出: スクロールビュー内、Label In Name、Label at Front、および v2.11.0 の Image View Name & ActiveControlName

次の誤検出に対する修正を積極的に進めており、修正がリリースされ次第、このリストを更新します。

In Scroll View
バナーのような振る舞いをする要素内のテキストに関して問題が報告されることがあります。これらの要素をより大きなテキストが必要な人に利用可能にするには、 UILargeContentViewerを使用してください。(#622)

v2.11.0 Image View Name & Active Control Name
UIImageViewに accessibilityIdentifier が設定されているがVoiceOverでフォーカスできず、その中にフォーカス可能なコントロールがネストされている場合、ActiveControlNameはUIImageViewに対する誤検出を報告することがあります。 accessibilityIdentifier を削除することで問題が解決されます。Appleにバグレポートを提出しています。(#1633)

Label In Name and Label At Front
これらの2つのルールは、コントロールの可視ラベルを近くの要素から探し、ルールの状態を判定するのに役立ちます。一部のビュー階層では、近くのテキストが誤って検出されることがあり、これがこれらのルールの失敗を引き起こす場合があります。(#1622)

Android

テキストと背景色が同じ場合、色のコントラストルールは実行されません

私たちの色のコントラストルールは、テキストを検出するために機械学習に依存しており、スキャンされるテキストがアプリケーションのユーザーにとって可視であることを保証しています。ビューに含まれるテキストが背景と同じ色の場合、機械学習アルゴリズムはテキストがあるかどうかを検出できず、色のコントラストルールはこのビューでは実行されません。

EditTextName (Android 7 SDK 24-25で)

ヒントテキスト機能を利用してXMLで書かれたアプリでは、 EditTextName ルールで誤検出が発生することがあります。ヒントテキストはAndroid 8(SDK 26)まで導入されませんでした。XMLアプリでこの要素を使用することで、ヒントテキストがテキスト入力フィールドの値に割り当てられます。より新しいバージョンのAndroidは、このエクスペリエンスをよりアクセシブルにするのに適しています。

この問題を克服するための最初の推奨は、Androidの新しいバージョンでテストを実行することです。ただし、古いAndroidバージョンでもアプリがアクセシブルであることが重要な場合は、 hintText 機能の使用を避けることを検討してください。これは公式にサポートされていないためです。

Androidの隠れたビューの返す結果

画面上で他のビューの背後に隠れているビューに関する結果が表示されることがあります。これらの隠れたビューは支援技術では利用できませんが、axe DevTools Mobile はそれらを問題として報告します。

この複雑な問題の修正に取り組んでいます。それまでは、TalkBackがこれらのビューに届かない場合、対応する問題を無視してかまいません。それはアクセシビリティを確保するために修正を必要としません。

ML Kitテキスト検出の実行中のエラー

ML Kitテキスト検出は、結果の正確性を保証するためにaxe DevTools Mobileの多くのルールで必要です。axe DevTools Mobile を自動化された Espresso または UIAutomator テストで参照する際、ML Kit ライブラリーは自動的にインポートされるべきです。しかし、ある場合には自動インポートが行われず、logcatに次のエラーが表示されます。

Axe DevTools Android: Error while running mlKit Text Detection: MlKitContext has not been initialized.

この問題を解決するには、ML Kit ライブラリーをプロジェクトに手動でインポートする必要があります。アプリケーションの build.gradle ファイル内で、dependenciesの下に次を追加してください。

implementation 'com.google.mlkit:text-recognition:16.0.1'
タッチターゲットスペーシングとJetpack Compose

タッチターゲットスペーシングルールは、Jetpack Compose で書かれたスライダーコンポーネントでは現在実行されていません。現時点では何もできませんが、修正が間もなく行われます!

API 30でローカル保存時のエラー

Android API 30では、結果をローカルに保存しようとする場所の一つにパーミッションエラーがあります。このエラーが表示されていても結果はJSONファイルとして保存されます。このエラーを抑制するには、次のブロック内のコードをコメントアウトしてください。
def clearDirectoryTask = task('clearDirectoryTask', type: Exec, group: 'reporting') {
executable "${android.getAdbExecutable().toString()}"
args 'shell', 'rm', '-r', '/storage/emulated/0/Documents/AxeTestCases'
// finalizedBy {
// fetchAndroidFolderAxeReportsTask
// }
}

このコードは、他のAPIレベルでローカル保存する際に問題を引き起こすため、API 30のみでコメントアウトする必要があることに注意してください。

ハイブリッドアプリとクロスプラットフォームアプリでのスクロール検出

いくつかのハイブリッドおよびクロスプラットフォームアプリでは、スクロールビュー内の項目が画面外の一部にある場合、予期しない結果が返されることがあります。アクセシビリティのために要素をテストするには、スキャンを行う前にその要素が画面に完全に表示されていることを確認してください。

アナライザーアプリ: フローティングアクションボタンが消える

API 31(Android 12)では、非システムオーバーレイを隠す機能が導入されています。axeアナライザーアプリを使用するには、この設定がオンになっていないことを確認してください。この機能をセキュリティの強化のために使用することを選択した場合は、内部テストビルドではオフにしておくことをお勧めします。そうすることで、テストデータを安全に利用し、セキュリティの問題を排除できます。 Note: this setting does not affect Google's accessibility scanner app as it's considered a system overlay.

axe Accessibility Analyzerアプリを利用するには、影響を受けるアクティビティウィンドウ上のメソッド呼び出しを更新してください。 setHideOverlayWindows(true) setHideOverlayWindows(false)

ダッシュボードでスクリーンショットが欠けている(黒いボックス)

axe DevTools for Mobileの全機能を解放するには、スクリーンショットが有効になっていることを確認してください。セキュリティ上の懸念を避けるため、モックデータを使用したアプリのデバッグまたはテスト版でスクリーンショットを有効にすることをお勧めします。こちらのガイドをご覧ください。 Androidアプリでスクリーンショットを有効にする方法

`minifiedEnabled`がtrueに設定されているとクラッシュ

ビルドを最小化すると、axe DevToolsライブラリにログインしようとしたときにアダプターが見つからないというエラーログが報告されてクラッシュします。axe DevToolsを実装したデバッグビルドのために最小化を無効にしてください。(#729)

r8が有効なビルドはエラーを投げる

r8が有効なビルドでは、axeDevToolsライブラリを最小化しようとするため、以下のようなエラーが発生する可能性があります:
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)
このエラーを解決するには、axeDevToolsクラスを保持するために次の行をProGuardファイルに追加してください:
keep class com.deque.** { *; }

以下のようなエラーメッセージ:
Expected exactly '1' node but found '2' nodes that satisfy: (isRoot)
または: No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?

Compose APIは廃止されていますので、 レイアウトに依存しないAPI を使用してアップデートを受け取り続けてください。Compose APIを使用し続け、`1`ノードだけが期待されるが`2`ノードが見つかりました: (isRoot) のようなエラーが発生する場合、または`No View initialized, did you call AxeDevToolsCompose.setComposeTestRule()?` といったエラーが発生する場合は、 Compose setTestTag APIを参照してください。

ログメッセージ:MlKitContext has not been initialized

このメッセージが表示された場合、そのルールが人工知能を利用しているときにいくつかのルール結果が期待通りに返らない可能性があります。影響を受けるルールには、色のコントラスト、フォーカス可能なテキスト、およびネストされた要素名が含まれます。(#841)

MAUI: テキスト名ルールを編集

AndroidエコシステムでのMAUIアプリアーキテクチャのレンダリングの制限により、SDKバージョン5.5.0以上では、編集テキスト名ルールが失敗の可能性がある場合にダッシュボードで「レビューが必要」と表示されます。このケースについては、手動で正しい動作を確認してください。

ネイティブAndroid: カスタムダイアログ/モーダル

ネイティブコントロールを拡張していないカスタムダイアログまたはモーダルを実装している場合、モーダルの背後のビューに対する結果を得ることがあります。この場合、これらのカスタムモーダルまたはダイアログに対して私たちのツールを実行せず、手動でチェックして、支援技術が希望通りに動作するか確認することをお勧めします。

Webダッシュボード

スクリーンショットが欠けている

スキャン詳細ページにスクリーンショットが見つからない場合、アプリがスクリーンショットを取るのを防いでいる可能性があります。生産アプリケーションのセキュリティ上の理由であることが多いです。テストビルドの要求条件を削除して、axe DevTools Mobileダッシュボードの全機能を利用できるように考慮してください。

いくつかのAndroidスキャン名が未フォーマット

画面タイトルにデフォルト設定された一部のAndroidスキャン名は、フルクラス名(バンドル識別子を含む)として表示されます。将来のリリースで、画面タイトルがより読みやすい名前にフォーマットされるように解決される予定です。回避策として、ダッシュボードやフレームワークからスキャン名を設定できます。(#1643)