Localization — podstata, přizpůsobení obsahu jazyku a regionu

Autor: IT Sectr Publikováno: 2026-02-26 Doba čtení: 7 min

Localization (lokalizace, l10n) — přizpůsobení obsahu mobilní aplikace jazyku, regionu a kulturním zvláštnostem cílového publika. Na rozdíl od internacionalizace (i18n), kde je kód připravován k překladu, lokalizace je samotný proces překladu řetězců, formátování dat, čísel a měn, výběru obrázků a zohlednění místních norem. V iOS jsou překlady uloženy v Localizable.strings (složky .lproj pro každý jazyk), v Androidu — v values-ru, values-de a dalších adresářích zdrojů. Více — v průvodci Androidu pro lokalizaci.

Hlavní body

  • Localization (l10n) — překlad a přizpůsobení obsahu aplikace konkrétnímu jazyku a regionu
  • Localizable.strings — iOS soubor obsahující páry „klíč" = „překlad" pro každý jazyk
  • values-ru — Android adresář se zdroji pro ruský jazyk (strings.xml)
  • Regionální přizpůsobení — data, čísla, obrázky, barvy, právní požadavky se liší podle zemí
  • Kulturní zvláštnosti — barvy, ikony, gesta a příklady musí odpovídat místním normám

Co je Localization (l10n) a čím se liší od i18n?

Localization (zkráceně l10n — 10 písmen mezi „l" a „n") — je proces přizpůsobení aplikace konkrétnímu jazyku a regionu. Pokud je i18n architektonickým základem, pak l10n je výplní. i18n umožňuje překlad, l10n jej provádí. Lokalizace zahrnuje: překlad všech textů rozhraní, přizpůsobení formátů dat a čísel, výměnu obrázků s kulturně citlivým obsahem, korekci právních textů (zásady ochrany osobních údajů, EULA), konfiguraci platebních systémů pro region a testování na cílových zařízeních.

Obchodní návratnost — lokalizace přímo ovlivňuje konverzi. Podle údajů CSA Research (2023) 76 % uživatelů preferuje nákup v aplikacích v rodném jazyce a 40 % nikdy nenakupuje v cizím jazyce. Lokalizace do japonštiny pro maloobchodní aplikaci zvyšuje konverzi v průměru o 150 % (Google, 2022). Lokalizované aplikace získávají 2–3krát více organických instalací v regionálních App Store a Google Play díky regionálnímu ASO (klíčová slova v cílovém jazyce).

i18n vs l10n — dvě strany stejného procesu. i18n: vyčlenění řetězců do zdrojů, podpora RTL, formátování čísel. Provádí se jednou vývojáři. l10n: překlad řetězců, přizpůsobení obsahu, místní testování. Provádí se opakovaně překladateli a QA pro každou lokalizaci. V IT Sectr vyčleňujeme 20–30 % času sprintu na lokalizaci každého nového jazyka — to zahrnuje překlad, revizi, testování na zařízeních a opravy chyb.

Lokalizace v iOS: Localizable.strings a Base Internationalization

Localizable.strings — hlavní soubor pro ukládání překladů v iOS. Každá lokalizace má svou vlastní složku .lproj: en.lproj/Localizable.strings, ru.lproj/Localizable.strings, de.lproj/Localizable.strings. Formát: „klíč" = „hodnota"; (s středníkem). Apple používá Base Internationalization: Storyboard a XIB se vytvářejí jednou (Base.lproj) a řetězce rozhraní se exportují do Localizable.strings pro každý jazyk. To eliminuje potřebu vytvářet kopie XIB pro každou lokalizaci.

swift
// en.lproj/Localizable.strings
// "settings.title" = "Settings";
// "profile.greeting" = "Hello, %@!";
// "items.count" = "%d item(s)";

// ru.lproj/Localizable.strings
// "settings.title" = "Nastavení";
// "profile.greeting" = "Dobrý den, %@!";
// "items.count" = "%d ks.";

// Načtení řetězce podle klíče
navigationItem.title = NSLocalizedString(
    "settings.title",
    comment: "Název obrazovky nastavení"
)

// Řetězec s parametrem
let name = "Anna"
greetingLabel.text = String.localizedStringWithFormat(
    NSLocalizedString("profile.greeting", comment: ""), name
)

// XLIFF import (Xcode → Editor → Import Localizations)
// Automaticky aktualizuje .lproj soubory po práci překladatele

Base Internationalization — přístup Apple, při kterém se rozhraní (Storyboard, XIB) vytváří jednou v Base.lproj. Při přidávání jazyka Xcode exportuje řetězce z Base do souboru XLIFF. Překladatel přeloží XLIFF. Po importu Xcode vytvoří .lproj s přeloženými řetězci. Výhoda: není třeba duplikovat XIB pro každý jazyk. Omezení: pro jazyky RTL (arabština, hebrejština) může být vyžadován samostatný XIB se zrcadlovým rozložením.

InfoPlist.strings a lokalizace metadat

