아티클

2021년 12월 현재 Android Talkback에서 업데이트 된 내용 살펴보기 1부

2022-01-25 15:08:35

안녕하세요, 엔비전스입니다.

삼성 갤럭시의 Android 11, One UI 3.0의 새로운 Talkback 살펴보기 아티클을 통하여 갤럭시 디바이스를 중심으로, Android 11에서 Talkback의 업데이트된 부분에 대해 살펴보았습니다. 본 문서에서는 지난 아티클에 이어 갤럭시 디바이스 기준, Android 11과 12버전에서의 Talkback에서 업데이트된 기능 중심으로 함께 살펴보도록 하겠습니다. 1부에서는 주로 읽기 방식 및 기능 위주로, 2부에서는 접근성 API에서의 업데이트 및 번역에서의 변경사항 등에 대해 다룹니다.

 

삼성의 갤럭시 Talkback과 Google의 기본 Talkback

지난 아티클에서도 언급한 바와 같이 Android 11로 업데이트되면서 갤럭시 제품군에서도 Voice Assistant가 아닌 Talkback으로 스크린 리더를 통합되었지만, 기본 Talkback과 달리 갤럭시 스토어에서 버전을 관리하고 있습니다. 따라서 Android 11 이상을 사용하는 갤럭시 스마트폰 사용자는 Google Play 스토어에서 업데이트되는 Android 접근성 도구 모음 앱에 포함된 Talkback은 사용할 수 없으며, 갤럭시 스토어에서 업로드된 버전으로만 사용 가능합니다.

따라서 일반 Talkback과 일부 기능 혹은 버전 정보에서의 차이가 발생할 수 있습니다. 예를 들어 일반 Talkback의 최신 버전은 12.1이지만 갤럭시 Talkback의 최신 버전은 13.0이며 뒤에서 살펴볼 창간 탐색 기능은 Android 11기준 구글 Talkback에서는 2021년 11월에 업데이트되었지만 갤럭시 Talkback에서는 12월에 업데이트되었습니다.

다음은 Android 11 또는 12버전의 최신 Talkback에 업데이트된 기능들입니다.

 

Android 11, 12 공통

창 단위 탐색 추가

Talkback에서는 글자, 단어, 줄, 단락, 제목, 링크, 컨트롤 등의 여러 요소 및 읽기 단위로 이동하는 기능을 제공하고 있습니다. 이러한 빠른 탐색 기능을 이용하여 스크린 리더 사용자는 특정 요소로 빠르게 이동이 가능합니다.

이번 업데이트 버전에서는 키보드 단축키뿐만 아니라 빠른 탐색 제스처로도 창 단위로 탐색할 수 있는 방법이 추가되었습니다. 기본적으로, Android의 화면은 시계, 배터리 잔량, 와이파이 세기 등이 표시되고 있는 상단 영역과 메인 화면 영역, 그리고 스마트폰 설정에 따라 하단의 홈, 최근 앱, 뒤로 가기 버튼이 있는 하단 내비게이션 바 영역이 있으며, 이 영역은 창 단위로 분류됩니다.

예를 들어 편집창을 활성화하여 키보드가 화면에 표시되는 경우 키보드라는 별도의 창이 기존 화면의 크기를 줄이고 아래에 나타나는 형태인데, 이 스크린 키보드 영역도 창에 해당합니다.

Talkback의 이전 버전까지는 현재 초점이 메인 창에 위치한 경우 상단, 하단 혹은 키보드와 같은 다른 창으로 이동하려면 해당 창 영역을 터치해야만 이동이 가능했으나 현재는 빠른 탐색 제스처를 이용하여 창간 탐색이 가능합니다. 창 사이를 이동하는 제스처를 사용할 경우 다음의 특징을 참고합니다.

  1. 창의 제목을 읽고 해당 창에서 가장 마지막에 초점을 맞추었던 곳으로 이동합니다.
  2. 메인 창 제목은 화면 액티비티의 setTitle 혹은 activity_label 문자열을 참조하여 제목을 읽으며 해당 제목이 없을 경우 앱 네임을 읽습니다.
  3. Fragment에 accessibilityPaneTitle 속성을 추가하더라도 해당 문자열은 창 제목으로 사용되지 않습니다.

