Überblick
Dieses Dokument beschreibt die Entwicklung einer mobilen Anwendung, die den Standort, die Zeit und die zurückgelegte Strecke des Benutzers verfolgen soll. Die Anwendung umfasst Funktionen zum Starten und Stoppen des Trackings, zum regelmäßigen Speichern von Tracking-Daten in einer Datenbank über eine API und stellt sicher, dass Daten in regelmäßigen Abständen erfasst werden, wenn das Tracking aktiv ist.
Pakete
Endgültige Paketliste:
@react-native-async-storage/async-storage
@react-native-community/geolocation
@react-native-masked-view/masked-view
@react-navigation/bottom-tabs
@react-navigation/native
@react-navigation/native-stack
@react-navigation/stack
Haversine
jwt-dekodieren
Reagieren Sie auf native Hintergrundaktionen
Reagieren Sie auf den nativen Hintergrund-Timer
React-native-base64
React-Native-Chart-Kit
React-Native-Circular-Progress-Indikator
React-Native-Geokodierung
React-Native-Geolocation-Service
React-Native-Gesture-Handler
React-Native-Gifted-Charts
React-Native-Image-Picker
React-Native-Maps
React-Native-Berechtigungen
React-Native-Reanimation
React-Native-Screens
Reaktive-native-Sensoren
React-Native-Shake
React-Native-SVG-Transformer
React-Native-Vektorsymbole
React-Native-Vision-Kamera
Motoren
Node.js
Version: >=18
Beschreibung: Die Anwendung erfordert Node.js Version 18 oder höher.
Bildschirme und dort funktionieren
Startbildschirm
Der Startbildschirm in der Anwendung dient als Hauptschnittstelle zum Starten und Verwalten von Standortverfolgungssitzungen. Es bietet Funktionen zum Starten und Stoppen der Verfolgung, zum Anzeigen des aktuellen Standorts des Benutzers auf einer Karte sowie zum Verfolgen der verstrichenen Zeit und der während der Sitzung zurückgelegten Strecke.
Funktionen
readData
Beschreibung: Liest das Token des Benutzers zu Authentifizierungszwecken aus AsyncStorage.
handleStartTracker
Beschreibung: Initiiert die Tracking-Sitzung durch Senden einer POST-Anfrage an die Backend-API, um mit der Verfolgung des Standorts des Benutzers zu beginnen.
handlePauseTracker
Beschreibung: Pausiert die Tracking-Sitzung, indem eine POST-Anfrage an die Backend-API gesendet wird, um die Verfolgung des Standorts des Benutzers vorübergehend zu stoppen.
handleUpdateLocations
Beschreibung: Aktualisiert den aktuellen Standort des Benutzers, indem eine POST-Anfrage mit aktualisierter Breite, Länge und Standort-ID an die Backend-API gesendet wird.
berechne die Entfernung
Beschreibung: Berechnet den Abstand zwischen zwei geografischen Koordinaten mithilfe der Haversine-Formel.
startForegroundLocationUpdates
Beschreibung: Beginnt mit der Aktualisierung des Standorts des Benutzers im Vordergrund in regelmäßigen Abständen mithilfe des Geolokalisierungsdienstes des Geräts.
stopForegroundLocationUpdates
Beschreibung: Stoppt die Aktualisierung des Standorts des Benutzers im Vordergrund und löscht das für Standortaktualisierungen festgelegte Intervall.
startLocationTracking
Beschreibung: Initiiert die Standortverfolgung, indem Standortaktualisierungen im Vordergrund gestartet und ein Timer eingerichtet wird, um die verstrichene Zeit zu verfolgen.
stopLocationTracking
Beschreibung: Stoppt die Standortverfolgung, indem Standortaktualisierungen im Vordergrund gestoppt, die zurückgelegte Entfernung berechnet und die endgültigen Trackingdaten an die Backend-API gesendet werden.
Timeline-Bildschirm
Funktionen
readData
Beschreibung: Liest das Token des Benutzers zu Authentifizierungszwecken aus AsyncStorage.
berechneTotalDistance
Beschreibung: Berechnet die zurückgelegte Gesamtstrecke basierend auf den Daten der Tracking-Sitzungen.
useEffect
Beschreibung: Ruft die readData-Funktion beim Komponenten-Mount auf, um Tracking-Daten abzurufen.
Aktivitätsbildschirm
Funktionen
toggleShow1
Beschreibung: Schaltet die Sichtbarkeit des Dropdown-Menüs zur Auswahl des Jahres um.
toggleShow2
Beschreibung: Schaltet die Sichtbarkeit des Dropdown-Menüs zur Auswahl des Monats um.
toggleShow3
Beschreibung: Schaltet die Sichtbarkeit des Dropdown-Menüs zur Auswahl des Tages um.
setDay
Beschreibung: Legt den ausgewählten Tag für die Anzeige von Aktivitätsdaten fest.
setMonth
Beschreibung: Legt den ausgewählten Monat für die Anzeige von Aktivitätsdaten fest.
setJahr
Beschreibung: Legt das ausgewählte Jahr für die Anzeige von Aktivitätsdaten fest.
Profilbildschirm
Funktionen
getToken
Beschreibung: Ruft das Authentifizierungstoken des Benutzers von AsyncStorage ab.
toggleIsLogin
Beschreibung: Schaltet den Anmeldestatus des Benutzers um.
toggleUserLoginStatus
Beschreibung: Schaltet den Anmeldestatus des Benutzers um und aktualisiert AsyncStorage entsprechend.
Aktualisiert am
04.03.2026