Адаптація мобільного застосунку для України: переклад 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+ років досвіду гарантують якісну локалізацію. Отримайте консультацію з локалізації вже сьогодні.







