Inspekcja i debugowanie

Sprawdź

Istnieje kilka narzędzi, które pomogą Ci szybko sprawdzić swoje treści pod kątem ułatwień dostępu:

  • Pakiet ułatwień dostępu na Androida: zawiera menu ułatwień dostępu, Przeczytaj na głos, Switch Access i TalkBack, które zapewniają wgląd w to, jak semantyka aplikacji działa w przypadku użytkowników tych technologii. Zalecamy testowanie z użyciem technologii wspomagających Androida, ponieważ jest to najlepszy sposób na zrozumienie, jak będą się czuć użytkownicy z potrzebami dotyczącymi dostępności.
  • Inspektor układu: umożliwia sprawdzanie i debugowanie semantyki każdego komponentu oraz pomaga wykrywać brakujące lub nieprawidłowe informacje.
  • aplikacja Accessibility Scanner: skanuje ekran i wyświetla sugestie dotyczące ułatwień dostępu, wskazując przy tym typowe problemy;

Debuguj

W komponie, systemie semantycznym i usługach ułatwień dostępu na Androidzie możesz napotkać nieoczekiwane zachowania ułatwień dostępu, które są trudne do zlokalizowania. Właściwości semantyczne mogą pomóc zrozumieć, dlaczego komponenty działają w taki, a nie inny sposób.

Problemy z zachowaniem ułatwień dostępu możesz debugować za pomocą Inspector układu w Android Studio, TreeDebug w ustawieniach dewelopera TalkBack lub ComposeTestRule printToLog. Wszystkie te narzędzia mogą udostępniać informacje o węzłach (i ich właściwościach), które są dostępne dla usług ułatwień dostępu przez Compose.

W tym przykładzie do debugowania ekranu z 3 elementami, w których przypadku włączone są usługi ułatwień dostępu, użyto narzędzia Inspektor układu. Pierwszy element nie jest zaznaczony, a drugi nie powoduje żadnej reakcji. Aby znaleźć potencjalne problemy, możesz sprawdzić właściwości semantyczne.

Drzewo komponentów w inspektorze układu zawiera informacje o granicach, parametrach i innych powiązanych z elementem informacjach semantycznych. W drzewie rozpoznane są wszystkie 3 elementy:

Inspektor układu ze wszystkimi 3 elementami
Rysunek 2. Narzędzie Layout Inspector ze wszystkimi 3 elementami

Pierwszy element ma zastosowaną właściwość hideFromAccessibility. Oznacza to, że element może być oznaczony jako ukryty w drzewie semantycznym lub zasłonięty przez element dekoracyjny.

Layout Inspector: pierwszy element z hideFromAccessibility
Rysunek 3. Layout Inspector: pierwszy element z hideFromAccessibility.

Drugi element ma właściwość focus, ale nie ma atrybutu onClick, tak jak poprzedni element. Może to oznaczać, że brakuje modyfikatora clickable, przez co usługa dostępności, taka jak TalkBack, może nie przekazywać użytkownikowi sygnału o działaniu:

Inspektor układu: drugi element z akcentem
Rysunek 4. Inspektor układu: drugi element z focused.

Trzeci element tekstowy ma wszystkie niezbędne właściwości: można go zaznaczyć, ma atrybut onClick i zastosowane inne dodatkowe właściwości semantyczne, dlatego jest interpretowany zgodnie z oczekiwaniami.

Narzędzie Layout Inspector: trzeci element z wszystkimi interfejsami API.
Rysunek 5. Layout Inspector: trzeci element ze wszystkimi interfejsami API.

W ten sposób możesz użyć narzędzi do debugowania, aby sprawdzić, dlaczego niektóre komunikaty lub wybory nie są wykonywane przez usługi ułatwień dostępu.