react-native-background-geolocation: [iOS] Location tracking stops about 45 seconds later after app goes into background on real device.
on iOS actual device. Location tracking stops about 45 seconds later after app goes into the background. It works on Android so it is iOS only issue. The Sample App perfectly works on both OS real device. so I’m wondering what’s the difference between our app and the sample app.
Your Environment
Plugin version:
- “react-native-background-fetch”: “^4.0.5”
- “react-native-background-geolocation”: “^4.4.4”
Platform: iOS or Android
- iOS(15.3.1)
- iPhone 12 Pro
-
React Native version (
react-native -v): “react-native”: “~0.63.4” -
Plugin config
import React, { ReactNode, useEffect, useState, useRef } from 'react'
import { useIntl } from 'react-intl'
import { Alert } from 'react-native'
import BackgroundGeolocation, {
Location,
LocationError,
CurrentPositionRequest,
} from 'react-native-background-geolocation'
import * as Sentry from '@sentry/react-native'
interface Props {
children: ReactNode
}
interface Coordinates {
latitude: number
longitude: number
timestamp: Date
}
export type useGeoLocationReturnType = {
locations: Coordinates[]
lastLocation: null | {
latitude: number
longitude: number
}
changeMovingState: (willBeMoving: boolean) => void
clearLocations: () => Promise<void>
getCurrentLocation: (
onSucceed: (location: Coordinates) => void,
onFail?: (error: LocationError) => void,
options?: CurrentPositionRequest
) => void
}
const LOCATION_AVAILABLE_STATES = [
BackgroundGeolocation.AUTHORIZATION_STATUS_ALWAYS,
BackgroundGeolocation.AUTHORIZATION_STATUS_WHEN_IN_USE,
]
export const GeolocationContext = React.createContext<useGeoLocationReturnType>(
{
locations: [],
lastLocation: null,
getCurrentLocation: () => void 0,
changeMovingState: () => void 0,
clearLocations: () => Promise.resolve(void 0),
}
)
export default function GeolocationContextProvider({
children,
}: Props): JSX.Element {
const [locations, setLocations] = useState<Coordinates[]>([])
const lastLocationRef = useRef<useGeoLocationReturnType['lastLocation']>(null)
const intl = useIntl()
useEffect(() => {
BackgroundGeolocation.getProviderState(({ status }) => {
if (!LOCATION_AVAILABLE_STATES.includes(status)) {
askLocationServicePermission()
}
})
// https://transistorsoft.github.io/react-native-background-geolocation/interfaces/location.html
BackgroundGeolocation.onLocation((location) => {
if (location?.sample || !location.coords) return
const newLocation = {
latitude: location.coords.latitude,
longitude: location.coords.longitude,
timestamp: new Date(location.timestamp),
}
setLocations((prevLocations) => prevLocations.concat(newLocation))
lastLocationRef.current = newLocation
})
// https://github.com/transistorsoft/react-native-background-geolocation/wiki/Philosophy-of-Operation
// https://transistorsoft.github.io/react-native-background-geolocation/interfaces/config.html
BackgroundGeolocation.ready(
{
maxDaysToPersist: 2,
debug: true,
desiredAccuracy: BackgroundGeolocation.DESIRED_ACCURACY_NAVIGATION,
distanceFilter: 10,
stationaryRadius: 25, // the plugin enforces 25 as minimum
logLevel: BackgroundGeolocation.LOG_LEVEL_OFF,
startOnBoot: true,
stopOnTerminate: false,
preventSuspend: true,
notification: {
title: intl.formatMessage({
id: 'useGeolocation.notification_banner_title',
}),
},
},
(state) => {
// ⚠️ Do not execute any API method which will require accessing location-services
// until #ready gets resolved (eg: #getCurrentPosition, #watchPosition, #start).
if (!state.enabled) {
BackgroundGeolocation.start()
}
BackgroundGeolocation.getLocations().then((_locations: any[]) => {
const storedLocations: Coordinates[] = _locations.map(
({ timestamp, coords }) => ({
latitude: coords.latitude,
longitude: coords.longitude,
timestamp: new Date(timestamp),
})
)
setLocations(storedLocations)
})
}
)
return (): void => {
BackgroundGeolocation.removeAllListeners()
BackgroundGeolocation.stop()
}
}, [])
function getCurrentLocation(
onSucceed: (location: Coordinates) => void,
onFail?: (error: LocationError) => void,
options?: CurrentPositionRequest
): void {
BackgroundGeolocation.getCurrentPosition({
...options,
samples: 1,
persist: false,
})
.then((location: Location) => {
const {
timestamp,
coords: { latitude, longitude },
} = location
onSucceed({ latitude, longitude, timestamp: new Date(timestamp) })
})
.catch((error: LocationError) => {
Sentry.captureException(error)
if (onFail) onFail(error)
})
}
async function askLocationServicePermission(): Promise<void> {
const status = await BackgroundGeolocation.requestPermission()
if (LOCATION_AVAILABLE_STATES.includes(status)) {
BackgroundGeolocation.start()
return
}
Alert.alert(
intl.formatMessage({ id: 'useGeolocation.ask_permission_alert_title' }),
intl.formatMessage({ id: 'useGeolocation.ask_permission_alert_description' }),
[
{
text: intl.formatMessage({ id: 'Common.yes' }),
onPress: askLocationServicePermission,
},
],
{ cancelable: false }
)
}
async function clearLocations(): Promise<void> {
setLocations([])
await BackgroundGeolocation.destroyLocations()
}
return (
<GeolocationContext.Provider
value={{
locations,
lastLocation: lastLocationRef.current,
getCurrentLocation,
changeMovingState: BackgroundGeolocation.changePace,
clearLocations,
}}
>
{children}
</GeolocationContext.Provider>
)
}
Info.plist
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
<string>com.transistorsoft.fetch</string>
</array>
...
<key>UIBackgroundModes</key>
<array>
<string>fetch</string>
<string>location</string>
<string>processing</string>
</array>
AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[FIRApp configure];
#if defined(FB_SONARKIT_ENABLED) && __has_include(<FlipperKit/FlipperClient.h>)
InitializeFlipper(application);
#endif
self.moduleRegistryAdapter = [[UMModuleRegistryAdapter alloc] initWithModuleRegistryProvider:[[UMModuleRegistryProvider alloc] init]];
self.launchOptions = launchOptions;
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
#ifdef DEBUG
[self initializeReactNativeApp];
#else
EXUpdatesAppController *controller = [EXUpdatesAppController sharedInstance];
controller.delegate = self;
[controller startAndShowLaunchScreen:self.window];
#endif
[super application:application didFinishLaunchingWithOptions:launchOptions];
[[TSBackgroundFetch sharedInstance] didFinishLaunching];
[RNSplashScreen show];
return YES;
}
Expected Behavior
it keeps tracking locations even in the background state.
Actual Behavior
it perfectly works on simulator but not on real device. it stops tracking locations a few minutes later after the app goes into background.
Steps to Reproduce
I’m (Our company is) using the paid version of plugin, so if I could share our code more in a private thread, I’d appreciate it.
- Start location service.
- Take the app into the background
- Notification(debug: true) appears(Moving: speed, accuracy…) it keeps location tracking for a while.
- a minute later… notification appears no more. (location tracking stops)
- Bring the app into the foreground, location-tracking starts again.
Context
I’m making a fleet-tracking app that tracks user moves and draws a tracking path. I followed all the required steps and extra setup guide, and it perfectly works on simulator so I wonder what I’m missing to get it work on a real device.
Debug logs
15:48 start tracking on foreground 15:49 move the app in background [TSLocationManager onSuspend] 15:50 come back to foreground [TSLocationManager onResume]
Logs
2022-03-14 15:48:02.048 ✅-[TSLocationManager locationManager:didUpdateLocations:] Acquired motionchange position: <+35.62852112,+139.66697324> +/- 16.26m (speed 0.88 mps / course 107.58) @ 2022/03/14 15:48:02 Japan Standard Time
2022-03-14 15:48:02.048 🔵-[TSLocationManager startMonitoringStationaryRegion:radius:] Radius: 25
2022-03-14 15:48:02.048 🔴-[TSLocationManager stopUpdatingLocation]
2022-03-14 15:48:02.048 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.3
2022-03-14 15:48:02.055 🔵-[TSLocationManager changePace:] isMoving: 1
2022-03-14 15:48:02.055 🔵-[TSLocationManager setPace:] 1
2022-03-14 15:48:02.056 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 1F238FC5-A322-4700-862A-8DC2D046D5A7
2022-03-14 15:48:02.056
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.056
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.061 🎾-[TSLocationManager startUpdatingLocation] Location-services: ON
2022-03-14 15:48:02.061 ℹ️+[LocationAuthorization run:onCancel:] status: 3
2022-03-14 15:48:02.069
📍<+35.62852112,+139.66697324> +/- 16.26m (speed 0.88 mps / course 107.58) @ 2022/03/14 15:48:02 Japan Standard Time
2022-03-14 15:48:02.069
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: -1.0m | age: 0.1s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.069 ✅-[TSLocationManager locationManager:didUpdateLocations:] Acquired motionchange position: <+35.62852112,+139.66697324> +/- 16.26m (speed 0.88 mps / course 107.58) @ 2022/03/14 15:48:02 Japan Standard Time
2022-03-14 15:48:02.069 🎾-[TSLocationManager startUpdatingLocation] Location-services: ON
2022-03-14 15:48:02.069 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 16.3
2022-03-14 15:48:02.070 ℹ️+[LocationAuthorization run:onCancel:] status: 3
2022-03-14 15:48:02.072 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 94EC0726-42B0-4242-B1BC-FAD46D690BB2
2022-03-14 15:48:02.072
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.072
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.086
📍<+35.62852446,+139.66696012> +/- 16.26m (speed 0.88 mps / course 108.28) @ 2022/03/14 15:48:01 Japan Standard Time
2022-03-14 15:48:02.086 🔴-[LocationManager stopUpdatingLocation] OFF
2022-03-14 15:48:02.086
╔═══════════════════════════════════════════════════════════
║ -[LocationManager locationManager:didUpdateLocations:] Sample 3 of 3
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.089 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: D1FAFE3B-494C-4F1D-B4F0-5B49C00D4FB5
2022-03-14 15:48:02.089
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.089
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:02.625 ℹ️-[TSDBLogger db_save] Log committed
2022-03-14 15:48:04.511 ℹ️-[TSDBLogger db_save] Log committed
2022-03-14 15:48:12.036
📍<+35.62850271,+139.66708172> +/- 14.26m (speed 0.64 mps / course 97.24) @ 2022/03/14 15:48:12 Japan Standard Time
2022-03-14 15:48:12.036
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:12.036 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 16.3
2022-03-14 15:48:12.042 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 2F53A5E0-002A-4BAE-8A09-073437523DCE
2022-03-14 15:48:12.042
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:12.042
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:22.045
📍<+35.62849182,+139.66719574> +/- 14.24m (speed 1.14 mps / course 104.55) @ 2022/03/14 15:48:22 Japan Standard Time
2022-03-14 15:48:22.045
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:22.045 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 16.3
2022-03-14 15:48:22.045 ℹ️-[TSConfig persist]
2022-03-14 15:48:22.049 🔵-[TSConfig incrementOdometer:] 2153.2
2022-03-14 15:48:22.053 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 1CFE7FDF-DB80-4B4B-8CA6-E1656F6FFB57
2022-03-14 15:48:22.056
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:22.056
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:33.037
📍<+35.62846774,+139.66730871> +/- 14.24m (speed 0.83 mps / course 107.28) @ 2022/03/14 15:48:33 Japan Standard Time
2022-03-14 15:48:33.037
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:33.037 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 16.3
2022-03-14 15:48:33.040 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 5840CBE8-3C20-4A45-A97A-DDD9732B0F72
2022-03-14 15:48:33.041
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:33.041
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:42.038
📍<+35.62845015,+139.66742908> +/- 14.24m (speed 1.12 mps / course 101.36) @ 2022/03/14 15:48:42 Japan Standard Time
2022-03-14 15:48:42.038
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:42.038 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:48:42.038 ℹ️-[TSConfig persist]
2022-03-14 15:48:42.041 🔵-[TSConfig incrementOdometer:] 2174.8
2022-03-14 15:48:42.044 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 470CBBE3-9A17-4511-A858-6CF5266DC0C2
2022-03-14 15:48:42.049
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:42.049
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:51.046
📍<+35.62842254,+139.66754613> +/- 14.24m (speed 0.90 mps / course 101.57) @ 2022/03/14 15:48:51 Japan Standard Time
2022-03-14 15:48:51.046
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:51.046 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:48:51.048 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 3F9BD7E8-9022-4C53-BEC4-6C5ABA4448AF
2022-03-14 15:48:51.050
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:48:51.050
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:01.034
📍<+35.62838888,+139.66765468> +/- 14.24m (speed 0.82 mps / course 129.01) @ 2022/03/14 15:49:01 Japan Standard Time
2022-03-14 15:49:01.034
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:01.034 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:49:01.034 ℹ️-[TSConfig persist]
2022-03-14 15:49:01.036 🔵-[TSConfig incrementOdometer:] 2196.4
2022-03-14 15:49:01.045 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 3D5BA772-82FB-4463-9FF7-D7AFDD57178C
2022-03-14 15:49:01.045
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:01.045
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:03.285 🔵-[TSLocationManager onSuspend:] enabled? 1)
2022-03-14 15:49:03.292 ℹ️-[TSDBLogger db_save] Log committed
2022-03-14 15:49:11.037
📍<+35.62835070,+139.66776432> +/- 14.24m (speed 0.89 mps / course 116.13) @ 2022/03/14 15:49:11 Japan Standard Time
2022-03-14 15:49:11.037
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:11.037 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:49:11.039 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 0B1AE1B9-1EED-47F0-92D3-00ED7592186B
2022-03-14 15:49:11.042
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:11.042
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:19.036
📍<+35.62832757,+139.66787263> +/- 14.24m (speed 0.88 mps / course 98.09) @ 2022/03/14 15:49:19 Japan Standard Time
2022-03-14 15:49:19.036
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:19.036 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:49:19.036 ℹ️-[TSConfig persist]
2022-03-14 15:49:19.039 🔵-[TSConfig incrementOdometer:] 2217.3
2022-03-14 15:49:19.046 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 6DFA5574-E7B9-40BF-99E5-844471413834
2022-03-14 15:49:19.046
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:19.046
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:26.044
📍<+35.62838869,+139.66795786> +/- 4.73m (speed 1.24 mps / course 36.84) @ 2022/03/14 15:49:26 Japan Standard Time
2022-03-14 15:49:26.045
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:26.045 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:49:26.045 ℹ️-[TSConfig persist]
2022-03-14 15:49:26.046 🔵-[TSConfig incrementOdometer:] 2227.5
2022-03-14 15:49:26.049 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: 8A3CB828-A3D7-44CF-BB07-B66C52B6DD0A
2022-03-14 15:49:26.050
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:26.050
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:34.037
📍<+35.62845015,+139.66805167> +/- 4.73m (speed 0.88 mps / course 48.97) @ 2022/03/14 15:49:34 Japan Standard Time
2022-03-14 15:49:34.037
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.0s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:34.037 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:49:34.037 ℹ️-[TSConfig persist]
2022-03-14 15:49:34.039 🔵-[TSConfig incrementOdometer:] 2238.4
2022-03-14 15:49:34.042 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: DD404229-EA0F-45C0-8792-85F5457C6A17
2022-03-14 15:49:34.044
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:34.044
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:43.077
📍<+35.62852949,+139.66813010> +/- 4.72m (speed 0.97 mps / course 46.16) @ 2022/03/14 15:49:43 Japan Standard Time
2022-03-14 15:49:43.077
╔═══════════════════════════════════════════════════════════
║ -[TSLocationManager locationManager:didUpdateLocations:] Enabled: 1 | isMoving: 1 | df: 10.0m | age: 0.1s
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:43.077 🔵-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 14.2
2022-03-14 15:49:43.077 ℹ️-[TSConfig persist]
2022-03-14 15:49:43.081 🔵-[TSConfig incrementOdometer:] 2249.8
2022-03-14 15:49:43.088 ✅-[TSLocationManager persistLocation:]_block_invoke INSERT: BF465AD6-2A6F-4220-B53A-6D2D46C50542
2022-03-14 15:49:43.090
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService flush:]
╚═══════════════════════════════════════════════════════════
2022-03-14 15:49:43.090
╔═══════════════════════════════════════════════════════════
║ -[TSHttpService finish:error:] Success: 0
╚═══════════════════════════════════════════════════════════
2022-03-14 15:50:12.089 🔵-[TSLocationManager onResume:] enabled? 1
2022-03-14 15:50:12.094 ℹ️-[TSDBLogger db_save] Log committed
2022-03-14 15:50:12.095 ℹ️-[LocationDAO purge:] 2
2022-03-14 15:50:12.100 ℹ️-[TSDBLogger db_save] Log committed
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 17 (2 by maintainers)
Expo and React Native 0.63.
This morning I’m going to test it. Without expo and RN 0.67 all is OK.
Inviato da iPhone