필요성
-
키보드 및 스위치 장치 사용자
물리적 키보드, 스위치 장치, 스크린 리더 등을 사용하는 사용자들도 있습니다.
-
접근성
시각 장애 사용자나 기타 접근성 도구를 사용하는 사용자가 앱을 논리적인 순서로 탐색할 수 있도록 해야 합니다.
-
사용 편의성
명확한 초점 표시와 논리적인 초점 이동 순서는 사용 편의성을 크게 향상시킵니다.
요약 설명모바일 애플리케이션 콘텐츠를 구축, 운영, 개선 및 유지 보수할 경우에 적용하는 것으로 모바일 전화기, 태블릿기기 등 모바일 기기에서 실행되는 모든 애플리케이션 및 콘텐츠를 WCAG 2.0(Web Content Accessibility Guidelines 2.0)에서 제시하고 있는 접근성 설계의 4가지 원칙 기준으로, 모바일 애플리케이션 콘텐츠의 설계 및 개발을 위한 지침을 제시하고 있습니다.
요약 설명의미나 기능을 갖는 모든 콘텐츠 요소는 초점이 적용되고, 초점은 논리적인 순서로 이동해야 합니다.
의미나 기능을 갖는 모든 콘텐츠 요소에 초점이 적용되고, 초점은 논리적인 순서로 이동해야 합니다. 터치 스크린을 사용하는 모바일 기기에서도 키보드·스위치·스크린 리더 등으로 동일하게 탐색할 수 있어야 합니다.WCAG 2.2 Guidelines : 2.4.3 Focus Order
WCAG 2.2 Guidelines : 2.4.7 Focus Visible
물리적 키보드, 스위치 장치, 스크린 리더 등을 사용하는 사용자들도 있습니다.
시각 장애 사용자나 기타 접근성 도구를 사용하는 사용자가 앱을 논리적인 순서로 탐색할 수 있도록 해야 합니다.
명확한 초점 표시와 논리적인 초점 이동 순서는 사용 편의성을 크게 향상시킵니다.
앱의 UI 요소를 논리적인 순서로 배치하여 사용자가 탐색할 때 초점이 자연스럽게 이동하도록 하며,
필요시
android:nextFocusDown, android:nextFocusUp,
android:nextFocusLeft, android:nextFocusRight
속성을 사용하여 초점 순서를 제어합니다.
contentDescription 속성을 사용하여 초점이 있는 요소의 의미와 기능을 명확히 전달합니다.
요약 설명사용자 입력 및 컨트롤은 조작 가능한 충분한 크기로 제공해야 합니다.
모바일 앱 접근성 요구(KS X 3253:2025 등 반영)에서는 조작 가능 영역을 가로·세로 각각 24×24 CSS 픽셀(px) 이상으로 두는 것을 전제로 하며, 터치스크린에서 인접 요소와의 간격을 확보해 실수 터치를 줄입니다.WCAG 2.2 Guidelines : 2.5.8 Target Size (Minimum)
WCAG 2.2 Guidelines : 2.5.5 Target Size (Enhanced) (Level AAA)
작은 컨트롤이나 가까이 배치된 컨트롤은 사용자에게 불편을 줄 수 있으며, 특히 손이 크거나 섬세한 조작이 어려운 사용자들에게 문제가 될 수 있습니다.
충분한 크기와 간격은 실수로 잘못된 버튼을 누르는 등의 오류를 줄여줍니다.
충분한 크기와 간격은 시각 장애나 운동 장애를 가진 사용자들이 모바일 앱을 쉽게 사용할 수 있도록 하는 데 중요한 역할을 합니다.
기준(신규 MACAG·WCAG 2.5.8) : 버튼·링크·입력 필드 등의 조작 가능 영역은 가로·세로 각각 24×24 CSS px 이상이 되도록 합니다(운영체제 기본 컨트롤·본문 링크·지도 핀 등 예외는 WCAG 예외 조항 참고).
권장(모바일 앱 접근성 항목별 준수 가이드) : 화면 크기와 관계없이 컨트롤의 가로·세로를 각각 약 9mm 이상으로 두는 것이 바람직합니다(물리 크기·해상도에 따라 dp/pt·CSS로 환산해 적용).
참고 : iOS·Android 디자인 가이드의 44pt/48dp 등은 최소 기준(24px)보다 넉넉한 실무 권장값이며, 예시 코드의 minWidth/minHeight 48dp는 그에 가깝게 맞춘 경우입니다.
컨트롤 사이에 외곽선 등으로 영역이 구분되지 않으면, 컨트롤 중심 간 간격을 충분히 두어 한 번에 여러 컨트롤이 눌리지 않도록 합니다(항목별 준수 가이드). 9mm는 위에서 말한 컨트롤 자체의 크기에 대한 권장값이며, 중심 간격을 9mm로 고정해야 한다는 뜻은 아닙니다.
시각적으로 작은 컨트롤이라도 터치 영역을 실제 컨트롤보다 크게 설정하여, 사용자가 쉽게 조작할 수 있도록 합니다.
충분한 크기와 간격을 가진 버튼
충분한 크기와 간격을 가진 버튼
요약 설명단일 문자 단축키는 비활성화·재할당·조합키 전환 수단을 제공해야 합니다.
WCAG 2.2 Guidelines : 2.1.4 Character Key Shortcuts
요약 설명시간제한이 있는 콘텐츠는 응답시간을 조절할 수 있어야 합니다.
자동 로그아웃, 타임아웃 폼 제출 등 시간 제한이 있는 기능은 사용자가 연장·끄기 등으로 응답 시간을 조절할 수 있어야 합니다. 모바일 환경에서도 충분한 반응 시간을 보장하는 것이 중요합니다.WCAG 2.2 Guidelines : 2.2.1 Timing Adjustable
장애를 가진 사용자들은 콘텐츠를 이해하고 반응하는 데 더 많은 시간이 필요할 수 있습니다. 시간 제한을 조절할 수 없다면, 장애를 가진 사용자들이 중요한 작업을 완료하지 못할 위험이 있습니다.
시간 제한을 연장하거나 비활성화할 수 있는 기능은 사용자가 보다 편안하게 앱을 사용할 수 있도록 도와줍니다. 특히 느린 인터넷 연결을 사용하거나 복잡한 양식을 작성해야 하는 사용자들에게 유용합니다.
사용자는 이동 중이거나 여러 작업을 동시에 수행하는 경우가 많습니다. 이런 상황에서 시간 제한을 조절할 수 있는 기능은 중요한 역할을 합니다.
사용자에게 시간이 만료되기 전에 경고 메시지를 띄우고, 시간을 연장할 수 있는 옵션을 제공합니다.
사용자가 특정 작업을 수행할 때 시간 제한을 비활성화할 수 있는 설정 옵션을 제공합니다.
시간 제한이 가까워지면 사용자에게 시각적, 청각적 또는 진동 알림을 통해 경고를 제공합니다.
시간 연장 알림 다이얼로그 네이티브 앱 예시
시간 연장 알림 하이브리드 앱 예시입니다.
요약 설명자동으로 변경되는 콘텐츠는 움직임을 제어할 수 있어야 합니다.
슬라이드쇼, 애니메이션, 자동 갱신 광고 등 자동으로 움직이거나 갱신되는 콘텐츠는 사용자가 일시 정지·정지·숨기기 등으로 제어할 수 있어야 합니다. 콘텐츠를 충분히 읽고 이해할 수 있도록 하고, 주의·전정 장애 등에 불편을 줄 수 있는 움직임을 완화합니다.WCAG 2.2 Guidelines : 2.2.2 Pause, Stop, Hide
자동으로 변경되는 콘텐츠는 주의 집중에 어려움을 겪는 사용자들에게 혼란을 줄 수 있습니다. 이러한 사용자들이 스스로 움직임을 제어하거나 정지할 수 있는 기능이 필요합니다.
자동으로 움직이는 콘텐츠는 스크린 리더 사용자에게 혼란을 줄 수 있으므로, 이러한 콘텐츠를 제어할 수 있는 옵션이 중요합니다.
사용자가 콘텐츠를 스스로 제어할 수 있을 때, 더 나은 사용자 경험을 제공할 수 있습니다.
슬라이드쇼나 자동 갱신 콘텐츠에는 사용자가 정지하거나 일시 정지할 수 있는 버튼을 제공합니다.
사용자 설정에서 자동 갱신 또는 애니메이션을 비활성화할 수 있는 옵션을 제공합니다.
움직이는 콘텐츠에 대한 제어 버튼은 사용자에게 쉽게 접근 가능하고 눈에 띄는 위치에 배치합니다.
자동 슬라이드쇼 제어 버튼 네이티브 앱 예시
자동 슬라이드쇼 제어 하이브리드 앱 예시
요약 설명깜빡임/번쩍임 콘텐츠는 제공하지 않거나 회피·중지 수단을 제공해야 합니다.
WCAG 2.2 Guidelines : 2.3.1 Three Flashes or Below Threshold
요약 설명페이지/화면/영역의 제목은 내용을 대표하도록 제공해야 합니다.
WCAG 2.2 Guidelines : 2.4.2 Page Titled
요약 설명링크 텍스트만으로 이동 목적을 이해할 수 있어야 합니다.
WCAG 2.2 Guidelines : 2.4.4 Link Purpose (In Context)
요약 설명콘텐츠를 찾는 방법을 두 가지 이상 제공해야 합니다.
WCAG 2.2 Guidelines : 2.4.5 Multiple Ways
요약 설명다중 포인트 동작 또는 경로기반 동작을 통한 입력은 단일 포인터 입력으로도 조작할 수 있어야 합니다.
스와이프·핀치 등 복잡한 제스처만으로만 기능에 접근하면, 한 손 조작·보조 입력·떨림 등으로 어려움을 겪는 사용자가 배제될 수 있습니다. 단일 탭·클릭 등으로 동등하게 조작할 수 있는 대안을 제공합니다.WCAG 2.2 Guidelines : 2.5.1 Pointer Gestures
모바일 기기를 사용하는 대부분의 사용자들이 터치스크린을 통해 앱을 조작하기 때문에, 모든 기능은 누르기 동작으로 접근 가능해야 합니다.
다양한 사용자가 컨트롤을 직관적으로 사용할 수 있도록 해 앱 사용 경험을 개선합니다.
터치 외에 스위치, 스타일러스 등 다른 입력 장치를 사용하는 사용자들도 있습니다. 이러한 장치들도 기본적으로 누르기 동작을 지원해야 합니다.
버튼을 클릭해서 시각적인 변화를 확인하세요.
요약 설명포인터 입력으로 실행되는 동작은 취소/되돌리기 수단을 제공해야 합니다.
WCAG 2.2 Guidelines : 2.5.2 Pointer Cancellation
요약 설명시각적 레이블이 있는 요소의 접근 가능한 이름에는 해당 레이블 텍스트가 포함되어야 합니다.
WCAG 2.2 Guidelines : 2.5.3 Label in Name
요약 설명기기 흔들기·기울이기 등 동작 기반 기능은 UI 대체 수단을 제공해야 합니다.
WCAG 2.2 Guidelines : 2.5.4 Motion Actuation
모바일 앱 접근성 요약 보고서 예시로, 체크박스의 체크 여부가 저장되지 않습니다.
검사항목(41개)
준수 여부
텍스트 아닌 콘텐츠는 그 의미나 용도를 인식할 수 있도록 대체 텍스트를 제공해야 한다.
멀티미디어 콘텐츠는 자막 또는 수어를 제공해야 한다.
멀티미디어 콘텐츠에서 음성 정보가 없는 시각 정보는 인식할 수 있도록 화면해설을 제공해야 한다.
표는 이해하기 쉽게 구성해야 한다.
콘텐츠는 논리적인 순서로 제공해야 한다.
지시사항이나 알림정보 등은 모양, 크기, 위치, 방향, 색, 소리 등에 관계없이 다양한 감각으로 인식할 수 있어야 한다.
콘텐츠는 특정 화면 방향으로만 고정하지 않아야 한다.
입력 서식의 목적은 식별할 수 있어야 한다.
콘텐츠는 색에 관계없이 인식할 수 있어야 한다.
소리는 자동으로 재생되지 않아야 한다.
콘텐츠와 배경 간의 명도는 충분하게 대비되도록 제공해야 한다.
이웃한 콘텐츠는 시각적으로 구별할 수 있어야 한다.
텍스트는 내용이나 기능의 손실 없이 200%까지 크기 조정이 가능해야 한다.
텍스트는 이미지로 제공하지 않아야 한다.
콘텐츠는 화면 크기에 따라 손실 없이 표시되어야 한다.
텍스트는 내용과 기능의 손실 없이 간격을 조정할 수 있어야 한다.
의미나 기능을 갖는 모든 콘텐츠 요소는 초점이 적용되고, 초점은 논리적인 순서로 이동해야 한다.
사용자 입력 및 컨트롤은 조작 가능한 충분한 크기로 제공해야 한다.
단일 문자 단축키는 오동작으로 인한 오류를 방지해야 한다.
시간제한이 있는 콘텐츠는 응답시간을 조절할 수 있어야 한다.
자동으로 변경되는 콘텐츠는 움직임을 제어할 수 있어야 한다.
초당 3~50회 주기로 깜빡이거나 번쩍이는 콘텐츠를 제공하지 않아야 한다.
콘텐츠 블록에는 적절한 제목을 제공해야 한다.
링크 텍스트는 용도나 목적을 이해할 수 있도록 제공해야 한다.
콘텐츠는 다양한 방법으로 탐색할 수 있어야 한다.
다중 포인트 동작 또는 경로기반 동작을 통한 입력은 단일 포인터 입력으로도 조작할 수 있어야 한다.
단일 포인터 입력으로 실행되는 기능은 취소할 수 있어야 한다.
텍스트 또는 텍스트 이미지가 포함된 레이블이 있는 사용자 인터페이스 구성요소는 네임에 시각적으로 표시되는 해당 텍스트를 포함해야 한다.
동작기반으로 작동하는 기능은 사용자 인터페이스 구성요소로 조작할 수 있고, 동작기반 기능을 비활성화할 수 있어야 한다.
주로 사용하는 언어는 명시해야 한다.
기본 언어와 구별되는 다른 언어는 해당 언어를 명시해야 한다.
사용자가 의도하지 않은 기능은 자동적으로 실행되지 않아야 한다.
사용자 인터페이스 컴포넌트는 일관성 있게 제공해야 한다.
도움 정보가 제공되는 경우, 각 페이지에 동일한 순서로 접근할 수 있어야 한다.
입력 오류를 정정할 수 있는 방법을 제공해야 한다.
사용자 입력에는 대응하는 레이블을 제공해야 한다.
중요한 정보가 제출되기 전 되돌리기 어려운 오류를 방지할 수 있는 수단을 제공해야 한다.
동일한 정보를 반복하여 입력하지 않도록 해야 한다.
인증 과정은 인지 기능 테스트에만 의존해서는 안 된다.
사용자 인터페이스 컴포넌트는 보조기술을 이용하여 사용할 수 있도록 해야 한다.
중요한 상태 메시지는 보조기술 사용자에게도 전달되어야 한다.