Wie man eine AI-Sprachübersetzer-App mit Flutter und Back4App erstellt
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.
Um dieses Tutorial abzuschließen, benötigen Sie:
- 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.
In diesem Schritt richten Sie eine Back4App-Anwendung ein, definieren die Datenmodelle und konfigurieren das Backend, um Übersetzungshistorie, Sprachen und Benutzerdaten zu speichern.
- Klicken Sie auf "Neue App erstellen".
- Geben Sie einen App-Namen (z. B. "AI Voice Translator") ein und wählen Sie Ihr App-Symbol aus.
- Wählen Sie Ihren Serverstandort, falls Sie dazu aufgefordert werden.
- Klicken Sie auf "Erstellen".
- Navigieren Sie zu App-Einstellungen > Sicherheit & Schlüssel im Dashboard Ihrer App.
- Notieren Sie sich die Anwendungs-ID und den Client-Schlüssel. Diese werden für die Konfiguration der Flutter-App benötigt.
Wir werden die folgenden Klassen in Back4App erstellen:
- Benutzer (Standard)
- Übersetzung
- Sprache
- Phrase
- WörterbuchEintrag
1.3.1. Erstellen Sie die Übersetzungsklasse
- Gehe zu Datenbank > Browser.
- Klicke auf "Klasse erstellen".
- Wähle "Benutzerdefiniert" und nenne es Übersetzung.
- 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
- 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
- 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
- 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.
Stellen Sie sicher, dass nur authentifizierte Benutzer auf ihre eigenen Daten zugreifen können:
- Für jede Klasse gehen Sie zu Sicherheit > Klassenebene Berechtigungen (CLP).
- Setzen Sie die CLP, um Lese-/Schreibzugriff nur für authentifizierte Benutzer zu erlauben.
In diesem Schritt richten Sie ein Flutter-Projekt ein und konfigurieren es, um eine Verbindung zu Back4App herzustellen.
Öffnen Sie Ihr Terminal und führen Sie aus:
Navigieren Sie zum Projektverzeichnis:
Öffnen Sie pubspec.yaml und fügen Sie die folgenden Abhängigkeiten hinzu:
Führen Sie flutter pub get aus, um die Pakete zu installieren.
Erstellen Sie eine neue Datei lib/config/back4app_config.dart:
Ersetzen Sie 'YOUR_APPLICATION_ID' und 'YOUR_CLIENT_KEY' mit den Schlüsseln von Back4App.
In lib/main.dart, initialisiere Parse:
Erstelle lib/app.dart:
Die erste Funktion, die implementiert werden soll, ist die grundlegende Textübersetzung.
Erstelle lib/services/translation_service.dart um Interaktionen mit einer Übersetzungs-API (Google Cloud Translation API oder DeepL) zu verwalten.
Erstelle lib/models/language.dart um unterstützte Sprachen darzustellen.
Erstellen Sie lib/screens/text_translation_screen.dart um die Texteingabe und Übersetzung zu verarbeiten:
In diesem Schritt fügen Sie die Sprachübersetzung hinzu, indem Sie Spracherkennung und Text-zu-Sprache Funktionen integrieren.
Erstellen Sie lib/services/speech_recognition_service.dart mit dem speech_to_text Paket:
Erstellen Sie lib/services/tts_service.dart mit dem flutter_tts Paket:
Erstellen Sie lib/screens/voice_translation_screen.dart um die Sprachübersetzung zu behandeln:
Erstellen Sie lib/services/ocr_service.dart mit dem google_ml_kit Paket:
Erstellen Sie lib/screens/image_translation_screen.dart um die Bildeingabe und OCR zu verarbeiten:
In diesem Schritt implementieren Sie das Speichern der Übersetzungshistorie und das Verwalten eines Phrasebuchs.
Aktualisieren Sie lib/services/translation_service.dart um die Übersetzungshistorie in Back4App zu speichern:
Erstellen Sie lib/screens/phrase_book_screen.dart um gängige Phrasen zu verwalten:
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.
- 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.