Visió general
Aquest document descriu el desenvolupament d'una aplicació mòbil dissenyada per fer un seguiment de la ubicació, el temps i la distància recorreguda dels usuaris. L'aplicació inclou funcions per iniciar i aturar el seguiment, emmagatzemar periòdicament dades de seguiment a una base de dades mitjançant una API i garanteix que les dades es recullin a intervals regulars quan el seguiment està actiu.
Paquets
Llista de paquets finalitzada:
@react-native-async-storage/async-storage
@react-native-community/geolocalització
@react-native-masked-view/masked-view
@react-navigation/bottom-tabs
@react-navigation/natiu
@react-navigation/native-stack
@react-navigation/stack
haversine
jwt-decode
reaccionar-accions-de-fons natiu
temporitzador de fons natiu de reacció
reaccionar-base-nativa64
kit de gràfics reaccionar-natiu
indicador de progrés circular-natiu-reaccionar
reaccionar-geocodificació nativa
react-native-servei-de-geolocalització
gestor de gestos natiu de reacció
gràfics-reaccionar-natius-dotats
reaccionar-selector-imatge-natiu
mapes-natius-reaccions
permisos natius de reacció
reaccionar-natiu-reanimat
reaccionar-pantalles-natives
reaccionar-sensors-natius
reaccionar-nativa-shake
react-native-svg-Transformer
icones-vectorials-natives de reacció
reaccionar-nativa-visió-camera
Motors
Node.js
Versió: >=18
Descripció: l'aplicació requereix Node.js versió 18 o superior.
Les pantalles i allà funcionen
Pantalla d'inici
La pantalla d'inici de l'aplicació serveix com a interfície principal per iniciar i gestionar sessions de seguiment d'ubicacions. Proporciona funcionalitats per iniciar i aturar el seguiment, mostrar la ubicació actual de l'usuari en un mapa i fer un seguiment del temps transcorregut i la distància recorreguda durant la sessió.
Funcions
readData
Descripció: llegeix el testimoni de l'usuari des d'AsyncStorage amb finalitats d'autenticació.
handleStartTracker
Descripció: inicia la sessió de seguiment enviant una sol·licitud POST a l'API de fons per començar a fer el seguiment de la ubicació de l'usuari.
handlePauseTracker
Descripció: posa en pausa la sessió de seguiment enviant una sol·licitud POST a l'API de fons per deixar de fer el seguiment de la ubicació de l'usuari temporalment.
handleUpdateLocations
Descripció: actualitza la ubicació actual de l'usuari enviant una sol·licitud POST a l'API de fons amb la latitud, la longitud i l'identificador d'ubicació actualitzats.
calcula la distància
Descripció: calcula la distància entre dues coordenades geogràfiques mitjançant la fórmula Havesine.
startForegroundLocationUpdates
Descripció: comença a actualitzar la ubicació de l'usuari en primer pla a intervals regulars mitjançant el servei de geolocalització del dispositiu.
stopForegroundLocationUpdates
Descripció: deixa d'actualitzar la ubicació de l'usuari en primer pla i esborra l'interval establert per a les actualitzacions d'ubicació.
startLocationTracking
Descripció: inicia el seguiment de la ubicació iniciant actualitzacions de la ubicació en primer pla i configurant un temporitzador per fer un seguiment del temps transcorregut.
stopLocationTracking
Descripció: atura el seguiment de la ubicació aturant les actualitzacions d'ubicació en primer pla, calculant la distància recorreguda i enviant les dades de seguiment finals a l'API de fons.
Pantalla de cronologia
Funcions
readData
Descripció: llegeix el testimoni de l'usuari des d'AsyncStorage amb finalitats d'autenticació.
calculareTotalDistance
Descripció: calcula la distància total recorreguda a partir de les dades de les sessions de seguiment.
useEffect
Descripció: invoca la funció readData al muntatge del component per obtenir dades de seguiment.
Pantalla d'activitats
Funcions
commuta Mostrar1
Descripció: activa o desactiva la visibilitat del menú desplegable per seleccionar l'any.
commuta Mostrar2
Descripció: activa o desactiva la visibilitat del menú desplegable per seleccionar el mes.
commuta Mostrar3
Descripció: activa o desactiva la visibilitat del menú desplegable per seleccionar el dia.
setDay
Descripció: estableix el dia seleccionat per visualitzar les dades d'activitat.
setMonth
Descripció: estableix el mes seleccionat per visualitzar les dades d'activitat.
setYear
Descripció: estableix l'any seleccionat per visualitzar les dades d'activitat.
Pantalla de perfil
Funcions
getToken
Descripció: obté el testimoni d'autenticació de l'usuari d'AsyncStorage.
toggleIsLogin
Descripció: canvia l'estat d'inici de sessió de l'usuari.
toggleUserLoginStatus
Descripció: canvia l'estat d'inici de sessió de l'usuari i actualitza AsyncStorage en conseqüència.
Data d'actualització:
4 de març 2026