---
title: "Como traduzir arquivos ARB do Flutter com IA"
description: "Adicione um idioma ao seu app Flutter. Traduza o app_en.arb com IA, mantenha os metadados @ e os plurais ICU e depois execute flutter gen-l10n. Veja as opções e etapas."
date: 2026-10-04
language: pt
canonical: https://ai-glot.com/pt/blog/how-to-translate-flutter-arb-files-with-ai
source: AI Glot blog
---
**Para adicionar um idioma a um app Flutter, você traduz um arquivo: o ARB de modelo.** Todo o resto, inclusive as classes Dart, é gerado a partir dele.

Este guia trata desse único arquivo, `app_en.arb`, e dos três pontos que costumam dar problema: os metadados `@`, os placeholders e os plurais. Para outros formatos de app, veja [como traduzir os arquivos de idioma do seu app](/pt/blog/how-to-translate-app-language-files-with-ai).

## O que é um arquivo ARB

Um arquivo ARB é um JSON com uma convenção adicional. A [ferramenta de localização do Flutter](https://docs.flutter.dev/ui/internationalization) lê arquivos ARB de `lib/l10n` por padrão, usa `app_en.arb` como modelo e gera as classes Dart quando você executa `flutter gen-l10n`. Cada arquivo corresponde a um idioma.

As entradas vêm em pares: uma chave com o texto e uma entrada `@` que o descreve. Só o texto deve ser traduzido.

## Qual opção você deve usar?

| | Ideal para | Limitações |
|---|---|---|
| **AI Glot** | Um ou vários novos locales, um glossário que precisa ser respeitado e cada lançamento | Não vale a pena para dez strings |
| **Uma plataforma de gerenciamento de tradução** (Crowdin, Lokalise, Phrase, Localizely) | Uma equipe com revisores e conexão com o repositório | Primeiro, você precisa configurar um projeto e conectar o repositório |
| **DeepL** | Arquivos XLIFF, que [estão na lista](https://developers.deepl.com/docs/best-practices/document-translations) | ARB não está na lista, então você precisa converter o arquivo primeiro |
| **ChatGPT, Claude ou outro assistente** | Poucas strings | Você escreve o prompt e inclui o glossário em cada conversa. A cada execução, uma chave pode mudar, um `{placeholder}` pode quebrar ou um plural ICU pode ser alterado. Por isso, compare todos os arquivos |
| **Um freelancer ou uma agência** | O texto da sua App Store e da Play Store | O processo é lento, o preço é por palavra e você ainda precisa preparar o arquivo |

**Contrate um profissional para a página da loja e a primeira tela.** Use um mecanismo para traduzir o restante dos rótulos e das mensagens.

## Por que o AI Glot é ideal para arquivos ARB

- **As chaves e os metadados `@` fazem parte da estrutura.** Eles podem permanecer exatamente como estão.
- **Placeholders e sintaxe ICU são preservados.** `{name}` e `{count, plural, ...}` permanecem na mensagem, enquanto as palavras de cada ramificação são traduzidas.
- **Vários idiomas em uma única tarefa**, sem repetir as mesmas strings cinco vezes.
- **Um glossário para todos os locales** e para os arquivos que você adicionar depois.
- **Um plano antes de qualquer gasto**, com uma amostra que você pode revisar.

## O fluxo de um arquivo

*Illustration: As cinco etapas de uma tarefa de ARB. Tudo antes da aprovação é grátis, então não há custo para corrigir um plano que interpretou o arquivo errado.*

## Como fica uma entrada traduzida

*Illustration: Uma entrada ARB antes e depois. As chaves, os metadados @ e os marcadores de posição permanecem como estão; as palavras nas opções de plural são traduzidas.*

## O que verificar depois

**Plurais em idiomas com mais formas.** O inglês precisa de dois ramos. O russo e o árabe precisam de mais, e a mensagem traduzida pode precisar de ramos que não existem no texto original em inglês. Revise essas mensagens uma vez.

**`@@locale`.** Se você não pediu para atualizar esse valor, ele volta como estava. Então, defina a localidade de destino antes de publicar.

**Comprimento.** Confira as telas com as strings mais longas para ver se algum texto ultrapassa os limites de um botão ou cartão.

## Como fazer, passo a passo

**1. Experimente um arquivo grátis.** O [tradutor de ARB](/pt/file-formats/arb-translation) não exige conta e aceita arquivos de até 2 MB e 5,000 palavras.

**2. Envie `app_en.arb`** [no app](https://app.ai-glot.com/signup) ou envie-o pela linha de comando, abaixo.

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

```
Translate this file into French, German and Spanish.
Leave the @ metadata entries alone. Set @@locale to the target language.
```

*Illustration: 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. Uma regra de redação, como "mantenha cada `{placeholder}` e a sintaxe de plural do ICU exatamente como estão" ou "use um tom informal", deve ser incluída no segundo campo durante a aprovação, pois é aplicada a cada mensagem à medida que ela é escrita.

**4. Adicione um glossário** com o nome do app, os nomes dos recursos e os termos que o app sempre usa da mesma forma. [Veja como criar um](/pt/blog/build-translation-glossary-brand).

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

**5. Confira o plano e escolha um nível de qualidade.**

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

**Lite** oferece cerca de três vezes mais palavras por crédito e é mais rápido. É ideal para uma primeira versão em uma nova localidade. **Standard** é para as strings que as pessoas veem primeiro. Um crédito equivale a uma palavra no Standard.

**6. Aprove e baixe.**

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

**7. Coloque os arquivos em `lib/l10n`**, junto de `app_en.arb`, e execute:

```bash
flutter gen-l10n
```

## Um arquivo, várias localidades

*Illustration: Um arquivo ARB de modelo gera um arquivo traduzido por localidade, todos com as mesmas chaves e o mesmo glossário.*

Os nomes dos arquivos e as quantidades são apenas exemplos. Um arquivo ARB contém um idioma, então cada localidade precisa de seu próprio arquivo.

## Três maneiras de usar

*Illustration: Três maneiras de traduzir seu arquivo ARB. Todas geram os mesmos arquivos traduzidos.*

**Pela linha de comando** é a opção que os desenvolvedores Flutter mantêm, porque ela é executada novamente a cada lançamento:

```bash
id=$(aiglot batches create lib/l10n/app_en.arb \
      --instruction "Translate into French. Leave the @ metadata entries alone. Set @@locale to the target language." \
      --json | jq -r '.data.id')
aiglot batches get "$id" --json | jq '.data.plan'
aiglot batches approve "$id" --quality lite \
  --instructions "Keep every {placeholder} and ICU plural syntax exactly as written."
aiglot batches download "$id" --output lib/l10n/app_fr.arb
```

**Com seu agente de IA:** conecte o AI Glot como um [servidor MCP](https://ai-glot.com/docs/mcp/overview). O agente pode ler seu projeto, sugerir termos para o glossário, executar o trabalho, salvar os arquivos em `lib/l10n` e rodar `flutter gen-l10n` para você.

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

Para integrar via API, consulte a [documentação da API](https://ai-glot.com/docs/api/overview).

Em [Preços](/pt/pricing), você encontra os valores para volumes maiores. Uma [conta gratuita](https://app.ai-glot.com/signup) inclui créditos para processar um arquivo real.

---

*Os limites citados aqui são os que estavam em vigor quando este texto foi escrito: 8 MB por arquivo ARB e 2 MB e 5,000 palavras na ferramenta gratuita. Os valores padrão do Flutter vêm da documentação do próprio Flutter e podem mudar. A lista do DeepL vem da documentação dele. Os nomes de arquivos e as contagens de strings nos diagramas são exemplos. Seu plano mostra os números reais do seu arquivo, e a consulta é gratuita.*