Como traduzir os arquivos de idioma do seu app com IA

Como traduzir os arquivos de idioma do seu app com IA

4 de outubro de 2026

Os arquivos de idioma de um app são uma única tarefa em treze extensões de arquivo. Você está com um arquivo JSON, um strings.xml, um arquivo PO ou um String Catalog e quer as mesmas strings em mais cinco idiomas sem comprometer a compilação.

O formato muda. A tarefa, não: mantenha as chaves, preserve os placeholders, traduza os valores e repita tudo no próximo lançamento.

Qual opção você deve usar?

Ideal para Limitações
AI Glot Qualquer um dos formatos abaixo, vários idiomas em uma única tarefa, um glossário que precisa ser seguido e cada lançamento Desnecessário para dez strings
Uma plataforma de gerenciamento de tradução (Crowdin, Lokalise, Phrase) Uma equipe com fluxo de trabalho contínuo, revisores e integração com um repositório Você precisa configurar um projeto e conectar seu repositório antes de traduzir a primeira string
DeepL Arquivos XLIFF de até 10 MB Aceita XLIFF, mas não os outros formatos desta lista. Além disso, substitui termos do glossário sem entender por que eles são fixos
ChatGPT, Claude ou outro assistente Algumas strings Você precisa escrever o prompt e incluir o glossário em cada conversa. Um arquivo longo é gerado token por token, lentamente, e consome seu limite de uso. A cada execução, há o risco de uma chave mudar ou um placeholder ficar corrompido
Um freelancer ou uma agência A página da App Store e a integração inicial do app É lento, cobrado por palavra, e você ainda precisa preparar os arquivos

Pague uma pessoa para traduzir as cinco strings que vendem seu app: a descrição na loja e a primeira tela. Deixe as milhares de strings que vêm depois por conta de um mecanismo.

Escolha seu arquivo

Cada formato tem uma página própria, com uma ferramenta gratuita e todos os detalhes. Veja o principal sobre cada um.

Arquivo Onde fica O que você precisa saber
JSON locales/en.json As chaves são devolvidas na mesma ordem. Placeholders como {count} são preservados conforme suas instruções
ARB (Flutter) lib/l10n/app_en.arb As entradas de metadados @ são copiadas. Defina @@locale para o idioma de destino
YAML config/locales/en.yml Placeholders no estilo Rails, como %{name}, são identificados. Os comentários são removidos quando o arquivo é salvo novamente
TOML i18n/en.toml (Hugo) Apenas os valores de texto mudam. Em geral, os comentários são mantidos
XLIFF exportações das suas ferramentas Versões 1.2 e 2.0. As tags inline são reconstruídas a partir do original
PO e POT locale/fr/LC_MESSAGES/app.po As entradas no plural recebem as formas do idioma de destino, e o cabeçalho Plural-Forms é reescrito
Qt Linguist app_fr.ts Mensagens no plural (numerus) ainda não são traduzidas. Execute lrelease depois
String Catalog Localizable.xcstrings Todos os idiomas ficam em um único arquivo. Substituições e variações por dispositivo são mantidas como estão
iOS .strings fr.lproj/Localizable.strings O arquivo é devolvido em UTF-8, com os blocos de comentários preservados. Os plurais de .stringsdict também são tratados
Android XML res/values-fr/strings.xml Plurais e listas de strings são tratados. O atributo translatable="false" é respeitado
RESX e RESW Resources.fr.resx Você recebe um arquivo por idioma. Os comentários do desenvolvedor permanecem em inglês
Java .properties messages_fr.properties Apenas UTF-8. Antes, coloque em uma única linha qualquer valor que continue na linha seguinte

Os formatos não organizam os idiomas da mesma forma. Um String Catalog mantém todos os idiomas em um único arquivo. A maioria dos outros formatos, incluindo JSON, Android e iOS, mantém um idioma por arquivo, então cada idioma de destino fica em seu próprio arquivo.

Como fica um arquivo traduzido

Só os valores mudam.

Um arquivo de localidade antes e depois. As chaves e os placeholders permanecem como estão; somente os valores são traduzidos.

O fluxo de um arquivo