InfoPlist.strings — soubor pro lokalizaci názvu aplikace (CFBundleDisplayName), oprávnění kamery/mikrofonu (NSCameraUsageDescription) a dalších hodnot z Info.plist. Vytváří se v .lproj: ru.lproj/InfoPlist.strings. Formát: CFBundleDisplayName = „Moje aplikace"; NSCameraUsageDescription = „Aplikace potřebuje přístup k kameře pro pořizování fotografií";. Bez lokalizace InfoPlist.strings budou systémové dialogy v angličtině.

Lokalizace v Androidu: values-ru, lokalizované zdroje

Android zdroje pro lokalizaci jsou organizovány pomocí kvalifikátorů (qualifiers) v názvech adresářů. Pro ruský jazyk — res/values-ru/, pro němčinu — res/values-de/, pro brazilskou portugalštinu — res/values-pt-rBR/. Android podporuje více než 160 lokalizací. Systém automaticky vybírá zdroje na základě jazyka zařízení (Locale.getDefault()). Pokud přesná lokalizace neexistuje — použijí se zdroje z values/ (základní lokalizace, obvykle en).

kotlin
// res/values/strings.xml (základní — angličtina)
<string name="settings_title">Settings</string>
<string name="greeting">Hello, %s!</string>

// res/values-ru/strings.xml (ruština)
<string name="settings_title">Nastavení</string>
<string name="greeting">Ahoj, %s!</string>

// res/values-de/strings.xml (němčina)
<string name="settings_title">Einstellungen</string>
<string name="greeting">Hallo, %s!</string>

// Kotlin — jednotný kód pro všechny jazyky
textView.text = getString(R.string.settings_title)

// Řetězec s parametrem
val greeting = getString(R.string.greeting, userName)

// Lokalizované obrázky
// res/drawable-ru/flag.png — vlajka pro ruskou verzi
// res/drawable/flag.png — výchozí vlajka

// Lokalizace rozložení (pro jazyky RTL)
// res/layout-ar/activity_main.xml — arabská verze

Lokalizace nejen řetězců — Android umožňuje lokalizovat obrázky (res/drawable-ru/), barvy (res/values-ru/colors.xml), rozměry (res/values-ru/dimens.xml), animace, nabídky a dokonce celá rozložení. Pro jazyky s různou délkou slov (němčina je o 30–40 % delší než angličtina) používejte lokalizované dimens.xml se zvýšenou šířkou tlačítek. Pro regiony s jinou symbolikou barev (bílá — smutek v Číně) — lokalizované colors.xml.

Kontrola lokalizace na zařízení

Testování — přepněte jazyk zařízení na cílový přes Nastavení → Systém → Jazyk. Zkontrolujte: všechny řetězce jsou přeloženy, data jsou správně formátována, čísla se zobrazují se správným oddělovačem, obrázky odpovídají regionu, rozložení se „neláme" při dlouhých řetězcích. Pro automatizaci použijte Espresso s LocaleTestRule (Android Testing Library) — umožňuje spouštět testy s různými lokalizacemi bez ručního přepínání jazyka.

Kulturní přizpůsobení: co je třeba překládat kromě textu

Kulturní zvláštnosti — lokalizace se neomezuje na překlad řetězců. Symbolika barev se liší: červená — štěstí v Číně, nebezpečí v USA, smutek v Jižní Africe. Bílá — čistota v Evropě, smutek v Číně. Ikony s gesty: palec nahoru — pozitivní v USA, urážka na Blízkém východě. Obrázky lidí: v arabských zemích jsou nepřijatelné obrázky žen v plavkách. Náboženské symboly: kříž, půlměsíc, Davidova hvězda by měly být používány pouze v odpovídajícím kontextu.

Právní požadavky — každá země má své vlastní zákony o digitálních produktech. GDPR (EU) — povinný souhlas s cookies a zpracováním údajů. CCPA (Kalifornie) — právo na vymazání údajů. Zákon o osobních údajích (Rusko, 152-FZ) — ukládání údajů na serverech RF. LGPD (Brazílie) — obdoba GDPR. Platby: v Číně jsou potřeba Alipay/WeChat Pay, v Indii — UPI, v Brazílii — Boleto a PIX. Nakonfigurujte platební bránu pro region před zahájením lokalizace.

AspektUSAČínaSAENěmecko
Platební systémApple Pay, kartyAlipay, WeChat PayKarty, Apple PayPayPal, Giropay
Barvy značkyJakékolivČervená — štěstíZelená — islámČerná/žlutá
Sociální sítěInstagram, XWeChat, DouyinWhatsApp, XWhatsApp, X
DatumMM/dd/yyyyyyyy/MM/dddd/MM/yyyydd.MM.yyyy
Zákon o datechCCPAPIPLPDPLGDPR

