App für vernetzte Fahrzeuge zur Fernsteuerung und Flottenüberwachung

Eine App für vernetzte Fahrzeuge zur Fernsteuerung, Echtzeitüberwachung und Dashcam-Verwaltung auf Basis von Kotlin Multiplatform (KMP) und nativen Integrationen.

App für vernetzte Fahrzeuge zur Fernsteuerung und Flottenüberwachung hero background

Über unseren Kunden

Unser Kunde ist ein innovativer Anbieter von Fahrzeugtechnologie. Das Unternehmen entwickelt ein eigenes System aus intelligenten Geräten für vernetzte Fahrzeuge, darunter Dashcams, Klimasteuerungen, Sensoren für Fahrzeugdaten und Sicherheitssysteme.

Der Kunde suchte einen Partner für die Entwicklung einer mobilen App, mit der sich diese Geräte über Mobilfunk, Wi-Fi und Bluetooth steuern lassen.

Um die komplexe Logik zur Kommunikation mit der Hardware nicht separat für Android und iOS entwickeln zu müssen, benötigte der Kunde einen wiederverwendbaren Kern, der unabhängig bereitgestellt und als Grundlage für künftige Apps genutzt werden kann.

  • Region: Europa / Weltweit
  • Branche: Automobilindustrie / IoT / Flottenmanagement
  • Projektdauer: ca. 12 Monate
Über unseren Kunden

Herausforderung

Das wachsende System aus eigenen Geräten für vernetzte Fahrzeuge brachte mehrere technische Herausforderungen und Anforderungen an die Architektur mit sich:

  • Integration verschiedener Gerätetypen mit unterschiedlichen APIs und Protokollen für die Kommunikation
  • Trennung der Logik zur Steuerung der Hardware von der App-Oberfläche zur Wiederverwendung in künftigen Produkten
  • Zuverlässiger Wechsel zwischen Bluetooth Low Energy, Wi-Fi und Mobilfunk
  • Verarbeitung von Videostreams, Downloads und umfangreichen Dashcam-Aktionen ohne Verzögerungen bei der Bedienung
  • Integration leistungsstarker C/C++-Bibliotheken in eine moderne Architektur für mobile Apps auf mehreren Plattformen
  • Entwicklung einer einheitlichen Schnittstelle zur Einbindung neuer Gerätemodelle ohne größere Änderungen an der App
Herausforderung

Hauptziele

Um eine schnell reagierende mobile App zu entwickeln und eine wiederverwendbare technische Grundlage für künftige Produkte zu schaffen, legten wir folgende Ziele fest:

  • Entwicklung einer leistungsstarken App für Android und iOS mit gemeinsamer Codebasis
  • Skalierbare Grundlage für die Fernüberwachung und Steuerung vernetzter Fahrzeuge
  • Entwicklung eines wiederverwendbaren Kotlin-Multiplatform-Kerns (KMP) als SDK zur Steuerung der Hardware
  • Integration von C/C++ zur schnellen Verarbeitung von Fahrzeugdaten und Videos sowie zur Kommunikation mit Geräten
  • Einheitliche Hardware-APIs zur einfachen Integration neuer Gerätemodelle
  • Wechsel zwischen Mobilfunk-, Wi-Fi- und Bluetooth-Verbindungen
  • Intuitive Oberfläche für Fahrzeugüberwachung, Dashcams, Klima- und Zündungssteuerung sowie Sicherheitswarnungen
Hauptziele

Projektübersicht

Wir entwickelten eine mobile App für mehrere Plattformen mit einem eigenständigen Kern zur Steuerung der Hardware.

Das Flutter-Frontend sorgte für eine einheitliche Bedienung auf Android und iOS. Der Kotlin-Multiplatform-Kern (KMP) übernahm die Kommunikation mit Geräten, deren Verwaltung und die Geschäftslogik.

Eine native C/C++-Ebene wurde in den Kern integriert, um systemnahe Datenströme, kryptografische Protokolle und Videos zu verarbeiten sowie die Kommunikation mit externen Geräten zu ermöglichen.

Für die weitere Nutzung in anderen Produkten trennten wir den KMP-Kern von der Benutzeroberfläche und stellten ihn als eigenständiges Flutter-Plugin bereit.

