Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Android Accessibility (Google I/O '17)

Android Accessibility (Google I/O '17)

Shibuya.apk #16の発表資料です。

shibuya.apk #16 - connpass
https://shibuya-apk.connpass.com/event/59671/

Rui Kowase

June 22, 2017
Tweet

More Decks by Rui Kowase

Other Decks in Technology

Transcript

  1. Accessibility関連セッション(Google I/O ‘17) • What's New in Android Accessibility •

    Pragmatic Accessibility: A How-To Guide for Teams • Designing for the Next Billion Users: Accessibility UX Insights from the Developing World • Android Go • Best Practices to Slim Down Your App Size 3
  2. Agenda • Accessibility • Design ◦ for Usability ◦ for

    Connectivity 4 • Test • Develop ◦ for Usability ◦ for Connectivity
  3. Testing • Manual Testing ◦ TalkBack ◦ Switch Access ◦

    BrailleBack ◦ Voice Access (beta) • Automated testing ◦ Espresso ◦ Robolectric • Testing with analysis tools ◦ Accessibility Scanner ◦ Node tree debugging ◦ UI Automator Viewer ◦ Lint • User testing 26
  4. Testing • Manual Testing ◦ TalkBack ◦ Switch Access ◦

    BrailleBack ◦ Voice Access (beta) • Automated testing ◦ Espresso ◦ Robolectric • Testing with analysis tools ◦ Accessibility Scanner ◦ Node tree debugging ◦ UI Automator Viewer ◦ Lint • User testing 27
  5. Labeling UI Elements - 動的 if (mediaCurrentlyPlaying) { playPauseImageView.setImageResource(R.drawable.ic_pause); //

    In res/values/strings.xml, "pause" contains a value of "Pause". playPauseImageView.setContentDescription(getString(R.string.pause)); } else { playPauseImageView.setImageResource(R.drawable.ic_play); // In res/values/strings.xml, "play" contains a value of "Play". playPauseImageView.setContentDescription(getString(R.string.play)); } “pause” “play” 33
  6. まとめ • Design ◦ 最低限のコントラストを保つ ◦ 色だけで情報を表現しない ◦ 最低限のタップ領域を確保する ◦

    関連する要素はグルーピングする ◦ 標準のUIパーツを使う ◦ XMLのcontentDescription属性を設定する ◦ 状態を説明に含めない ◦ 簡潔な説明にする ◦ ネットワーク環境毎のオプションをつける ◦ コンテンツを徐々に描画する ◦ よく使われるコンテンツを先行読み込みする ◦ オフラインであることを UIに表示する • Test ◦ Accessibility Scanner ◦ Android Studio Memory Monitor 41 • Develop ◦ Making Touch Targets Large ◦ Labeling UI Elements ◦ Use Proguard ◦ Shrink Resources ◦ Build Multiple APKs ◦ Use Vector Drawables ◦ Speeding up your Android Gradle builds
  7. 参考 Accessibility | Android Developers https://developer.android.com/guide/topics/ui/accessi bility/index.html 【Android】Accessibility関連セッションメモ (Google I/O

    '17) - Qiita http://qiita.com/rkowase/items/af6e9cfa721795aaa1b0 Android Goメモ (Google I/O '17) - Qiita http://qiita.com/rkowase/items/6d5f6a157ec7daa00f4 a 【Android】Google I/O 2017のSpeeding up your Android Gradle buildsで発表された10のTips - Qiita http://qiita.com/rkowase/items/808064f16272e131be6 3 42 What's New in Android Accessibility (Google I/O '17) - YouTube https://www.youtube.com/watch?v=h5rRNXzy1xo Pragmatic Accessibility: A How-To Guide for Teams (Google I/O '17) - YouTube https://www.youtube.com/watch?v=A5XzoDT37iM Accessibility UX Insights: Designing for the Next Billion Users (Google I/O '17) - YouTube https://www.youtube.com/watch?v=38fbB8wCPzg Android Go (Google I/O '17) - YouTube https://www.youtube.com/watch?v=CHKfKChZSE0