Příklady a obsah — přizpůsobte příklady regionu. Pro německou lokalizaci použijte metrický systém (kg, km), pro americkou — imperiální systém (lb, mi). Telefonní čísla, poštovní směrovací čísla, adresy — formátují se odlišně. Příklady měn: ¥1000 v Japonsku, $9.99 v USA, 999 ₽ v Rusku. Obrázky jídla, oblečení, interiérů by měly odpovídat regionálním standardům. V IT Sectr doporučujeme najímat místní konzultanty pro kontrolu kulturního přizpůsobení.

Proces lokalizace: nástroje, překladatelé, CI/CD

Nástroje lokalizace — profesionální platformy automatizují proces: Lokalise, Crowdin, POEditor, Smartling, Phrase. Integrují se s repozitářem, automaticky importují nové řetězce, sledují změny (Delta updates — překládají se pouze změněné řetězce), poskytují Translation Memory (TM — ukládání dříve přeložených frází) a Glossary (glosář pojmů). Průměrná cena profesionálního překladu: $0.08–0.15 za slovo (v závislosti na jazyce).

Proces — (1) Vývojář přidá i18n klíče do kódu, pushne do repozitáře. (2) CI/CD (GitHub Actions / GitLab CI) automaticky odešle nové klíče na platformu lokalizace. (3) Překladatelé obdrží oznámení, přeloží, uloží. (4) Přeložené soubory automaticky vytvoří PR v repozitáři. (5) QA zkontroluje lokalizaci na zařízeních. (6) Vydání. Cyklus pro jednu lokalizaci: 2–5 pracovních dnů (v závislosti na objemu). Pro 10 lokalizací: 5–15 dnů při paralelní práci překladatelů.

Machine Translation + Human Review — moderní standard. Překlad neuronovou sítí (DeepL, Google Translate, GPT-4) poskytuje kvalitu 80–90 % pro oblíbené jazykové páry. Lidský překladatel kontroluje: terminologii, kontext (slova mohou mít různé významy na různých obrazovkách), kulturní přizpůsobení. V IT Sectr používáme hybridní přístup: ML překlad + revize rodilým mluvčím. Pro kritické řetězce (právní, platební) — pouze profesionální překladatel. Úspora: až 60 % nákladů při zachování kvality.

Často kladené otázky

Čím se lokalizace liší od internacionalizace?

Internacionalizace — příprava kódu k překladu (vyčlenění řetězců, RTL, formátování). Lokalizace — samotný překlad a kulturní přizpůsobení. i18n provádí vývojář jednou, l10n — překladatel pro každý jazyk. i18n bez l10n — aplikace je připravena k překladu, ale není přeložena. l10n bez i18n — je třeba přepisovat kód pro každý jazyk.

Kde jsou uloženy překlady v iOS?

V souborech Localizable.strings ve složkách .lproj. Pro každý jazyk: en.lproj (angličtina), ru.lproj (ruština), de.lproj (němčina). Formát: „klíč" = „hodnota";. Pro množné číslo — Localizable.stringsdict. Nastavení aplikace (CFBundleDisplayName) — v InfoPlist.strings. Xcode spravuje .lproj prostřednictvím Base Internationalization.

Co je values-ru v Androidu?

values-ru — adresář zdrojů Androidu pro ruský jazyk. Obsahuje strings.xml s překlady. Podobně pro další jazyky: values-de (němčina), values-fr (francouzština). Android vybírá zdroje na základě systémového jazyka. Pokud values-ru není nalezen — použije values/ (základní jazyk, obvykle angličtina).

Jak formátovat data pro různé regiony?

Vždy používejte Locale API. iOS: DateFormatter.locale = Locale(identifier: locale). Android: DateFormat.getDateInstance(DateFormat.SHORT, locale). Rusko: 31.12.2024. USA: 12/31/2024. Japonsko: 2024/12/31. Nikdy nenastavujte pevný formát — každá země má své vlastní standardy. Pro zadávání dat používejte UIDatePicker / DatePicker.

Kolik lokalizací je potřeba pro globální aplikaci?

Pro globální pokrytí stačí 10–15 jazyků: angličtina, španělština, francouzština, němčina, japonština, čínština, korejština, portugalština, ruština, italština, arabština. Pro regionální — 1–2 jazyky. Každá další lokalizace zvyšuje organické instalace o 5–15 % v příslušném regionu. App Store vyžaduje alespoň anglickou lokalizaci.

Shrnutí

  • Localization (l10n) — překlad a kulturní přizpůsobení obsahu konkrétnímu jazyku a regionu
  • iOS — Localizable.strings ve složkách .lproj, Base Internationalization, InfoPlist.strings
  • Android — values-ru/strings.xml, lokalizované drawable a layout přes qualifiers
  • Kulturní přizpůsobení — barvy, ikony, gesta, platební systémy, právní požadavky
  • Proces — CI/CD → platforma lokalizace → překladatel → QA → vydání (2–5 dní na jazyk)
  • Hybridní přístup — ML překlad (DeepL, GPT) + revize rodilým mluvčím pro úsporu 60 %
  • Návratnost — 76 % uživatelů nakupuje pouze v rodném jazyce (CSA Research, 2023)

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také