---
title: Lingo.dev + .xml (Android)
---

**Lingo.dev CLI** übersetzt Android XML-Ressourcendateien unter Beibehaltung der nativen Struktur, Attribute und Android-spezifischen Konventionen. Die CLI integriert sich nahtlos in bestehende Android-Build-Prozesse, erhält Ressourcenverknüpfungssysteme, arbeitet mit Gradle und Android Studio zusammen und folgt den Plattform-Lokalisierungsstandards ohne Formatkonvertierungen zu erfordern.

## Schnelle Einrichtung

Verweisen Sie auf Ihre Android-Ressourcendateien mit Locale-basierten Ordnermustern:

```json
{
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de", "ja"]
  },
  "buckets": {
    "android": {
      "include": ["res/values-[locale]/strings.xml"]
    }
  }
}
```

**Erinnerung**: `[locale]` ist ein Platzhalter, der wörtlich in der Konfiguration verbleiben sollte, da er während der CLI-Ausführung durch die tatsächliche Locale ersetzt wird.

## Umgang mit Standard-Ressourcen

Android erfordert einen Standard-Ordner `values/`. Erstellen Sie einen symbolischen Link für die Kompatibilität:

```bash
cd res
ln -s values-en values
```

Dies erfüllt die Anforderungen von Android und ermöglicht gleichzeitig eine korrekte Locale-Handhabung.

## Ressourcen übersetzen

```bash
npx lingo.dev@latest i18n
```

Verarbeitet alle Android-Ressourcentypen unter Beibehaltung der XML-Formatierung, Attribute und spezieller Android-Syntax.

## Vollständige Unterstützung für Android-Ressourcen

### String-Arrays

```xml
<string-array name="planets">
    <item>Mercury</item>
    <item>Venus</item>
    <item>Earth</item>
</string-array>
```

### Plurals mit Mengenangaben

```xml
<plurals name="songs_found">
    <item quantity="one">%d song found</item>
    <item quantity="other">%d songs found</item>
</plurals>
```

### Format-Erhaltung

- **HTML-Markup**: `<b>`, `<i>`, `<u>`-Tags werden beibehalten
- **Format-Spezifizierer**: `%1$s`, `%2$d`-Platzhalter bleiben erhalten
- **CDATA-Abschnitte**: `<![CDATA[]]>`-Inhalte werden korrekt behandelt
- **String-Referenzen**: `@string/app_name`-Verknüpfungen werden beibehalten
- **Sonderzeichen**: `\@`, `\?`, `\#`-Escaping bleibt erhalten

## Erweiterte Konfiguration

### Mehrere Ressourcendateien

```json
"android": {
  "include": [
    "res/values-[locale]/strings.xml",
    "res/values-[locale]/plurals.xml"
  ]
}
```

### Nicht übersetzbare Strings überspringen

Respektiert automatisch `translatable="false"` Attribute.
