Stockage du choix de précision de géolocalisation
This commit is contained in:
@ -3,17 +3,21 @@ import React, { ReactNode, useEffect } from 'react'
|
||||
import { Platform } from 'react-native'
|
||||
import { Constants } from '@/constants/Constants'
|
||||
import { useAuth } from '@/hooks/useAuth'
|
||||
import { useSetLocationAccuracy } from '@/hooks/useGame'
|
||||
import { useGeolocationMutation } from '@/hooks/mutations/useGeolocationMutation'
|
||||
import { useQueuedLocations, useSetLastPlayerLocation, useSetLastPlayerLocations, useUnqueueLocation } from '@/hooks/useLocation'
|
||||
import { isAuthValid } from '@/utils/features/auth/authSlice'
|
||||
import { PlayerLocation } from '@/utils/features/location/locationSlice'
|
||||
import { useStartGeolocationServiceEffect } from '@/utils/geolocation'
|
||||
import * as SecureStore from '@/utils/SecureStore'
|
||||
import { socket } from '@/utils/socket'
|
||||
import { Accuracy } from 'expo-location'
|
||||
|
||||
export default function GeolocationProvider({ children }: { children: ReactNode }) {
|
||||
useStartGeolocationServiceEffect()
|
||||
|
||||
const auth = useAuth()
|
||||
const setLocationAccuracy = useSetLocationAccuracy()
|
||||
const geolocationsQueue = useQueuedLocations()
|
||||
const unqueueLocation = useUnqueueLocation()
|
||||
const setLastPlayerLocations = useSetLastPlayerLocations()
|
||||
@ -23,6 +27,17 @@ export default function GeolocationProvider({ children }: { children: ReactNode
|
||||
onPostSuccess: (data, variables) => unqueueLocation(variables),
|
||||
onError: ({ response, error }) => console.error(response, error),
|
||||
})
|
||||
|
||||
useEffect(() => {
|
||||
SecureStore.getItemAsync('locationAccuracy').then(locationAccuracyString => {
|
||||
if (!locationAccuracyString)
|
||||
setLocationAccuracy(Accuracy.Balanced)
|
||||
else if (locationAccuracyString === 'null')
|
||||
setLocationAccuracy(null)
|
||||
else
|
||||
setLocationAccuracy(+locationAccuracyString)
|
||||
})
|
||||
}, [])
|
||||
|
||||
if (Platform.OS !== "web") {
|
||||
useEffect(() => {
|
||||
|
Reference in New Issue
Block a user