위의 특징을 기반으로 생각했을 때 앱을 개발할 때 각 액티비티에는 setTitle 메서드를 사용하여 정확한 화면 제목을 주어야 한다는 것은 중요한 부분이라 할 수 있습니다.

 

자동 초점 관리

사용자가 Talkback의 초점을 특정 객체에 두었을 때, 그 객체가 사라지게 되면 기존에는 Talkback의 초점이 완전히 초기화되어 아무 소리도 나지 않아 상황을 예측하기 어려웠습니다.

그러나 이번 버전부터는 Talkback이 초점을 가진 객체가 화면에서 사라지거나, 접근성 초점을 보낼 수 없는 상태가 되면, 포커스가 초기화되지 않고 가장 첫 요소에 포커스 되며 해당 내용을 읽습니다. 따라서 개발적인 관점에서 화면 전환이 fragment 단위로 일어났을 때 해당 레이아웃에 accessibilityPaneTitle 속성을 제공하지 않았더라도, 기존에는 아무런 소리가 나지 않았던 부분에서 이제는 어느 정도 화면 변화를 인지할 수 있습니다. 또한 초점을 잃었더라도 상단의 첫 요소로 이동하면서 음성 피드백을 하므로 현 상황을 조금 더 인지할 수 있게다만  되었습니다.

다만 Talkback 자체적으로 초점을 관리해 준다 하더라도 접근성 측면에서 스크린 리더 사용자가 맥락상 연속적으로 탐색이 이어질 수 있도록 특정 요소가 사라질 때는 관련된 요소로 초점을 이동시켜 주는 것은 여전히 중요하겠습니다.

 

앱뷰에서 레이블이 없는 요소에 인식 가능한 텍스트를 알리는 기능 추가(영문 한정)

안타깝게도 앱 화면에서 대체 텍스트조차 누락되어 각 요소가 어떤 요소인지조차 알 수 없는 경우가 상당히 많습니다. 몇 년 전 크롬에서는 레이블이 없는 img 태그에 대체 텍스트를 인공지능 기술을 사용하여 추가하는 기능을 도입하였는데 Talkback에서도 비슷한 기능이 들어가게 되었습니다. 현재는 contentDescription 자체가 없는 요소에 초점을 맞추면 영문 텍스트가 있을 경우 이를 읽어주며 아직 한글은 지원하지 못합니다. 또한 크롬과는 달리 OCR 기능으로 텍스트만 읽어줍니다.

대체 텍스트는 접근성에서 아무리 강조해도 지나침이 없습니다. 앱 개발 시 대체 텍스트를 추가하는 것이 당연한 작업처럼 될 그 날을 바라봅니다.

 

ImageView를 위한 이미지 요소 유형 추가

기존에는 앱뷰 화면에서 클릭 이벤트가 없는, 즉 클릭 동작이 없는 ImageView에 대체 텍스트를 추가하면 아무런 유형 정보를 읽지 않았습니다. 그래서 스크린 리더 사용자는 해당 요소가 일반 텍스트인지, 이미지에 대체 텍스트 형태로 추가를 한 것인지에 대한 정보를 구분할 수 없었습니다.

그러나 업데이트된 버전에서는 이미지라는 요소 유형을 읽게 됩니다. 따라서 TextView의 텍스트는 요소 유형 정보 없이, ImageView는 이미지라는 요소 유형 정보와 함께 텍스트 내용을 읽어주므로 이미지에 대한 부연 설명과 일반 텍스트에 대한 것임을 명확히 구분할 수 있게 되었습니다. 다만 ImageView에서 클릭 이벤트를 수신하여 실행 가능한 상태가 되면 요소 유형을 버튼으로 읽습니다.

댓글 0
댓글을 작성하려면 해주세요.