Einheitliche Schnittstellen ermöglichten es, verschiedene Hardware-APIs mit gemeinsamen App-Befehlen zu verknüpfen. So konnten neue Gerätemodelle integriert werden, ohne die bestehende Architektur der Benutzeroberfläche zu ändern.

Projektübersicht

Lösung

Die fertige Lösung war eine App für vernetzte Fahrzeuge auf Android und iOS. Sie kombinierte eine Flutter-Oberfläche, einen wiederverwendbaren Kotlin-Multiplatform-Kern (KMP) und native C/C++-Komponenten.

Die App vereinte Fahrzeugüberwachung, Fernsteuerung, Dashcam-Verwaltung und die Kommunikation mit den verschiedenen Geräten des Kunden.

Kernfunktionen der Plattform

  • Fahrzeugüberwachung auf Android und iOS
  • Wiederverwendbarer KMP-Kern zur Steuerung der Hardware
  • Fahrzeugdaten und Sensorstatus in Echtzeit
  • Live-Streaming und Verwaltung von Dashcam-Aufnahmen
  • Download von Dateien aus der Galerie und automatische Bereinigung des Speichers
  • Verbindung über Bluetooth, Wi-Fi und Mobilfunk
  • Fernsteuerung von Zündung und Klimaanlage
  • Alarmmeldungen und Sicherheitswarnungen für Fahrzeuge
  • Einheitliche Schnittstellen für verschiedene Gerätemodelle
  • Systemnahe Verarbeitung von Daten und Videos mit C/C++
  • Eigenständiges Flutter-Plugin zur Wiederverwendung in anderen Apps
Lösung

Nutzer-Workflow

  • Fahrzeugverbindung: Die App verband sich über Bluetooth Low Energy (BLE), Wi-Fi oder Mobilfunk mit dem Fahrzeug.
  • Fahrzeugüberwachung: Nutzer sahen Fahrzeugdaten, Sensorinformationen und den Gerätestatus in Echtzeit.
  • Fernsteuerung: Berechtigte Nutzer steuerten Zündung, Klimaanlage und Alarmanlage aus der Ferne.
  • Dashcam-Verwaltung: Nutzer sahen Live-Videos, luden Aufnahmen herunter und verwalteten gespeicherte Dateien.
  • Verarbeitung im Hintergrund: Datenübertragungen und Medienprozesse liefen unabhängig von der App-Oberfläche.
  • Integration neuer Geräte: Neue Gerätetypen ließen sich ohne Änderungen an der Benutzeroberfläche anbinden.
Nutzer-Workflow

Technologie-Stack

Für die Fahrzeugsteuerung auf mehreren Plattformen, die wiederverwendbare Logik zur Steuerung der Hardware und eine leistungsstarke IoT-Kommunikation setzten wir folgende Technologien ein:

  • Frontend/UI: Flutter, Dart
  • Gemeinsamer Kern: Kotlin Multiplatform (KMP), Kotlin/Native, Eigenständiges Flutter-Plugin
  • Native Integration: C/C++, JNI / cinterop, Pigeon
  • Verbindungen: Bluetooth Low Energy (BLE), Wi-Fi Direct, TCP/IP, MQTT / WebSockets
  • Architektur: Trennung von Benutzeroberfläche und Steuerung der Hardware, Ansatz mit wiederverwendbarem SDK
  • Datenverarbeitung: Parallele Verarbeitung von Fahrzeugdaten, Medien und Geräteaktionen im Hintergrund
Technologie-Stack

Kernteam

  • Lösungsarchitekt: Konzipierte die KMP-Architektur, SDK-Grenzen und einheitliche Hardware-APIs.
  • Mobile Entwickler (Flutter): Entwickelten die App-Oberfläche und integrierten den KMP-Kern.
  • Embedded- und Core-Entwickler: Implementierten C/C++-Integrationen, die Kommunikation mit Geräten und die Optimierung der Speichernutzung.
  • DevOps-Ingenieure: Verwalteten CI/CD, Android- und iOS-Builds sowie die SDK-Paketierung.
  • QA-Ingenieure: Testeten Verbindungen, Steuerung, Dashcams, Dateitransfers und SDK-Kompatibilität.
Kernteam

Zugehörige Fallbeispiele