React-native-background-geolocation: App crashes in the background on iOS when app is recording and the vehicle stopped

Created on 11 Sep 2020  Β·  11Comments  Β·  Source: transistorsoft/react-native-background-geolocation

Your Environment

  • Plugin version: {

    "react-native-background-geolocation": "^3.9.0",
    "react-native-background-fetch": "^3.1.0",
    }

  • Platform: iOS
  • OS version: 13.6.1
  • Device manufacturer / model: iphone XR
  • React Native version (react-native -v): 0.62.2
  • Plugin config
    ```javascript

const defaultConfig: Config = {
reset: true,
desiredAccuracy: BackgroundGeolocation.DESIRED_ACCURACY_HIGH,
stopTimeout: 360, // MIGHT SOLVE THE ISSUE ON ANDROID WHERE RECORDING STOPS WHEN STILL
stopOnStationary: false,
preventSuspend: true,
debug: __DEV__,
elasticityMultiplier: 10,
foregroundService: true,
isMoving: true,
stationaryRadius: 25,
logLevel: __DEV__
? BackgroundGeolocation.LOG_LEVEL_DEBUG
: BackgroundGeolocation.LOG_LEVEL_ERROR,
stopOnTerminate: true,
startOnBoot: false,
allowIdenticalLocations: true,
notification: {
title: i18n.geolocation.title,
text: i18n.geolocation.text,
largeIcon: 'drawable/ic_stat_notification_icon',
smallIcon: 'drawable/ic_stat_notification_icon',
},
showsBackgroundLocationIndicator: true,
disableStopDetection: true,
pausesLocationUpdatesAutomatically: false,
activityType: BackgroundGeolocation.ACTIVITY_TYPE_AUTOMOTIVE_NAVIGATION,
batchSync: true,
maxBatchSize: 5,
autoSync: true,
autoSyncThreshold: 5,
httpRootProperty: '.',
locationTemplate:
'{"lat":<%= latitude %>,"lon":<%= longitude %>,"timestamp": "<%= timestamp %>"}',

url: ${baseUrl}/trips/${tripId}/coordinates,
headers: {
Authorization: Bearer ${holder},
},
};

## Expected Behavior
<!--- Tell us what should happen -->
The geolocation recording should be working all the time.

## Actual Behavior
<!--- Tell us what happens instead -->
After some tests we realized the app crashed at some point. It seems like it's after a while during the tracking when the user is stopped (because of traffic for example) after the user moved before.

## Steps to Reproduce
<!--- reproduce this issue; include code to reproduce, if relevant -->
1.
2.
3.
4.

## Context
<!--- What were you trying to do? -->

During the installation of the plugin I followed all the steps for `react-native-background-geolocation` and `react-native-background-fetch`. But I only use the #ready and #start methods. So I don't think I should have configured `(πŸ†• iOS 13+; Only if you intend to use BackgroundFetch.scheduleTask)` and https://github.com/transistorsoft/react-native-background-fetch/blob/master/docs/INSTALL-AUTO-IOS.md#appdelegatem-new-ios-13 even If I did.

Do you think this could be the reason it crashes ?

## Debug logs
<!-- include iOS / Android logs
- ios XCode logs,
- use #getLog #emailLog methods (@see docs)
- Android: $ adb logcat -s TSLocationManager
-->
<details><summary>Logs</summary>

``` <!-- Syntax highlighting:  DO NOT REMOVE -->
PASTE_YOUR_LOGS_HERE

All 11 comments

If there’s a crash, why aren’t you providing the stacktrace?

Hey, thanks for your answer.
Sorry, I got a similar log twice :

