Flutter Templates

Wie man eine AI-Sprachübersetzer-App mit Flutter und Back4App erstellt

31min

Einführung

In diesem Tutorial lernen Sie, wie Sie eine AI Voice Translator-App mit Flutter als Frontend-Framework und Back4App als Backend-Service erstellen. Die App ermöglicht es Benutzern, Sprache, Text und Bilder in mehrere Sprachen zu übersetzen. Sie wird über KI-gestützte Übersetzungen, optische Zeichenerkennung (OCR) und Spracherkennungsfunktionen verfügen. Am Ende dieses Tutorials haben Sie eine App erstellt, die Echtzeitübersetzungen verarbeiten und die Historie auf Back4App für zukünftige Verwendung speichern kann.

Voraussetzungen

Um dieses Tutorial abzuschließen, benötigen Sie:

  • Ein Back4App-Konto. Melden Sie sich für ein kostenloses Konto bei Back4App an.
  • Flutter SDK auf Ihrem lokalen Computer installiert. Befolgen Sie die offizielle Flutter-Installationsanleitung.
  • Grundkenntnisse in Dart und Flutter. Wenn Sie neu bei Flutter sind, lesen Sie die Flutter-Dokumentation durch, bevor Sie fortfahren.
  • Ein Konto bei einem Übersetzungs-API-Anbieter wie Google Cloud Translation oder DeepL.
  • Vertrautheit mit REST-APIs und asynchroner Programmierung in Dart.

Schritt 1 — Einrichten Ihres Back4App-Backends

In diesem Schritt richten Sie eine Back4App-Anwendung ein, definieren die Datenmodelle und konfigurieren das Backend, um Übersetzungshistorie, Sprachen und Benutzerdaten zu speichern.

1.1. Erstellen Sie eine neue Anwendung auf Back4App

  1. Melden Sie sich bei Ihrem Back4App-Dashboard an.
  2. Klicken Sie auf "Neue App erstellen".
  3. Geben Sie einen App-Namen (z. B. "AI Voice Translator") ein und wählen Sie Ihr App-Symbol aus.
  4. Wählen Sie Ihren Serverstandort, falls Sie dazu aufgefordert werden.
  5. Klicken Sie auf "Erstellen".

1.2. Abrufen der Anwendungs-Schlüssel

  1. Navigieren Sie zu App-Einstellungen > Sicherheit & Schlüssel im Dashboard Ihrer App.
  2. Notieren Sie sich die Anwendungs-ID und den Client-Schlüssel. Diese werden für die Konfiguration der Flutter-App benötigt.

1.3. Definieren Sie Ihre Datenmodelle

Wir werden die folgenden Klassen in Back4App erstellen:

  • Benutzer (Standard)
  • Übersetzung
  • Sprache
  • Phrase
  • WörterbuchEintrag

1.3.1. Erstellen Sie die Übersetzungsklasse

  1. Gehe zu Datenbank > Browser.
  2. Klicke auf "Klasse erstellen".
  3. Wähle "Benutzerdefiniert" und nenne es Übersetzung.
  4. Klicke auf "Klasse erstellen".

Füge die folgenden Spalten zu Übersetzung:

  • Benutzer (Pointer<_User>): Zeigt auf das Benutzer-Objekt.
  • Quellsprache (String): Quellsprache-Code.
  • Zielsprache (String): Zielsprachencode.
  • Quelltext (String): Der originale Text zur Übersetzung.
  • übersetzterText (String): Der übersetzte Text.
  • Übersetzungsart (String): Art der Übersetzung (Sprache, Text, Bild).
  • Zeitstempel (Datum/Uhrzeit).

1.3.2. Erstellen Sie die Sprachklasse

  1. Wiederholen Sie die Schritte, um eine neue Klasse mit dem Namen Sprache zu erstellen.

Fügen Sie die folgenden Spalten zu Sprache:

  • name (String): Der Name der Sprache (z.B. "Englisch").
  • code (String): ISO-Code der Sprache (z.B. "en").
  • flagIconUrl (String): URL des Flaggenbildes, das die Sprache darstellt.

1.3.3. Erstellen Sie die Phrasenklasse

  1. Erstellen Sie eine Klasse mit dem Namen Phrase.

Fügen Sie die folgenden Spalten hinzu Phrase:

  • Kategorie (String): Die Kategorie der Phrase (z.B. "Grüße").
  • Quellsprache (String): Quellsprache Code.
  • Zielsprache (String): Zielsprachencode.
  • Quelltext (String): Die ursprüngliche Phrase.
  • übersetzterText (String): Die übersetzte Phrase.

1.3.4. Erstellen Sie die DictionaryEntry-Klasse

  1. Erstellen Sie eine Klasse mit dem Namen DictionaryEntry.

Fügen Sie die folgenden Spalten hinzu DictionaryEntry:

  • Wort (String): Das definierte Wort.
  • Sprache (String): Die Sprache des Wortes.
  • Definition (String): Die Definition des Wortes.
  • Beispiele (Array): Beispielsätze mit dem Wort.

