Достъпност в мобилното разработване: какво е, какви стандарти и как да се реализира

Автор: IT Sectr Публикувано: 2026-05-10 Време за четене: 8 мин

Accessibility (a11y) — практиката за създаване на приложения, които могат да се използват от хора с увреждания. По данни на Световната здравна организация над 1,3 милиарда души (16% от населението) живеят с някаква форма на увреждане. СЗО (доклад 2024) подчертава, че цифровата достъпност става критично важна. Нека разгледаме как да осигурим достъпност на iOS и Android и какви стандарти съществуват.

Основни точки

  • Accessibility — осигуряване на достъп до приложението за хора с увредено зрение, слух, двигателни и когнитивни увреждания.
  • iOS: VoiceOver (екранен четец), Accessibility Label, Accessibility Trait, Dynamic Type, Reduce Motion.
  • Android: TalkBack (екранен четец), Content Description, Focus Order, Scale-independent Pixels (SP).
  • WCAG (Web Content Accessibility Guidelines) — международен стандарт с три нива: A, AA, AAA. За мобилни приложения се прилага WCAG 2.2.
  • Тестване на достъпност: инструменти (Xcode Accessibility Inspector, Android Accessibility Scanner), ръчно тестване с екранни четци, проверка на контраст.

Какво е достъпност?

Accessibility (съкратено a11y — буква a + 11 букви + y) — свойството на продукта да бъде използваем от хора с увреждания. В контекста на мобилните приложения това означава: поддръжка на екранни четци (VoiceOver, TalkBack), подходящ размер на текста, висок контраст, правилен ред на фокуса за навигация с клавиатура и липса на анимирани елементи, причиняващи замайване.

Приобщаването не е само етично, но и правно задължение. Много страни имат закони за цифрова достъпност: ADA (САЩ), Раздел 508, European Accessibility Act (ЕС, задължително за приложения от 2025 г.). Според Business Disability Forum компаниите, които инвестират в достъпност, увеличават аудиторията си с 15–20% и намаляват правните рискове.

В IT Sectr проверяваме достъпността на всеки етап от разработката. Нашият опит показва: отстраняването на проблеми с достъпността на етапа на проектиране струва 10 пъти по-малко, отколкото след пускането. Достъпността не е функция, а основно изискване за съвременно приложение.

iOS: VoiceOver, Accessibility Label, Trait

Екосистемата на Apple предлага мощни инструменти за достъпност. VoiceOver е вграден екранен четец, който озвучава всичко, което се случва на екрана. Потребителят управлява устройството с жестове: плъзгане надясно — следващ елемент, плъзгане наляво — предишен елемент, двойно докосване — активиране.

Accessibility Label е текстът, който VoiceOver чете за даден елемент. По подразбиране iOS използва текста на бутона или етикета, но за икони и графични елементи трябва изрично да зададете етикета. Accessibility Trait — свойство, описващо типа на елемента: button (бутон), header (заглавие), link (връзка), image (изображение). Правилните traits помагат на потребителя да разбере как да взаимодейства с елемента.

VoiceOver и Accessibility Label

VoiceOver поддържа над 40 езика и работи на всички устройства на Apple. За разработчика основното нещо е да зададе правилните accessibilityLabel и accessibilityTraits за всеки елемент от интерфейса. Ако даден елемент не трябва да бъде достъпен (декоративно изображение), задайте isAccessibilityElement = false.

swift
// Swift — настройка на достъпност за бутон
let shareButton = UIButton()
shareButton.setImage(UIImage(named: "share-icon"), for: .normal)
shareButton.accessibilityLabel = "Споделете тази статия"
shareButton.accessibilityHint = "Отваря диалогов прозорец за избор на метод за изпращане"
shareButton.accessibilityTraits = .button

// SwiftUI — още по-лесно
struct ShareButtonView: View {
    var body: some View {
        Button(action: share) {
            Image(systemName: "square.and.arrow.up")
        }
        .accessibilityLabel("Споделяне")
        .accessibilityHint("Отваря менюто за споделяне")
    }
}

Кодът показва настройка на достъпност за бутон без текст (само икона). AccessibilityLabel е това, което потребителят ще чуе. AccessibilityHint — допълнителен съвет за резултата от действието. Не използвайте фрази като «бутон за» в етикета — Trait вече показва, че това е бутон.

Android: TalkBack, Content Description

TalkBack е екранният четец на Google за Android, част от пакета Android Accessibility Suite. Подобно на VoiceOver, той озвучава елементите на интерфейса и се управлява с жестове. TalkBack поддържа над 100 езика и работи на всички устройства с Google Play Services.

Content Description — еквивалентът на accessibilityLabel на Android. Задава се чрез атрибута android:contentDescription в XML или чрез метода setContentDescription() в код. За елементи, които не могат да бъдат фокусирани (декоративно ImageView), използвайте importantForAccessibility="no".

TalkBack и Focus Order

Focus Order (ред на фокуса) — последователността, в която TalkBack се движи между елементите при плъзгане. По подразбиране Android използва реда на елементите в оформлението, но може да се промени чрез атрибутите accessibilityTraversalBefore и accessibilityTraversalAfter. Това е важно за сложни екрани с персонализирани компоненти.

В IT Sectr проверяваме Focus Order на всеки екран. Грешките в реда на фокуса са сред най-честите проблеми с достъпността. Например, ако след заглавие потребителят отиде към коментари вместо към текста на статията — това е бъг в достъпността.