Date/Time:        2020-09-06 19:25:31 -0300
End time:         2020-09-06 19:26:24 -0300
OS Version:       iPhone OS 13.6.1 (Build 17G80)
Architecture:     arm64e
Report Version:   29
Incident Identifier: 366E483B-96E6-432F-81A9-3BD3BC60517F
Data Source:      Microstackshots
Shared Cache:     0x30374000 806C7B9F-DF16-345B-9D6C-B3FAB1733341
Command:          MyApp
Path:             /private/var/containers/Bundle/Application/2A7D3A7D-C3B8-468E-9912-FEDED9BAD821/MyApp.app/MyApp
Identifier:       com.myapp.app
Version:          1.1.0 (28)
Beta Identifier:  3F082285-1FB7-4C1A-9B03-C27E0283AAAB
PID:              3652
Event:            cpu usage
Action taken:     Process killed
CPU:              48 seconds cpu time over 54 seconds (90% cpu average), exceeding limit of 80% cpu over 60 seconds
CPU limit:        48s
Limit duration:   60s
CPU used:         48s
CPU duration:     54s
Duration:         53.57s
Duration Sampled: 49.01s
Steps:            21
Hardware model:   iPhone11,8
Active cpus:      6
Heaviest stack for the target process:
  21  ??? (libdyld.dylib + 4996) [0x1b05cf384]
  21  ??? (MyApp + 27644) [0x100e96bfc]
  21  ??? (UIKitCore + 10938180) [0x1b4905744]
...

I got this by plugging my phone and using xCode, we only reproduced this in production release actually.

It looks like the OS killed the app because it was using too much resources. That's why I thought it might be linked to background tasks

There’s nothing in the stacktrace that implicates my plugins.

Yes, it's true.
To be honest I'm having an issue with Crashlytics at the same time (that could have helped me know if it's really linked to this library).
I'm gonna run some test with a real device today and I'll show you the logs if it happens again.

So I found a way to reproduce this issue even in debug. I use xcode to launch the app on my Iphone connected on wifi, and then I can see the logs and I can provoke the "crash" by launching/using a lots of apps while I'm recording the geolocation in the background.

I didn't erase the Firebase logs as that might be the cause. To be honest I don't think so because we can see the Firebase SDK is Cancelling background upload task.

So I got this message :

2020-09-12 09:32:30.812273-0300 MyApp[11303:2555597] βœ…-[BackgroundTaskManager createBackgroundTask] 31
2020-09-12 09:32:30.813131-0300 MyApp[11303:2555551] πŸ”΅-[TSLocationManager onSuspend:] enabled? 1)
2020-09-12 09:33:05.912522-0300 MyApp[11303:2554796] [BackgroundTask] Background Task 31 ("Called by MyApp, from -[BackgroundTaskManager createBackgroundTask]"), was created over 30 seconds ago. In applications running in the background, this creates a risk of termination. Remember to call UIApplication.endBackgroundTask(_:) for your task in a timely manner to avoid this.

And then after another try :

