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の担当者までお問い合わせください。
  • WebビューやレンダリングされたPDFからいくつかの結果が得られる場合がありますが、Web用の包括的なアクセシビリティテストを実現するには、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テキスト検出の実行中のエラー

多くのAxe DevTools Mobileのルールでは、結果の精度を確保するためにML Kitのテキスト検出が必要です。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 Analyzerアプリを利用するには、この設定をオフにしてください。この機能を利用してセキュリティを強化している場合は、内部テストビルドではオフにしてテストデータを安全に利用し、セキュリティの懸念を排除することをお勧めします。 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のフル機能をアンロックするには、スクリーンショットを有効にしてください。セキュリティの懸念を避けるため、モックデータを使用したアプリのデバッグ版またはテスト版でスクリーンショットを有効にすることをお勧めします。「⟦0⟧」に関するガイドをご覧ください。 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 Dashboardでの完全な機能を利用することを検討してください。

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

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