As cinco etapas de um trabalho com arquivo de idioma. Tudo antes da aprovação é grátis, então não custa nada corrigir um plano errado.

Nada é cobrado antes da etapa quatro, e corrigir um plano inadequado não custa nada.

Como fazer, passo a passo

1. Teste um arquivo grátis. Cada página de formato tem uma ferramenta gratuita que não exige cadastro.

2. Envie o arquivo pelo app ou pela linha de comando, explicada mais adiante.

3. Diga em uma frase o que você precisa.

Translate this file into French.
Skip every key that starts with "internal.".
Instructions for this batchOptional
Apply
Você descreve o trabalho em inglês simples. O AI Glot o transforma em um plano que você pode ler e corrigir antes de qualquer execução.

A frase define o que será traduzido em todo o arquivo. Regras sobre a redação em si, como “mantenha cada {placeholder} exatamente como está” ou “use linguagem informal”, devem ser inseridas no segundo campo durante a aprovação, pois são aplicadas a cada string conforme ela é escrita.

4. Adicione um glossário com o nome do produto, os nomes dos recursos e as palavras que seu app sempre usa da mesma forma. Veja como criar um.

Um glossário define os termos que não podem variar e aplica a mesma decisão a todos os arquivos.

5. Escolha um nível de qualidade.

Dois níveis de qualidade, escolhidos por arquivo. O Lite cobre cerca de três vezes mais palavras com os mesmos créditos.

Lite rende cerca de três vezes mais palavras por crédito e é mais rápido. É ideal para o conjunto extenso de configurações e textos de ajuda. Standard é para as strings que a pessoa usuária lê primeiro. Um crédito equivale a uma palavra no Standard.

6. Aprove e baixe.

Um único arquivo retorna, no mesmo formato em que foi enviado.

Um arquivo, vários idiomas

Um arquivo de origem gera um arquivo traduzido por idioma, todos com as mesmas chaves e o mesmo glossário.

Os nomes dos arquivos são apenas um exemplo. Para processar uma pasta inteira de arquivos de localização, coloque-os em um ZIP: até 200 arquivos e 20 MB são processados em uma única tarefa.

Três maneiras de usar

Três formas de traduzir seus arquivos de idioma. Todas geram os mesmos arquivos traduzidos.

A linha de comando é a opção que os desenvolvedores mantêm. São as mesmas quatro etapas, em um script:

# 1. Create the job. Free. Returns a plan and an id.
id=$(aiglot batches create locales/en.json \
      --instruction "Translate into French. Skip every key that starts with internal." \
      --json | jq -r '.data.id')

# 2. Read the plan for free, then commit.
aiglot batches get "$id" --json | jq '.data.plan'
aiglot batches approve "$id" --quality lite \
  --instructions "Keep every {placeholder} exactly as written."

# 3. When the status is completed, bring the file back.
aiglot batches download "$id" --output locales/fr.json

Com seu agente de IA: conecte o AI Glot como servidor MCP. O agente pode ler seu repositório, sugerir os termos de glossário que encontrar, adicioná-los ao seu espaço de trabalho, executar a tarefa e devolver os arquivos aos locais corretos.

No app: envie, clique e baixe. Ideal para uma tarefa pontual.

Para integrar via API, consulte a documentação da API.

Confira o resultado

Compile o app em um idioma traduzido e abra as três telas com as strings mais longas. Depois, execute o lint de sempre ou verifique se há chaves ausentes, porque uma chave alterada aparece como uma string faltando. O texto traduzido costuma ser mais longo que o original em inglês, então confira se algum botão ou rótulo está transbordando.

Em Preços, você encontra os valores para volumes maiores. Uma conta gratuita inclui créditos para processar um arquivo real.


Os limites informados aqui eram os vigentes quando este texto foi escrito: 200 arquivos e 20 MB por ZIP. O limite do DeepL vem da documentação do próprio serviço. Os nomes de arquivo e a quantidade de strings nos diagramas são exemplos. Seu plano mostra os números reais dos seus arquivos, e você pode consultá-lo gratuitamente.

Ganhe 10.000 palavras grátis ao se cadastrar

Pronto para traduzir seus arquivos grandes?