Skip to content

[Bug]: sometimes plugin didn't upload location information after terminating In iPhone. #1602

@mobiledev-svg

Description

@mobiledev-svg

Required Reading

  • Confirmed

Plugin Version

v5.0.0-beta

Flutter Doctor

[✓] Flutter (Channel stable, 3.32.0, on macOS 15.6.1 24G90 darwin-arm64, locale ko-KR)
[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 16.3)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2024.2)

Mobile operating-system(s)

  • iOS
  • Android

Device Manufacturer(s) and Model(s)

iHpone15,

Device operating-systems(s)

iOS 18.6.2

What happened?

After confirming that the plugin works correctly while the app is in the foreground, I closed the app by swiping it away.

With the app fully terminated, I walked outside while monitoring the iPhone’s console logs. The iPhone was connected to Wi-Fi, and the network quality was unstable at times.

Approximately 10 minutes later, I observed the following behavior in the logs:

  • The plugin unexpectedly changed its state to active.
  • Several logs appeared showing failures and network-related errors.
  • An error message was repeatedly generated:
    Failed to find a TSGeofence from monitoredGeofences: 71905

After this error appeared, no further logs were generated for about 3 minutes, indicating that the plugin had stopped producing output.

Plugin Code and/or Config

await bg.BackgroundGeolocation.ready(bg.Config(

      geolocation: bg.GeoConfig(
          desiredAccuracy: bg.DesiredAccuracy.high,
          distanceFilter: defaultDistanceFilter,
          stationaryRadius: defaultRadiusMeters.toInt(),
          stopTimeout: 5),
      app: bg.AppConfig(
        stopOnTerminate: false,
        startOnBoot: true,
        preventSuspend: Platform.isIOS ? true : null,
        heartbeatInterval: defaultHeartbeatInterval,
        enableHeadless: Platform.isAndroid ? true : null,

        /// android only
        notification: Platform.isAndroid
            ? bg.Notification(
                //title: "Tracking",
                text: "The Moni app collects location data in the background to help check your family members’locations.",
              )
            : null,
      ),
      http: bg.HttpConfig(
        url: uri,
        autoSync: true,
        headers: headers,
      ),
      authorization: bg.Authorization(
        strategy: 'JWT', 
        accessToken: token, 
      ),
      logger: bg.LoggerConfig(
        logLevel: bg.LogLevel.verbose,
        debug: true,
      )

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions