Доступность мобильных приложений: аудит и доработка под ключ

Экранные дикторы и крупный шрифт не помогут, если разметка и навигация не заложены с самого начала. Мы дорабатываем доступность мобильных приложений под ключ и передаём команде готовый регламент.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • Разработка мобильного приложения для компании FEEDME
    Разработка мобильного приложения для компании FEEDME
    967
  • Разработка мобильного приложения для компании XOOMER
    Разработка мобильного приложения для компании XOOMER
    857
  • Разработка мобильного приложения для компании RHL
    Разработка мобильного приложения для компании RHL
    1285
  • Разработка мобильного приложения для компании ZIPPY
    Разработка мобильного приложения для компании ZIPPY
    1133
  • Разработка мобильного приложения для компании Affhome
    Разработка мобильного приложения для компании Affhome
    1066
  • Разработка мобильного приложения для компании FLAVORS
    Разработка мобильного приложения для компании FLAVORS
    669

Почему доступность мобильных приложений ломается при доработках

Доступность мобильных приложений ломается не на старте, а на третьей-четвёртой итерации. Новый экран добавляют под конкретную задачу и торопятся: иконку рисуют без подписи, переключатель собирают из готовых слоёв, всплывающую панель ставят поверх основного содержимого. Экранные дикторы такие элементы либо пропускают, либо объявляют безлико — «кнопка», «элемент», и человек не понимает, что произойдёт после нажатия.

Недоступные элементы управления почти всегда находятся в одном и том же месте: там, где бизнес-логика требует минимума действий. Кастомный слайдер не реагирует на жесты управления с зажатием, поле с маской принимает ввод только с экранной клавиатуры, иконка корзины на карточке товара читается как декоративная картинка. Для пользователя экранных дикторов это не мелочь, а тупик: действие есть визуально, но недостижимо на слух и на ощупь.

Сбитый порядок фокуса заметен только при последовательном обходе. Модальное окно открывается, но обход продолжается по затемнённому содержимому под ним, а после закрытия фокус улетает в начало экрана — и человек заново ищет, где он остановился. Стоит поменять блоки местами при редизайне, и логика чтения расходится с визуальной: диктор ведёт по смыслу из прошлой версии, подсказка звучит раньше заголовка.

Крупный системный шрифт и повышенный контраст добивают сценарий: подписи обрезаются, текст уходит под кнопку, обязательные поля не подсвечиваются. Брошенный сценарий — вот реальная цена. Доля незавершённых оформлений растёт, приходит больше обращений «не могу нажать», а магазин приложений снижает приложение в выдаче по критериям доступности. Разбираем, как это закрывается.

Экранные дикторы, крупный шрифт и контраст: что даёт доработка

Доработка доступности измеряется не числом правок в разметке, а тем, сколько сценариев человек проходит самостоятельно. Ниже — три направления, и по каждому мы фиксируем метрику до и после.

Поддержка экранных дикторов

Каждому интерактивному элементу назначается осмысленное описание и роль, а порядок обхода выстраивается по логике экрана, а не по порядку в разметке. Итог: доля сценариев, завершаемых незрячим пользователем без подсказки со стороны, вырастает с единиц процентов до большинства ключевых путей — вход, оплата, запись.

Масштабирование системного шрифта и высококонтрастный режим

Вёрстка перестаёт ломаться при увеличенном шрифте: текст переносится, кнопки растут, ничего не обрезается и не наезжает друг на друга. Параллельно проверяется контраст — состояние элемента считывается по яркости и форме, а не только по цвету. Класс отказов «подпись уехала за границу кнопки» уходит целиком.

Управление переключателями

Сценарии становятся проходимыми без точных касаний: фокус обходит все элементы, порядок предсказуем, внешние переключатели и голосовое управление доводят действие до конца. Это снимает ещё один пласт отказов — «до элемента нельзя добраться».

Замыкающий эффект — снижение обращений в поддержку: жалобы «не вижу кнопку», «шрифт обрезал текст», «не могу нажать» перестают доходить до первой линии, а сам продукт при этом не меняется.

Варианты реализации: правки разметки против переработки навигации

Доступность держится на двух слоях. Первый — семантическая разметка: подписи к элементам, их роли, порядок обхода фокуса, объявление изменений на экране. Второй — навигация: структура экранов, логика переходов и возвратов. Объём работ зависит от того, какой слой просел и на какой стадии продукт.

Правки семантической разметки — самый короткий цикл: экраны и сценарии остаются прежними, меняются атрибуты и тексты подписей. Переработка навигации затрагивает структуру, поэтому требует согласования с дизайном и полного регресса. Автоматические проверки показывают лишь часть картины: они находят элементы без подписи и нарушенный контраст, но не говорят, понятен ли сценарий на слух, — режимы работы диктора всё равно проверяют руками.

Вариант Когда подходит Ограничения
Правки семантической разметки Интерфейс стабилен, экраны собраны из типовых блоков; диктор читает элементы, но сбивается на формулировках и порядке Не меняет логику экранов: запутанный сценарий разметкой не исправить
Переработка навигации Ключевые сценарии проходятся вслепую заметно дольше, есть ловушки фокуса и дублирующие переходы Затрагивает вёрстку и код экранов, нужен регресс по всем сценариям
Комплексный этап: разметка, навигация, ручные прогоны Продукт готовится к релизу или есть требования доступности от заказчика либо магазина приложений Самый длинный цикл: аудит, правки, повторные прогоны диктором, регресс

Автоматические проверки есть смысл включать в конвейер сборки на любом из вариантов: они дешёвы, ловят регресс и не дают разметке «зарасти» при новых экранах. Но отчёт такой проверки нельзя считать приёмкой — он покрывает форму, а не сценарий. Итоговый критерий один: человек проходит основной путь с включённым диктором и укладывается в разумное время.

Этапы работы: аудит, схема обхода экранов, настройка, проверка

Доступность нельзя проверить «на глаз» — её собирают последовательно. Сначала фиксируем текущее состояние, затем строим карту экранов и только после этого меняем разметку и настройки. Так правки не рассыпаются по релизам и не ломают уже работающие сценарии.

  1. Аудит доступности. Прогоняем ключевые сценарии с включённым экранным диктором, проверяем контраст, размеры зон нажатия, подписи и реакцию на системный масштаб шрифта. Каждый дефект фиксируем с привязкой к экрану и шагом воспроизведения.
  2. Сверка с требованиями WCAG. Выбираем целевой уровень и раскладываем расхождения по группам: семантика, навигация, альтернативные тексты, устойчивость к крупному шрифту и отключённой анимации.
  3. Карта экранов и порядок обхода. Описываем дерево переходов, отмечаем места, где фокус теряется, зацикливается или уходит в тупик после закрытия модального окна.
  4. Описания элементов. Проставляем роли, состояния и подписи для кнопок, полей, изображений и динамических блоков; озвучивание изменений состояния делаем явным.
  5. Настройка фокуса. Задаём приоритет чтения, перехват фокуса в модальных окнах и корректный возврат на элемент-источник.
  6. Контрольная проверка на устройстве. Проходим те же сценарии с диктором, крупным шрифтом и внешней клавиатурой, сверяем результат с картой экранов и закрываем расхождения.
  7. Передача результата. Отдаём карту экранов, правила описания элементов и регламент проверки доступности в релизном цикле — новые экраны сразу делаются по тем же правилам.

Передаём на руки: разметка, описания элементов, регламент

Пакет передаём вместе с исходным кодом: команда заказчика может менять интерфейс дальше, не теряя разметку. Материалы рассчитаны на разработчика и тестировщика без профильной подготовки по доступности — это не выдержки из стандарта, а рабочие указания с конкретными значениями.

  • Схема навигации и порядок фокуса. Карта экранов с очерёдностью обхода диктором: где фокус ставится вручную, какие всплывающие слои его захватывают и как возвращают обратно.
  • Описания элементов. Таблица «компонент → метка, роль, подсказка» на все повторяющиеся блоки: кнопки, поля, переключатели, состояния загрузки. Отдельно — правила для динамических списков, чтобы диктор не перечитывал список целиком после каждого обновления.
  • Правила контраста и масштабирования. Пороговые отношения для текста и иконок, поведение при системном увеличении шрифта до предела, значения для тёмной темы.
  • Регламент проверки. Что прогоняют перед каждым выпуском: ручные сценарии с диктором и увеличенным шрифтом плюс автоматические правила в сборке, которые останавливают её при потере метки.
  • Инструкция для команды разработки. Куда добавить описание и как назвать элемент, чтобы он попал в обход; какие правки интерфейса требуют обновить таблицу описаний.
  • Инструкция для тестировщиков. Набор сценариев с ожидаемым порядком озвучивания и шаблон отчёта о дефекте — воспроизводимость вместо «диктор читает непонятно что».

Кейс: что изменилось после переработки навигации и разметки

Заказчик пришёл с проблемой, которая на первый взгляд не выглядела технической: доля завершённых сценариев оформления заказа держалась около 60%, а в поддержку шёл поток однотипных обращений — «не нахожу кнопку», «озвучивание не читает поле», «не могу вернуться на шаг назад». Отзывы в магазинах приложений повторяли то же: интерфейс работает только для тех, кто видит экран и уверенно попадает пальцем в мелкий элемент.

Что показал разбор

Наши инженеры прошли по всем ключевым экранам покупки, оплаты и отслеживания доставки с аудитом по Web Content Accessibility Guidelines. Нашли три класса дефектов: подписи не связаны с самими полями, порядок обхода элементов не совпадал с визуальным, а зоны нажатия были меньше комфортного минимума. Из-за этого пользователь терял контекст на середине сценария и закрывал приложение.

Что изменили

Переработали навигацию и разметку: у элементов появились корректные имена и роли, фокус пошёл в логичном порядке, зоны нажатия расширили, иконкам без текста добавили описания. Отдельно переписали возврат и подтверждение заказа — при сворачивании приложения терялись шаг и введённые данные.