2020-09-12 09:38:22.282524-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS023072] Event logged. Event name, event params: app_background (_ab), {
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:38:22.288662-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS023105] Event is not subject to real-time event count daily limit. Marking an event as real-time. Event name, parameters: user_engagement (_e), {
    engagement_time_msec (_et) = 4082;
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:38:22.288722-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS023105] Event is not subject to real-time event count daily limit. Marking an event as real-time. Event name, parameters: app_background (_ab), {
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:38:22.293176-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS023087] User property set. Name, value: lifetime_user_engagement (_lte), 1029833
2020-09-12 09:38:22.293681-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS023087] User property set. Name, value: session_user_engagement (_se), 336002
2020-09-12 09:38:22.296879-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS012018] Saving bundle. size (bytes): 494
2020-09-12 09:38:22.297153-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS023116] Bundle added to the upload queue. BundleID, timestamp (ms): 98, 1599914302246
2020-09-12 09:38:22.300739-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS023039] Measurement data sent to network. Timestamp (ms), data: 1599914302300, <APMPBMeasurementBatch: 0x281201340>
2020-09-12 09:38:22.303629-0300 MyApp[11334:2559412] 6.30.0 - [Firebase/Analytics][I-ACS900000] Uploading data. Host: https://app-measurement.com/a
2020-09-12 09:38:22.413910-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS901006] Received SSL challenge for host. Host: https://app-measurement.com/a
2020-09-12 09:38:22.504827-0300 MyApp[11334:2559635] 6.30.0 - [Firebase/Analytics][I-ACS023044] Successful upload. Got network response. Code, size: 204, -1
2020-09-12 09:38:22.518796-0300 MyApp[11334:2559635] 6.30.0 - [Firebase/Analytics][I-ACS002003] Measurement timer canceled
2020-09-12 09:38:22.519113-0300 MyApp[11334:2559635] 6.30.0 - [Firebase/Analytics][I-ACS023142] Cancelling background upload task. Task ID : 24
2020-09-12 09:38:23.196171-0300 MyApp[11334:2559687] βœ…-[BackgroundTaskManager createBackgroundTask] 31
2020-09-12 09:38:23.201763-0300 MyApp[11334:2559683] πŸ”΅-[TSLocationManager onSuspend:] enabled? 1)
2020-09-12 09:38:58.289495-0300 MyApp[11334:2559190] [BackgroundTask] Background Task 31 ("Called by MyApp, from -[BackgroundTaskManager createBackgroundTask]"), was created over 30 seconds ago. In applications running in the background, this creates a risk of termination. Remember to call UIApplication.endBackgroundTask(_:) for your task in a timely manner to avoid this.
2020-09-12 09:40:02.848528-0300 MyApp[11334:2559428] πŸ”΅-[BackgroundTaskManager onResume:] Current preventSuspend tasks: 1
2020-09-12 09:40:02.848812-0300 MyApp[11334:2559687] πŸ”΅-[TSLocationManager onResume:] enabled? 1
2020-09-12 09:40:02.848932-0300 MyApp[11334:2559687] ℹ️-[LocationDAO purge:] 1
2020-09-12 09:40:03.151111-0300 MyApp[11334:2559635] 6.30.0 - [Firebase/Analytics][I-ACS002002] Engagement timer scheduled to fire in approx. (s): 3600
2020-09-12 09:40:10.417919-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS002003] Engagement timer canceled
2020-09-12 09:40:10.417982-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS002002] Engagement timer scheduled to fire in approx. (s): 3600
2020-09-12 09:40:10.418039-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS002003] Engagement timer canceled
2020-09-12 09:40:10.459960-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023051] Logging event: origin, name, params: auto, user_engagement (_e), {
    engagement_time_msec (_et) = 7266;
    ga_event_origin (_o) = auto;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.461111-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023073] Debug mode is enabled. Marking event as debug and real-time. Event name, parameters: user_engagement (_e), {
    engagement_time_msec (_et) = 7266;
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.468411-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023072] Event logged. Event name, event params: user_engagement (_e), {
    engagement_time_msec (_et) = 7266;
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.470751-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS002002] Measurement timer scheduled to fire in approx. (s): 0.9464448690414429
2020-09-12 09:40:10.472353-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023051] Logging event: origin, name, params: auto, app_background (_ab), {
    ga_event_origin (_o) = auto;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.472856-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023073] Debug mode is enabled. Marking event as debug and real-time. Event name, parameters: app_background (_ab), {
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.476704-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS023072] Event logged. Event name, event params: app_background (_ab), {
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.481027-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023105] Event is not subject to real-time event count daily limit. Marking an event as real-time. Event name, parameters: user_engagement (_e), {
    engagement_time_msec (_et) = 7266;
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.481166-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS023105] Event is not subject to real-time event count daily limit. Marking an event as real-time. Event name, parameters: app_background (_ab), {
    ga_debug (_dbg) = 1;
    ga_event_origin (_o) = auto;
    ga_realtime (_r) = 1;
    ga_screen_class (_sc) = UIViewController;
    ga_screen_id (_si) = -8433227650693710129;
}
2020-09-12 09:40:10.482825-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023087] User property set. Name, value: lifetime_user_engagement (_lte), 1037099
2020-09-12 09:40:10.483207-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023087] User property set. Name, value: session_user_engagement (_se), 343268
2020-09-12 09:40:10.486217-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS012018] Saving bundle. size (bytes): 494
2020-09-12 09:40:10.486457-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023116] Bundle added to the upload queue. BundleID, timestamp (ms): 99, 1599914410417
2020-09-12 09:40:10.489542-0300 MyApp[11334:2559687] 6.30.0 - [Firebase/Analytics][I-ACS023039] Measurement data sent to network. Timestamp (ms), data: 1599914410489, <APMPBMeasurementBatch: 0x281219560>
2020-09-12 09:40:10.492699-0300 MyApp[11334:2559796] 6.30.0 - [Firebase/Analytics][I-ACS900000] Uploading data. Host: https://app-measurement.com/a
2020-09-12 09:40:10.598486-0300 MyApp[11334:2559635] 6.30.0 - [Firebase/Analytics][I-ACS901006] Received SSL challenge for host. Host: https://app-measurement.com/a
2020-09-12 09:40:10.688628-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023044] Successful upload. Got network response. Code, size: 204, -1
2020-09-12 09:40:10.698899-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS002003] Measurement timer canceled
2020-09-12 09:40:10.699098-0300 MyApp[11334:2561599] 6.30.0 - [Firebase/Analytics][I-ACS023142] Cancelling background upload task. Task ID : 44
2020-09-12 09:40:11.816355-0300 MyApp[11334:2559687] πŸ”΅-[BackgroundTaskManager startPreventSuspendTimer:] BG time remaining: 20 | Total tasks: 1
2020-09-12 09:40:11.816437-0300 MyApp[11334:2559635] πŸ”΅-[TSLocationManager onSuspend:] enabled? 1)
2020-09-12 09:40:21.968007-0300 MyApp[11334:2559796] πŸ”΅-[BackgroundTaskManager onPreventSuspendTimer:] Prevent-suspend timer fired! (bg time remaining: 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.000000)
2020-09-12 09:40:21.992308-0300 MyApp[11334:2559428] ℹ️+[LocationAuthorization run:onCancel:] status: 3
2020-09-12 09:40:38.326284-0300 MyApp[11334:2559428] πŸ”΅-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 65.0
2020-09-12 09:40:38.536491-0300 MyApp[11334:2561599] βœ…-[TSLocationManager persistLocation:]_block_invoke INSERT: D4D8393E-739B-4ADE-8238-463D124274C3
Message from debugger: Terminated due to signal 9

