Un pseudolocale è un locale progettato per simulare le caratteristiche delle lingue che causano problemi di UI, layout e altri problemi relativi alla traduzione durante la traduzione di un'app. Le pseudolocalizzazioni vengono create tramite traduzioni istantanee e automatiche che sono leggibili in inglese per tutti i messaggi localizzabili. Il testo non pseudolocalizzato indica messaggi non traducibili nel codice sorgente.
Gli pseudo-codici paese consentono di risparmiare tempo e denaro perché puoi apportare modifiche al testo dell'interfaccia utente e al relativo layout prima di committare i messaggi nel repository di origine per inviarli in un secondo momento per la traduzione. Per un elenco di potenziali problemi di traduzione, consulta la sezione Problemi di localizzazione dei punti.
I nomi delle pseudolingue di Android rispettano le convenzioni di denominazione delle lingue standard e i relativi ID lingua possono essere analizzati da qualsiasi linguaggio di programmazione conforme a BCP 47. In questo senso, gli pseudocodici paese sono come qualsiasi altro codice paese, ad esempio francese, cinese o russo.
La piattaforma Android fornisce i seguenti due pseudo-codici paese per rappresentare le lingue con scrittura da sinistra a destra (LTR) e da destra a sinistra (RTL):
Inglese (XA): aggiunge accenti latini al testo dell'interfaccia utente in inglese di base, espande il testo originale aggiungendo il testo senza accenti e inserisce tra parentesi ogni unità di messaggio per evidenziare i potenziali problemi del testo espanso. I potenziali problemi possono essere la rottura del layout e la sintassi dei messaggi formattata in modo errato, ad esempio una frase divisa in più parti visualizzata come più messaggi tra parentesi. La pseudolocalità inglese (XA) è mostrata nella figura 1.
AR (XB): imposta la direzione del testo dei messaggi originali da sinistra a destra sulla direzione da destra a sinistra, invertendo l'ordine dei caratteri nel messaggio originale. Il pseudolocale AR (XB) è mostrato nella figura 2.
Le pseudolocalità possono aiutarti a creare una versione RTL della tua app, anche se non scrivi o parli lingue RTL.
Attivare le pseudolocalità
In genere, gli pseudo-codici paese vengono aggiunti alle build orientate agli sviluppatori. Quando scegli un pseudocodice geografico sul tuo dispositivo, tutte le app che supportano gli pseudocodici geografici assumono le caratteristiche dell'pseudocodice geografico selezionato, incluse tutte le app di sistema come l'app Impostazioni e il riquadro Impostazioni rapide.
Per utilizzare le pseudolocalità Android, devi avere installato Android 4.3 (livello API 18) o versioni successive e aver attivato le opzioni per gli sviluppatori sul tuo dispositivo. Devi anche riavviare il dispositivo dopo aver attivato le opzioni sviluppatore.
La procedura seguente spiega come attivare le pseudolingue:
In Android Studio, attiva le pseudo-località per un'app specifica aggiungendo la seguente configurazione al file
build.gradle
:Groovy
android { ... buildTypes { debug {
pseudoLocalesEnabled
true } } }Kotlin
android { ... buildTypes.getByName("debug") { isPseudoLocalesEnabled = true } }
-
Utilizza l'app Impostazioni per selezionare un pseudocodice paese. Questo passaggio varia in base alla versione di Android, come segue:
Android 5.0 (livello API 21) o versioni successive
- Sul dispositivo, apri l'app Impostazioni e tocca Lingue e immissione > Preferenze di lingua.
- Nell'elenco Preferenze di lingua, trascina la scheda per spostare un pseudocodice in cima all'elenco e impostarlo come lingua attiva. Vedi figura 3.
Android 4.4.4 (livello API 19) o versioni precedenti
- Sul dispositivo, apri l'app Impostazioni e tocca Lingue e immissione > Preferenze di lingua > Aggiungi una lingua.
- Tocca un pseudocodice lingua per aggiungerlo all'elenco Preferenze di lingua.
- Nell'elenco Preferenze di lingua, trascina la scheda per spostare un pseudocodice in cima all'elenco e impostarlo come lingua attiva. Vedi figura 3.
Problemi di localizzazione dei punti di ricarica
Le pseudolocalità rappresentano un modo efficace e che fa risparmiare tempo per rilevare potenziali problemi di localizzazione nell'interfaccia utente, aiutandoti a identificare i problemi nelle seguenti aree:
- Le stringhe hardcoded, che non possono essere inviate per la traduzione, vengono visualizzate come testo senza accenti nel pseudolocale per renderle evidenti.
- Problemi di layout dell'interfaccia utente causati dall'espansione del testo, che mostrano dove l'interfaccia utente può essere interrotta a causa della lunghezza del testo.
Concatenazione di stringhe, che viene visualizzata come un messaggio suddiviso in due o più parentesi. Questo può rendere difficile la traduzione corretta, perché i traduttori devono tradurre ogni parte in modo indipendente senza sapere che le parti sono correlate. La concatenazione di stringhe può anche rendere impossibile una traduzione corretta, poiché lingue diverse potrebbero richiedere un ordine diverso delle parti o una struttura della frase completamente diversa. Ad esempio, lingue come giapponese, coreano e tamil collocano il verbo alla fine di una frase. Quando una frase viene concatenata, i traduttori non possono modificare l'ordine delle parole in base alle esigenze.
Problemi di testo bidirezionale (BIDI), ad esempio quando i contenuti in una direzione del testo includono una frase in linea nella direzione opposta, rendendo la stringa difficile da leggere.
Problemi relativi alla scrittura da destra a sinistra (RTL), ad esempio elementi non specchiati. Alcuni esempi sono un elemento dell'interfaccia utente che non si sposta verso sinistra, il testo che non si inverte e si sposta verso sinistra o la punteggiatura fuori posto, ad esempio "pseudolocales rule!" che diventa "elur selacoloduesp!" anziché "!elur selacoloduesp".