Что стало

Доля завершённых сценариев выросла с 61% до 88%, обращения в поддержку по навигации упали в 2,4 раза. Доля пользователей с программой экранного доступа поднялась с 4% до 11% — часть из них раньше просто не доходила до оплаты. В отзывах сместились формулировки: вместо «ничего не понятно» всё чаще «всё находится с первого раза».

Метрики сверяли по продуктовой аналитике и выгрузке обращений за сопоставимые периоды, а не по ощущениям команды — источник данных зафиксирован в отчёте по проекту.

Что делать, если доступность не заложена в дизайн изначально?

Что делать, если доступность не закладывали в макеты: готовый продукт не нужно переписывать целиком. Основная часть проблем лежит не в визуальном слое, а в разметке — у элементов нет подписей для скринридера, у иконок нет альтернативного текста, фокус обходит экран в случайном порядке, а состояние кнопки не озвучивается. Такие правки не меняют внешний вид ни на пиксель, поэтому их выкатывают отдельным релизом, не дожидаясь редизайна.

Дальше определяют приоритет экранов по аналитике, а не по расположению в меню. Первыми идут вход, восстановление доступа, ключевой сценарий и оплата — там, где недоступность блокирует пользователя полностью. Экран с формой и валидацией важнее декоративной ленты: ошибку ввода скринридер должен прочитать вслух, а не молча подсветить красным.

Поэтапное внедрение строят так, чтобы каждый шаг был самостоятельным. Правки в семантике не трогают контракты обмена данными и не ломают вёрстку, поэтому обратная совместимость сохраняется, а неудачный релиз откатывается без последствий для остальных экранов. Визуальные изменения — масштабируемость шрифта, контраст, размер зон нажатия — идут вторым этапом, когда невизуальный слой уже закрыт и продукт перестал терять пользователей на базовых действиях.

Чтобы разовые правки не растворились в следующих спринтах, требования к разметке переносят в дизайн-систему и в автоматические проверки на сборке: новые экраны проходят те же правила без ручного контроля. Через два-три цикла доступность перестаёт быть отдельной задачей и становится свойством продукта по умолчанию.

Технические сомнения: объём правок, сроки, риски для релиза

Сомнения по доступности обычно не про саму технологию, а про то, как правки впишутся в цикл выпуска. Ниже — ответы на частые вопросы на старте: объём работ, совместимость со сборкой, сроки проверки и риски для ближайшего релиза.

Придётся ли переписывать экраны?

Нет. Основной объём — семантическая разметка: подписи элементов, порядок обхода экранным диктором, альтернативные тексты, размер зон касания. Логика и вёрстка остаются прежними, правки локальны и не тянут за собой переработку навигации.

Доработки сломают текущий выпуск?

Правки идут отдельной ветвью и включаются удалённой настройкой, а не для всех сразу. Сборку можно выпустить в прежнем виде, открыть доступность части пользователей и расширить охват после подтверждения результата. Если всплыл регресс — настройка снимается без новой сборки.

Сколько это занимает и как проверяется?

Срок зависит от числа экранов и их состояния: типовые списки и формы правятся быстро, настраиваемые графики и кастомные элементы управления разбираем отдельно. Первый проход по основным сценариям занимает недели. Проверяем ручным обходом с экранным диктором на реальных устройствах, контрольным списком по ключевым путям и автотестами на контрастность и размер зон.

Как распределяются роли в команде?

Мы ведём разметку, проверку и отчёт по экранам, ваша команда согласует приоритет и выпускает сборку в своём цикле. С вашей стороны достаточно одного человека, знающего продукт и подтверждающего сценарии.

Обсудим задачу и вернёмся с оценкой и планом работ

Разбор задачи занимает один разговор на 30–40 минут: инженер идёт по вашим сценариям — вход, оплата, оформление заказа, поддержка — и отмечает, где интерфейс теряет пользователей с программами экранного доступа, крупным системным шрифтом или управлением с внешней клавиатуры. По итогам вы получаете не общие слова, а карту экранов с приоритетами и оценку трудозатрат по каждому блоку.

Чтобы разбор был предметным, для старта достаточно прислать:

  • перечень платформ и актуальных веток ОС, которые поддерживаете;
  • список ключевых сценариев и экранов, где пользователи чаще всего отваливаются;
  • отчёты прошлых проверок, обращения в поддержку или снимки проблемных мест;
  • доступ к тестовой сборке или макетам — с учётной записью и тестовыми данными;
  • целевой уровень соответствия руководствам по доступности (WCAG) и перечень экранов, которые в него входят;
  • сроки, к которым нужен результат, и кто на вашей стороне принимает работу.

В ответ приходит оценка и план: состав работ по этапам, порядок старта, роли в команде, точки проверки и формат отчёта о результате. Если часть материалов под соглашением о неразглашении, подписываем его до передачи доступов. Опишите задачу — вернёмся с оценкой и планом работ.