1.4. Klassenebene Berechtigungen festlegen

Stellen Sie sicher, dass nur authentifizierte Benutzer auf ihre eigenen Daten zugreifen können:

  1. Für jede Klasse gehen Sie zu Sicherheit > Klassenebene Berechtigungen (CLP).
  2. Setzen Sie die CLP, um Lese-/Schreibzugriff nur für authentifizierte Benutzer zu erlauben.

Schritt 2 — Einrichten Ihres Flutter-Projekts

In diesem Schritt richten Sie ein Flutter-Projekt ein und konfigurieren es, um eine Verbindung zu Back4App herzustellen.

2.1. Erstellen Sie ein neues Flutter-Projekt

Öffnen Sie Ihr Terminal und führen Sie aus:

Bash


Navigieren Sie zum Projektverzeichnis:

Bash


2.2. Fügen Sie erforderliche Abhängigkeiten hinzu

Öffnen Sie pubspec.yaml und fügen Sie die folgenden Abhängigkeiten hinzu:

YAML


Führen Sie flutter pub get aus, um die Pakete zu installieren.

2.3. Initialisieren Sie Parse in Ihrer Flutter-App

Erstellen Sie eine neue Datei lib/config/back4app_config.dart:

Dart


Ersetzen Sie 'YOUR_APPLICATION_ID' und 'YOUR_CLIENT_KEY' mit den Schlüsseln von Back4App.

In lib/main.dart, initialisiere Parse:

Dart


Erstelle lib/app.dart:

Dart


Schritt 3 — Implementierung der Textübersetzung

Die erste Funktion, die implementiert werden soll, ist die grundlegende Textübersetzung.

3.1. Übersetzungsdienst konfigurieren

Erstelle lib/services/translation_service.dart um Interaktionen mit einer Übersetzungs-API (Google Cloud Translation API oder DeepL) zu verwalten.

Dart


3.2. Sprachmodell implementieren

Erstelle lib/models/language.dart um unterstützte Sprachen darzustellen.

Dart


3.3. Erstellen Sie den Bildschirm für die Textübersetzung

Erstellen Sie lib/screens/text_translation_screen.dart um die Texteingabe und Übersetzung zu verarbeiten:

Dart


Schritt 4 — Implementierung der Sprachübersetzung

In diesem Schritt fügen Sie die Sprachübersetzung hinzu, indem Sie Spracherkennung und Text-zu-Sprache Funktionen integrieren.

4.1. Sprachsteuerung einrichten

Erstellen Sie lib/services/speech_recognition_service.dart mit dem speech_to_text Paket:

Dart


4.2. Text-to-Speech (TTS) hinzufügen

Erstellen Sie lib/services/tts_service.dart mit dem flutter_tts Paket:

Dart


4.3. Erstellen Sie den Sprachübersetzungsbildschirm

Erstellen Sie lib/screens/voice_translation_screen.dart um die Sprachübersetzung zu behandeln:

Dart


Schritt 5 — Implementierung der Bildübersetzung (OCR)

5.1. OCR-Dienst einrichten

Erstellen Sie lib/services/ocr_service.dart mit dem google_ml_kit Paket:

Dart


5.2. Erstellen Sie den Bildschirm für die Bildübersetzung

Erstellen Sie lib/screens/image_translation_screen.dart um die Bildeingabe und OCR zu verarbeiten:

Dart


Schritt 6 — Übersetzungshistorie und Phrasebuch

In diesem Schritt implementieren Sie das Speichern der Übersetzungshistorie und das Verwalten eines Phrasebuchs.

6.1. Übersetzungshistorie speichern

Aktualisieren Sie lib/services/translation_service.dart um die Übersetzungshistorie in Back4App zu speichern:

Dart


6.2. Implementierung des Phrasebuchs

Erstellen Sie lib/screens/phrase_book_screen.dart um gängige Phrasen zu verwalten:

Dart


Fazit

Indem Sie dieses Tutorial befolgen, haben Sie eine funktionsreiche AI Voice Translator App mit Flutter und Back4App. Sie haben implementiert:

  • Grundlegende und erweiterte Textübersetzung.
  • Sprach-zu-Sprach-Übersetzung mit Spracherkennung und Text-zu-Sprache.
  • Bild-zu-Text-Übersetzung mit OCR.
  • Verwaltung der Übersetzungshistorie und ein Wörterbuch für gängige Ausdrücke.

Nächste Schritte

  • UI/UX verbessern: Verbessern Sie die Benutzeroberfläche der App für ein reibungsloseres Benutzererlebnis.
  • Fehlerbehandlung verbessern: Fügen Sie Fehlerbehandlung und Fallback-Mechanismen für API-Fehler hinzu.
  • Offline-Modus implementieren: Cachen Sie gängige Übersetzungen, Phrasen und die Historie für den Offline-Zugriff.
  • Die App bereitstellen: Bereiten Sie die App für die Bereitstellung auf iOS- und Android-Plattformen vor.