Internacionalizando seu app Android
Essa semana fiquei responsável por internacionalizar um app, coisa
simples(Que eu não sabia XD) e resolvi escrever um post sobre isso e
tentar detalhar o máximo possível para iniciantes, assim como eu.
Imagine que você desenvolve seu app e tem vontade que outras pessoas do
mundo use ele, seria legal, não? Só que para isso seu app precisa estar
no idioma do país em que as pessoas vão usar ele. Vamos usar o Inglês
nesse exemplo, por ser o idioma mais falado no mundo, mas nada impede de
você querer traduzir seu app para outros idiomas, afinal, pode traduzir
para todos os idiomas do mundo se quiser. E para fazer isso no android é
uma bem simples.
Agora vamos começar a parte legal hehe.
Ao abrir seu projeto, você deve ir na pasta app>src>main>res>values
Você vai ver algo assim:
Esse arquivo "string.xml" é padrão, para sempre que o device não estiver
configurado em um dos idiomas suportados pelo seu app, ele vai usar
usar ele como idioma padrão.
Bom, agora precisamos criar um recurso de texto para os idioma que você
deseja que seu app suporte. Fazer isso é muito simples, em cima da pasta
values, clique com o botão direito vai em New >Values resource file
> Locale. E vai ter algo assim:
Nesse caso estou criando para suportar dois idiomas, mas só para vocês
terem ideia de que é possível fazer com mais de um idioma.
Feito isso, você vai ter algo assim:
Agora temos que preencher nossas strings (strings.xml(en-rUS) e strings. xml(pt-BR)). E ficara assim:
string.xml(en-rUS)
string.xml(pt-rBR)
Agora vamos usar um exemplo de um palavra, vale lembrar que é muito
importante trabalhar com Strings no app, afinal, você não querer
desenvolver um app gigantesco e depois ter o trabalho de modificar ele
todo para poder fazer a internacionalização. E isso é muito simples
também e vai evitar dores de cabeça no futuro.
Maneira errada(ou maneira "dor de cabeça" no futuro hehe):
Maneira correta(ou maneira que evita "dor de cabeça" no futuro hehe):
Mas notamos que tem um erro ai, por que está em vermelho? Simples,
porque essa string ainda não existe, então temos que fazer ela existir e
para fazer isso você precisa modificar suas strings, assim:
string.xml(pt-rBR)
Pronto, agora quando o app estiver com o idioma padrão
em Inglês, o app rodara em Inglês. Quando estiver em português, o app
rodara em português. E quando não estiver me nenhum, ele vai usar o
arquivo strings.xml como idioma padrão(ai depende qual o idioma você
quer que seja padrão).
Dúvidas, só perguntar ;)
Show!
ResponderExcluirPara ajudar na tradução dos arquivos XML de maneira online, eu recomendo esta ferramenta de tradução do software - https://poeditor.com
ResponderExcluirÉ uma colaborativa plataforma de crowdsourcing da tradução do site e aplicativos.