When Message from debugger: Terminated due to signal 9 happens it means the app was killed by the OS because of using too much CPU on a 60 seconds period.

Disable preventSuspend.

Set preventSuspend: false

That was fast!
Thanks. I'll do that and get back to you ASAP.

Also do you think stopTimeout: 360 is aberrant ? We added this as an attempt to solve some issue on Android where the geolocation tracking would stop when we're stuck in the traffic for example, for several minutes and then continue the route but the geolocation tracking didn't seem to turn on again.

Looks like it happened again.

2020-09-12 10:01:13.701195-0300 MyApp[11449:2570684] πŸ”΅-[TSLocationManager onSuspend:] enabled? 1)
2020-09-12 10:01:39.838846-0300 MyApp[11449:2570690] 6.30.0 - [GULReachability][I-REA902004] Network status has changed. Code:2, status:Connected
2020-09-12 10:01:39.847481-0300 MyApp[11449:2570692] 6.30.0 - [GULReachability][I-REA902004] Network status has changed. Code:1, status:Disconnected
2020-09-12 10:02:47.963109-0300 MyApp[11449:2570701] πŸ”΅-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 65.0
2020-09-12 10:02:48.013246-0300 MyApp[11449:2570690] βœ…-[TSLocationManager persistLocation:]_block_invoke INSERT: 531A76C9-9DF1-4137-8F9A-E39EC200E6BE
2020-09-12 10:02:59.916771-0300 MyApp[11449:2570692] πŸ”΅-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 65.0
2020-09-12 10:02:59.923061-0300 MyApp[11449:2570690] βœ…-[TSLocationManager persistLocation:]_block_invoke INSERT: 06EA9DBA-69C3-4387-8219-FE0ACCAAC21C
2020-09-12 10:03:07.564387-0300 MyApp[11449:2570690] πŸ”΅-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 65.0
2020-09-12 10:03:07.567317-0300 MyApp[11449:2570701] βœ…-[TSLocationManager persistLocation:]_block_invoke INSERT: 5BBAF426-4E6D-4F32-83AC-DAF7FC978FA3
2020-09-12 10:03:40.164678-0300 MyApp[11449:2570715] πŸ”΅-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 65.0
2020-09-12 10:03:40.218396-0300 MyApp[11449:2570715] βœ…-[TSLocationManager persistLocation:]_block_invoke INSERT: 75871037-4CD2-4DF9-8561-D2B9C1560119
2020-09-12 10:03:44.165429-0300 MyApp[11449:2572204] πŸ”΅-[TSLocationManager calculateMedianLocationAccuracy:] Median location accuracy: 65.0
2020-09-12 10:03:44.173282-0300 MyApp[11449:2570701] βœ…-[TSLocationManager persistLocation:]_block_invoke INSERT: 3254087D-7E1D-45EB-BD30-5748DFF3864D
2020-09-12 10:03:44.215231-0300 MyApp[11449:2572204] βœ…-[BackgroundTaskManager createBackgroundTask] 21
2020-09-12 10:03:44.237424-0300 MyApp[11449:2570691] πŸ”΅-[LocationDAO allWithLocking:]_block_invoke LOCKED 5 RECORDS
2020-09-12 10:03:44.237645-0300 MyApp[11449:2570691] πŸ”΅-[TSHttpService postBatch:] 5 records
2020-09-12 10:03:44.238610-0300 MyApp[11449:2570691] ⚠️-[HttpRequest run] Cannot attach HTTP #params to an HTTP request with JSON data of type [Array], not an {Object].  Specify an #httpRootProperty other than '.' (eg: 'data')
2020-09-12 10:03:45.137994-0300 MyApp[11449:2570701] πŸ”΅-[HttpResponse handleResponse] Response: 200
2020-09-12 10:03:45.139911-0300 MyApp[11449:2570692] βœ…-[LocationDAO destroyAll:] DESTROY: 531A76C9-9DF1-4137-8F9A-E39EC200E6BE
2020-09-12 10:03:45.141067-0300 MyApp[11449:2570701] βœ…-[LocationDAO destroyAll:] DESTROY: 06EA9DBA-69C3-4387-8219-FE0ACCAAC21C
2020-09-12 10:03:45.141286-0300 MyApp[11449:2570701] βœ…-[LocationDAO destroyAll:] DESTROY: 5BBAF426-4E6D-4F32-83AC-DAF7FC978FA3
2020-09-12 10:03:45.141654-0300 MyApp[11449:2570692] βœ…-[LocationDAO destroyAll:] DESTROY: 75871037-4CD2-4DF9-8561-D2B9C1560119
2020-09-12 10:03:45.141976-0300 MyApp[11449:2570701] βœ…-[LocationDAO destroyAll:] DESTROY: 3254087D-7E1D-45EB-BD30-5748DFF3864D
2020-09-12 10:03:45.161853-0300 MyApp[11449:2570692] βœ…-[LocationDAO destroyAll:]_block_invoke DESTROY SUCCESS (5)
2020-09-12 10:03:45.162967-0300 MyApp[11449:2572204] πŸ”΅-[LocationDAO allWithLocking:]_block_invoke LOCKED 0 RECORDS
2020-09-12 10:03:45.166243-0300 MyApp[11449:2570715] βœ…-[BackgroundTaskManager stopBackgroundTask:]_block_invoke 21 OF (
    21
)
2020-09-12 10:04:11.731556-0300 MyApp[11449:2570691] [] tcp_output [C9.1:3] flags=[R.] seq=284583461, ack=3574102777, win=1023 state=CLOSED rcv_nxt=3574102777, snd_una=284583398
Message from debugger: Terminated due to signal 9

And when I start the app right after the blue backgroundLocationIndicator disappears (that's how I see the app died) I can see that the app starts all over again, but backgroundLocationIndicator comes back right after.

So it looks like the app starts the background geolocation tracking right after launch when the app crashes.
But still thats's an issue for our use case because it should run for several hours without any issue.

I haven't seen a crash from the SampleApp for React Native, Cordova or Flutter in over a year. They never fail to track, ever.

I suggest you install the Sample App on your device.

I narrowed it down to a memory leak from an animation. It seems like it's okay now.
I'm gonna make some more tests, and I'll close the issue if it's ok.

Was this page helpful?
0 / 5 - 0 ratings