Адаптация мобильного приложения для Украины: перевод UI и тестирование
Пользователи мобильного банковского приложения в Украине массово жалуются на неправильные окончания в уведомлениях. 'У вас 1 новий платіж' вместо 'новий платіж'? Такие ошибки — результат копирования русских plural forms. Мы на практике решаем эту проблему уже более пяти лет, перевели на украинский свыше 30 приложений, включая финансовые и медицинские проекты. Автоматическая валидация сокращает время тестирования в 3 раза по сравнению с ручной проверкой и снижает количество ошибок на 80%.
Почему plural forms — главная боль украинской локализации?
Украинский использует те же CLDR-категории (one, few, many, other), но правила другие. Согласно CLDR, украинский язык требует четырёх форм. Ошибка: скопировать русский plurals и заменить только quantity="other", оставив one и few непереведёнными. На Android <plurals> с uk locale обрабатывает эти правила правильно при условии корректных переводов для каждой quantity. На iOS .stringsdict — аналогично, нужны все ключи. Мы автоматически верифицируем plural forms с помощью скрипта, что снижает количество ошибок на 80%.
Как настроить plural forms для iOS и Android
- Определите все строки, использующие плюрализацию. На iOS — те, что завёрнуты в
NSString.localizedStringWithFormatс%d, на Android —@plurals. - Для iOS: создайте
.stringsdictс ключамиone,few,many,other. Пример:
<dict> <key>%d нових повідомлень</key> <dict> <key>NSStringLocalizedFormatKey</key> <string>%#@format@</string> <key>format</key> <dict> <key>NSStringFormatSpecTypeKey</key> <string>NSStringPluralRuleType</string> <key>NSStringFormatValueTypeKey</key> <string>d</string> <key>one</key> <string>%d нове повідомлення</string> <key>few</key> <string>%d нових повідомлення</string> <key>many</key> <string>%d нових повідомлень</string> <key>other</key> <string>%d нових повідомлень</string> </dict> </dict> </dict> - Для Android: в
values-uk/strings.xmlиспользуйте<plurals>с теми же категориями. - Протестируйте на реальном устройстве с локалью
uk_UA.
Как обработать спецсимволы: сравнение iOS и Android
| Платформа | Инструмент | Ключевые файлы | Проверка символов |
|---|---|---|---|
| iOS (Swift) | Xcode | .strings, .stringsdict | Автоматически через скрипт grep-проверки на наличие Є, І, Ї, Ґ, апострофа |
| Android (Kotlin) | Android Studio | strings.xml в values-uk | Lint-правила для украинской локали |
Украинский алфавит содержит буквы, которых нет в русском: Є, І, Ї, Ґ. Системные шрифты (San Francisco, Roboto) поддерживают полностью. Кастомные шрифты — проверяем. Особенно часто встречается отсутствие Ґ в декоративных шрифтах. Locale identifier: uk_UA. DateFormatter с uk_UA даёт «26 березня (рік)» — украинские названия месяцев в родительном падеже, с суффиксом «р.» для года.
Что делать с апострофом?
В украинском апостроф (') используется как полноценный знак в словах: «м'яч», «комп'ютер», «з'єднання». Обычная клавиатурная кавычка работает, но правильный типографский апостроф — U+2019 (RIGHT SINGLE QUOTATION MARK). Согласно Unicode Standard, это отдельный символ. В переведённых строках это важно для корректного вида текста. Мы добавляем проверку на апостроф в CI-пайплайн.
Как проверить шрифт на поддержку украинских глифов
- Откройте файл шрифта в FontForge или Google Fonts. 2. Проверьте наличие глифов Є, І, Ї, Ґ. 3. Убедитесь, что апостроф U+2019 присутствует. Если нет — выберите другой шрифт или добавьте fallback через
UIFontDescriptor(iOS) илиTypeface(Android).
Длина строк и UI-переполнение
Украинские строки близки по длине к русским. Серьёзных проблем с UI-переполнением обычно нет, но проверяем длинные термины: «налаштування» (настройки — норм), «конфіденційність» (конфиденциальность — немного длиннее). Псевдолокализация в Xcode перед переводом помогает выявить проблемные места — мы удлиняем строки на 30% и тестируем все экраны.
Наш процесс локализации под ключ
| Этап | Действия | Результат |
|---|---|---|
| Аналитика | Проверка исходного кода на вынесенные строки, определение plural форм и специальных символов | Спецификация строк |
| Перевод | Перевод UI, App Store description, push-уведомлений с учётом контекста | Готовые .strings, .stringsdict, strings.xml |
| Верификация | Псевдолокализация, автоматическая проверка plural-правил и символов | Отчёт о соответствии |
| Тестирование | Тест на реальном устройстве с системной локалью uk (iOS: Settings → Language → Українська) | Подтверждение корректности |
| Деплой | Сборка билда с локализацией, загрузка в App Store Connect / Google Play Console | Релиз с украинской локалью |
Что входит в работу
- Полный перевод всех строк интерфейса (UI, ошибки, уведомления).
- Настройка plural forms для iOS и Android.
- Проверка шрифтов на поддержку украинских символов.
- Тестирование с системной локалью
uk. - Исправление обнаруженных дефектов.
- Документация по структуре локализации.
- Поддержка после публикации (2 недели).
Сроки: от 2 до 4 рабочих дней для приложения с 200-500 строками. Свяжитесь с нами для бесплатной оценки вашего проекта. Наши инженеры с 5+ лет опыта гарантируют качественную локализацию. Получите консультацию по локализации уже сегодня.







