[JAVA] Einführung der Nampure-Antwort-App "Nampure Automatic Answer" (Android-Version) und ihrer Implementierungsfunktion
Toddler Sunday Programming Nach oben
Einführung
"Nampure Automatic Answer" (Android-Version) ist eine Anwendung, die die Frage von Nampure (Sugoku) automatisch löst, wenn Sie ein Bild aufnehmen und die Antwort anzeigen.
So können Sie beispielsweise die Zeit verkürzen, um eine große Anzahl von Problemen im Preisbuch von Nampure zu lösen, die Antworten auf Fragen zu überprüfen, die keine Antworten haben, oder prüfen, ob Ihre eigenen Fragen richtig beantwortet werden können. Kann verwendet werden, um zu tun.
In diesem Artikel werden wir jede von Nampure automatische Antwort implementierte Funktion als Tipps erläutern.
- Laden Sie die App [hier] herunter (https://play.google.com/store/apps/details?id=net.ojami.android.numberplaceautosolver).
- Klicken Sie hier, um die Projektquelle abzurufen (https://devmart.jp/businesses/127).
- Der Kommentarartikel für die iOS-Version von "Nampure Automatic Answer" ist hier.
Entwicklungs- / Ausführungsumgebung
Die automatische Antwort von Nampure wird in der folgenden Umgebung entwickelt und ausgeführt.
- Entwicklungsumgebung: macOS, Android Studio (3.3 ~ 3.4), Java
- Ausführungsumgebung: Android 5.0 oder höher
Übersicht über die App-Konfiguration
Die automatische Antwort von Nampure verfügt über zwei Bildschirme. Eine ist eine einzigartige Ansicht, die das Problem der Zahl (9x9 Quadrate und die Nummer jedes Quadrats) anzeigt und Vorgänge zum Bearbeiten der Nummer akzeptiert, mehrere Schaltflächen zum Aufrufen der Funktion und eine Anzeige (AdMob). .. Der andere ist ein Kamerabildschirm, der die Camera2-API verwendet, um Bilder von Nampre-Problemen aufzunehmen.
In dieser Anwendung wird die Frage nach Nampure (9 x 9 Quadrate) aus dem von der Kamera aufgenommenen Foto ausgeschnitten, die Nummer jedes Quadrats wird erkannt und als zu beantwortende Zieldaten importiert, jedoch zum Ausschneiden der Quadrate. Es verwendet OpenCV und die OCR-Bibliothek (tess-two) zur Nummernerkennung. Der Antwortprozess ist der ursprüngliche heuristische Algorithmus.
Funktionen implementiert
Um diese Anwendung zu realisieren, werden die folgenden Funktionen implementiert und jeweils als Tipps erläutert.
- Klicken Sie auf den Link, um zum Kommentarartikel mit Tipps zu springen. Für Artikel, die nicht verlinkt sind, arbeiten wir intensiv an dem Artikel.
- AdMob integrieren (AdMob SDK)
- Anzeigen anzeigen (AdMob SDK)
- Integrieren Sie die OpenCV-Bibliothek
- Schneiden Sie einen quadratischen Bereich aus dem Foto aus (OpenCV)
- Integrieren Sie die OCR-Bibliothek (Tess-Two).
- Zeichen mit OCR-Funktion erkennen (tess-two)
--Schreiben Sie die im Asset gespeicherten Daten in eine Datei
--Erstellen Sie Ihre eigene Ansicht (FrameLayout, Ansicht)
- Zeichnen Sie in Ihrer eigenen Ansicht (Ansicht)
- Zeichnen Sie die Ansicht neu, nachdem Sie das Bildschirmlayout festgelegt haben (Rahmenlayout).
- Implementieren Sie die ursprüngliche Kamerafunktion (Camera2)
- Erhalten Sie vom Benutzer die Erlaubnis, die Kamera zu verwenden
- Daten zwischen Bildschirmen austauschen (Aktivität) (Absicht)
- Bild (Bitmap) in Datei speichern (FileOutputStream)
- Schneiden Sie einen Teil des Bildes aus (Bitmap)
- Asynchrone Verarbeitung durchführen (separate Thread-Verarbeitung) (AsyncTaskLoader)
- Anzeige / Ausschalten der Warteanzeige (rund und rund) (Fortschrittsbalken)
- Holen Sie sich die App-Versionsnummer (Package Manager)
--Das Menü anzeigen (Menü)
- Passen Sie die Form der Schaltfläche an (Schaltfläche)
- Mehrsprachige Unterstützung