WCAG и стандарти

WCAG (Web Content Accessibility Guidelines) — международен стандарт за достъпност, разработен от W3C. Настоящата версия е WCAG 2.2 (2023). Стандартът е разделен на 4 принципа: Perceivable (възприемаем), Operable (оперативен), Understandable (разбираем), Robust (стабилен) — съкращение POUR.

Нива на WCAG: A (минимално), AA (средно, задължително по закон в ЕС), AAA (максимално). За мобилни приложения ниво AA е достатъчно: контраст на текста най-малко 4.5:1, поддръжка на екранни четци, минимален размер на целта 44x44 пиксела, субтитри за видео.

Нива на WCAG

Ниво A — основни изисквания: текстови алтернативи за изображения, управление с клавиатура, контраст най-малко 3:1. Ниво AA — средно: контраст 4.5:1, поддръжка на мащабиране до 200%, правилни заглавия и етикети. Ниво AAA — високо: контраст 7:1, жестомимичен език за видео, пълно гласово управление. На практика повечето компании се целят в AA.

Параметър iOS Android
Екранен четецVoiceOverTalkBack
Етикет на елементaccessibilityLabelandroid:contentDescription
Тип на елементaccessibilityTraitsaccessibilityRole (Compose), важност на фокуса
Ред на фокусаАвтоматичен (може да се промени)accessibilityTraversalBefore/After
Мащабиране на текстDynamic Type (UIFontMetrics)sp (scale-independent pixels)
Намаляване на движениетоUIAccessibility.isReduceMotionEnabledSettings.Global.getFloat(... ANIMATOR_DURATION_SCALE)

Таблица 2. Сравнение на API за достъпност на iOS и Android. Въпреки различните имена, концепциите са идентични: етикет, тип, ред на фокуса и поддръжка на адаптиране на текст.

Тестване на достъпност

Тестването на достъпност е проверка на приложението за съответствие със стандартите WCAG и правилна работа с екранни четци. Минимален набор от тестове: включете VoiceOver/TalkBack и навигирайте през всички екрани на приложението. Слушайте, за да проверите, че всички елементи се озвучават, редът на фокуса е логичен, а неподходящите елементи (декоративни) се игнорират.

Автоматизирани инструменти: Xcode Accessibility Inspector (одит в Xcode за iOS), Android Accessibility Scanner (сканира екрана и открива проблеми), Axe DevTools, WAVE. Тези инструменти проверяват контраста, размера на целта, наличието на етикети и други параметри.

В IT Sectr извършваме преглед на достъпността преди всяко пускане. Процесът включва: автоматизиран одит (Accessibility Inspector), ръчно тестване с VoiceOver и TalkBack, проверка на контраст и мащабиране на текст. Записваме проблемите в Jira и ги възлагаме на спринт. Това ни позволява да поддържаме ниво AA на WCAG във всички проекти.

Често задавани въпроси

Как да включа VoiceOver на iPhone?

Настройки → Достъпност → VoiceOver. Или натиснете три пъти страничния бутон (или бутона Home) с включен пряк път за достъпност. За бързо включване използвайте Siri: «Включи VoiceOver». На Android TalkBack се включва в Настройки → Достъпност → TalkBack.

Какво ниво на WCAG е необходимо за мобилно приложение?

За съответствие със законодателството на ЕС (European Accessibility Act от 2025) и САЩ (ADA) се изисква ниво AA. Това означава: контраст 4.5:1, всички елементи имат етикети, размер на целта най-малко 44x44 пиксела, поддръжка на екранни четци, субтитри за видео.

Трябва ли да направя приложението достъпно, ако целевата аудитория не са хора с увреждания?

Да. Достъпността помага на всички: възрастни хора, потребители в слънчев ден, родители, държащи бебе (с една ръка). Освен това е законово изискване в много страни. Приобщаването разширява аудиторията и подобрява потребителското изживяване за всички.

Как да проверя контраста в дизайна?

Използвайте тези инструменти: WebAIM Contrast Checker (онлайн), Stark за Figma/Sketch. За WCAG AA минималното съотношение е 4.5:1 за нормален текст и 3:1 за голям текст (18px и повече). За AAA — съответно 7:1 и 4.5:1.

Резюме

  • Accessibility (a11y) — приложението да бъде използваемо за хора с увреждания. 1,3 милиарда души (16%) живеят с някаква форма на увреждане.
  • iOS: VoiceOver, accessibilityLabel, accessibilityTraits, Dynamic Type, Reduce Motion.
  • Android: TalkBack, android:contentDescription, Focus Order, scale-independent pixels.
  • WCAG 2.2 — международен стандарт (нива A, AA, AAA). За мобилни приложения се препоръчва AA.
  • Принципи на WCAG: POUR — Perceivable, Operable, Understandable, Robust.
  • Инструменти за тестване: Xcode Accessibility Inspector, Android Accessibility Scanner, ръчно тестване с екранни четци.
  • Инвестициите в достъпност разширяват аудиторията с 15–20% и намаляват правните рискове (данни на IT Sectr, 2024).

Ще разработим мобилно приложение под ключ

IT Sectr създава iOS и Android приложения за стартъпи и бизнеси от 2017 г. Ще ви консултираме и ще предложим най-доброто решение.

Обсъдете проекта