Cannot make HeadlessTask work
Your Environment
-
Plugin version: 4.9.0
-
Platform: Android
-
OS version: 13
-
Device manufacturer / model: Sony Xperia XQ-BQ72
-
Flutter info (
flutter doctor): [✓] Flutter (Channel stable, 3.7.0, on macOS 13.2 22D49 darwin-x64, locale en-GB) [✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1) [✓] Xcode - develop for iOS and macOS (Xcode 14.2) [✓] Chrome - develop for the web [✓] Android Studio (version 2022.1) [✓] Connected device (3 available) [✓] HTTP Host Availability -
Plugin config:
/// Receive events from BackgroundGeolocation in Headless state.
@pragma('vm:entry-point')
void backgroundGeolocationHeadlessTask(bg.HeadlessEvent headlessEvent) async {
switch (headlessEvent.name) {
case bg.Event.BOOT:
bg.State state = await bg.BackgroundGeolocation.state;
print("📬 didDeviceReboot: ${state.didDeviceReboot}");
break;
case bg.Event.TERMINATE:
try {
bg.Location location =
await bg.BackgroundGeolocation.getCurrentPosition(
samples: 1,
extras: {
"event": "terminate",
"headless": true
}
);
print("[getCurrentPosition] Headless: $location");
} catch (error) {
print("[getCurrentPosition] Headless ERROR: $error");
}
break;
case bg.Event.LOCATION:
bg.Location location = headlessEvent.event;
print(location);
break;
case bg.Event.MOTIONCHANGE:
bg.Location location = headlessEvent.event;
print(location);
break;
case bg.Event.GEOFENCE:
bg.GeofenceEvent geofenceEvent = headlessEvent.event;
print(geofenceEvent);
break;
case bg.Event.GEOFENCESCHANGE:
bg.GeofencesChangeEvent event = headlessEvent.event;
print(event);
break;
case bg.Event.SCHEDULE:
bg.State state = headlessEvent.event;
print(state);
break;
case bg.Event.ACTIVITYCHANGE:
bg.ActivityChangeEvent event = headlessEvent.event;
print(event);
break;
case bg.Event.HTTP:
bg.HttpEvent response = headlessEvent.event;
print(response);
break;
case bg.Event.POWERSAVECHANGE:
bool enabled = headlessEvent.event;
print(enabled);
break;
case bg.Event.CONNECTIVITYCHANGE:
bg.ConnectivityChangeEvent event = headlessEvent.event;
print(event);
break;
case bg.Event.ENABLEDCHANGE:
bool enabled = headlessEvent.event;
print(enabled);
break;
case bg.Event.AUTHORIZATION:
bg.AuthorizationEvent event = headlessEvent.event;
print(event);
bg.BackgroundGeolocation.setConfig(
bg.Config(url: "${ENV.TRACKER_HOST}/api/locations"));
break;
}
}
/// Receive events from BackgroundFetch in Headless state.
@pragma('vm:entry-point')
void backgroundFetchHeadlessTask(HeadlessTask task) async {
String taskId = task.taskId;
// Is this a background_fetch timeout event? If so, simply #finish and bail-out.
if (task.timeout) {
BackgroundFetch.finish(taskId);
return;
}
try {
var location = await bg.BackgroundGeolocation.getCurrentPosition(
samples: 1,
extras: {
"event": "background-fetch",
"headless": true
}
);
print('[start] success: ${log}');
} catch(error) {
print("[location] ERROR: $error");
}
BackgroundFetch.finish(taskId);
}
void main() {
WidgetsFlutterBinding.ensureInitialized();
init();
TransistorAuth.registerErrorHandler();
bg.BackgroundGeolocation.registerHeadlessTask(
backgroundGeolocationHeadlessTask);
BackgroundFetch.registerHeadlessTask(backgroundFetchHeadlessTask);
_configureBackgroundFetch();
}
void startGeo() async {
bg.State state = await bg.BackgroundGeolocation.ready(
bg.Config(
autoSync: true,
geofenceModeHighAccuracy: true,
desiredAccuracy: bg.Config.DESIRED_ACCURACY_HIGH,
persistMode: bg.Config.PERSIST_MODE_GEOFENCE,
distanceFilter: 10.0,
debug: true,
logLevel: bg.Config.LOG_LEVEL_VERBOSE,
),
);
state = await bg.BackgroundGeolocation.startGeofences();
}
void _onGeofence(bg.GeofenceEvent event) async {
print('[BackgroundFetch] Flutter received onGeofence event $event');
}
void init() async {
await bg.TransistorAuthorizationToken.destroy(ENV.TRACKER_HOST);
bg.TransistorAuthorizationToken token =
await bg.TransistorAuthorizationToken.findOrCreate(
"****", "***", ENV.TRACKER_HOST).catchError((error) {
}).then((value) {
_configureBackgroundGeolocation(value);
});
}
void _configureBackgroundGeolocation(bg.TransistorAuthorizationToken token) async {
// 1. Listen to events (See docs for all 13 available events).
bg.BackgroundGeolocation.onLocation(_onLocation, _onLocationError);
bg.BackgroundGeolocation.onMotionChange(_onMotionChange);
bg.BackgroundGeolocation.onActivityChange(_onActivityChange);
bg.BackgroundGeolocation.onProviderChange(_onProviderChange);
bg.BackgroundGeolocation.onHttp(_onHttp);
bg.BackgroundGeolocation.onConnectivityChange(_onConnectivityChange);
bg.BackgroundGeolocation.onHeartbeat(_onHeartbeat);
bg.BackgroundGeolocation.onGeofence(_onGeofence);
bg.BackgroundGeolocation.onSchedule(_onSchedule);
// bg.BackgroundGeolocation.onPowerSaveChange(_onPowerSaveChange);
bg.BackgroundGeolocation.onEnabledChange(_onEnabledChange);
bg.BackgroundGeolocation.onNotificationAction(_onNotificationAction);
// 2. Configure the plugin
bg.BackgroundGeolocation.ready(bg.Config(
// reset: false, // <-- lets the Settings screen drive the config rather than re-applying each boot.
// Convenience option to automatically configure the SDK to post to Transistor Demo server.
transistorAuthorizationToken: token,
// Logging & Debug
debug: true,
logLevel: bg.Config.LOG_LEVEL_VERBOSE,
// Geolocation options
desiredAccuracy: bg.Config.DESIRED_ACCURACY_NAVIGATION,
distanceFilter: 10.0,
// Activity recognition options
stopTimeout: 5,
backgroundPermissionRationale: bg.PermissionRationale(
title: "Allow {applicationName} to access this device's location even when the app is closed or not in use.",
message: "This app collects location data to enable recording your trips to work and calculate distance-travelled.",
positiveAction: 'Change to "{backgroundPermissionOptionLabel}"',
negativeAction: 'Cancel'
),
// HTTP & Persistence
autoSync: true,
// Application options
stopOnTerminate: false,
startOnBoot: true,
enableHeadless: true,
heartbeatInterval: 60
)).then((bg.State state) async {
bg.BackgroundGeolocation.startSchedule();
bg.BackgroundGeolocation.addGeofence(bg.Geofence(
identifier: "Hi hi",
radius: 200,
latitude: 40.990606,
longitude: 28.649291,
notifyOnEntry: true,
notifyOnExit: true,
notifyOnDwell: true,
loiteringDelay: 1000,
extras: {
'radius': 200,
'center': {'latitude': 40.990606, 'longitude': 28.649291}
} // meta-data for tracker.transistorsoft.com
)).then((bool success) {
startGeo();
}).catchError((error) {
print('[catchError] ERROR: $error');
});
}).catchError((error) {
print('[catchError] ERROR: $error');
});
}
// Configure BackgroundFetch (not required by BackgroundGeolocation).
void _configureBackgroundFetch() async {
BackgroundFetch.configure(BackgroundFetchConfig(
minimumFetchInterval: 15,
startOnBoot: true,
stopOnTerminate: false,
enableHeadless: true,
requiresStorageNotLow: false,
requiresBatteryNotLow: false,
requiresCharging: false,
requiresDeviceIdle: false,
requiredNetworkType: NetworkType.NONE
), (String taskId) async {
if (taskId == 'flutter_background_fetch') {
try {
// Fetch current position
var location = await bg.BackgroundGeolocation.getCurrentPosition(
samples: 1,
extras: {
"event": "background-fetch",
"headless": false
}
);
print("[location] $location");
} catch(error) {
print("[location] ERROR: $error");
}
// Test scheduling a custom-task in fetch event.
BackgroundFetch.scheduleTask(TaskConfig(
taskId: "com.transistorsoft.customtask",
delay: 5000,
periodic: false,
forceAlarmManager: true,
stopOnTerminate: false,
enableHeadless: true
));
}
BackgroundFetch.finish(taskId);
});
}
void _onLocation(bg.Location location) {
print('[${bg.Event.LOCATION}] - $location');
}
void _onLocationError(bg.LocationError error) {
print('[${bg.Event.LOCATION}] ERROR - $error');
}
// --- Gradle app
Project background_geolocation = project(':flutter_background_geolocation')
apply from: "${background_geolocation.projectDir}/background_geolocation.gradle"
android {
namespace 'com.example.testflutter'
compileSdkVersion rootProject.ext.compileSdkVersion
defaultConfig {
applicationId "com.example.testflutter"
minSdk rootProject.ext.compileSdkVersion
targetSdk rootProject.ext.compileSdkVersion
}
}
// --- Gradle
allprojects {
google()
mavenCentral()
repositories {
maven {
// [required] background_fetch
url "${project(':background_fetch').projectDir}/libs"
}
maven {
// [required] background_fetch
url "${project(':flutter_background_geolocation').projectDir}/libs"
}
}
}
Expected Behavior
backgroundGeolocationHeadlessTask should have been triggered every time I get location update or any other event I've subscribed to.
Actual Behavior
I only get event updates only in logs and audio notifications. When I get into geofence radius I'm able to see in logs but backgroundGeolocationHeadlessTask is not triggered.
Context
One important thing to mention: I start the plugin from native app, just at the very beginning start of the activity in onCreate
val engine = FlutterEngine(applicationContext) engine.dartExecutor.executeDartEntrypoint( DartExecutor.DartEntrypoint( FlutterInjector.instance().flutterLoader().findAppBundlePath(), "main")) I get into main where start the background geolocation processes like I sent in the code above. It seems the geofence and location updates work but I need the events appear in backgroundGeolocationHeadlessTask I want to send them back to native application.
I assume it's because of add-to-app implementation from native app: https://docs.flutter.dev/development/add-to-app/android/plugin-setup
Can you please assist what is missed? we want to be sure that the plugin will work from the native app before purchasing license
Debug logs
02-09 16:58:13.038 2928 2928 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity execute] locationsettings
02-09 16:58:13.057 2928 2928 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity stop] eventCount: 0
02-09 16:58:13.088 2928 2928 D TSLocationManager: [c.t.l.g.TSGeofenceManager$e run] evaluation buffer timer elapsed
02-09 16:58:13.089 2928 3183 E TSLocationManager: [c.t.l.l.TSLocationManager getLastLocation]
02-09 16:58:13.089 2928 3183 E TSLocationManager: ‼️ Failed to get last location: com.google.android.gms.tasks.zzw@cc1f743
02-09 16:58:13.273 2928 2928 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity onDestroy]
02-09 16:58:13.751 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:13.751 2928 2928 D TSLocationManager: 🎾 LocationRequestService [eventCount: 1]
02-09 16:58:13.753 2928 3183 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 16:58:13.753 2928 3183 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:58:13.753 2928 3183 I TSLocationManager: ║ motionchange LocationResult: 1
02-09 16:58:13.753 2928 3183 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:58:13.753 2928 3183 I TSLocationManager: ╟─ 📍 Location[fused 40.990602,28.649672 hAcc=20.293 et=+22h8m6s312ms alt=137.79998779296875 vAcc=1.9483888], age: 583ms, time: 1675951093170
02-09 16:58:13.755 2928 3183 I TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 16:58:13.755 2928 3183 I TSLocationManager: 🔵 Acquired motionchange position, isMoving: false
02-09 16:58:13.756 2928 3183 D TSLocationManager: [c.t.l.l.TSLocationManager calculateMedianAccuracy] Median accuracy: 20.293
02-09 16:58:13.759 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 16:58:13.760 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 16:58:13.760 2928 2928 D TSLocationManager: 🔴 LocationRequestService stopped
02-09 16:58:13.764 2928 2928 D TSLocationManager: [c.t.l.g.TSGeofenceManager$f$a a] ℹ️ GeofencingClient addGeofences
02-09 16:58:13.765 2928 2928 D TSLocationManager: [c.t.l.g.TSGeofenceManager d] ℹ️ Persist monitored geofences: [Hi hi]
02-09 16:58:13.765 2928 2928 D TSLocationManager: [c.t.l.g.TSGeofenceManager$f$a a]
02-09 16:58:13.765 2928 2928 D TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:58:13.765 2928 2928 D TSLocationManager: ║ TSGeofenceManager monitoring 1/1
02-09 16:58:13.765 2928 2928 D TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:58:13.765 2928 2928 D TSLocationManager: ╟─ 🎾 Hi hi
02-09 16:58:13.765 2928 2928 D TSLocationManager: ╚═════════════════════════════════════════════
02-09 16:58:13.790 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:13.790 2928 2928 D TSLocationManager: 🎾 GeofencingService [eventCount: 1]
02-09 16:58:13.791 2928 3181 I TSLocationManager: [c.t.l.s.GeofencingService handleGeofencingEvent]
02-09 16:58:13.791 2928 3181 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:58:13.791 2928 3181 I TSLocationManager: ║ Geofencing Event: ENTER
02-09 16:58:13.791 2928 3181 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:58:13.791 2928 3181 I TSLocationManager: ╟─ Hi hi
02-09 16:58:13.791 2928 3181 I TSLocationManager: ╚═════════════════════════════════════════════
02-09 16:58:13.794 2928 3181 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 592
02-09 16:58:13.802 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:13.802 2928 2928 D TSLocationManager: 🎾 ActivityRecognitionService [eventCount: 1]
02-09 16:58:13.803 2928 3174 D TSLocationManager: [c.t.l.s.ActivityRecognitionService handleActivityRecognitionResult]
02-09 16:58:13.803 2928 3174 D TSLocationManager: 🚘 ️DetectedActivity [type=STILL, confidence=100]
02-09 16:58:13.804 2928 3174 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish ActivityRecognitionService [eventCount: 0, sticky: false]
02-09 16:58:13.806 2928 3181 I TSLocationManager: [c.t.l.data.sqlite.b persist]
02-09 16:58:13.806 2928 3181 I TSLocationManager: ✅ INSERT: ff3927d9-c045-49ed-9376-e8cd669141c9
02-09 16:58:13.809 2928 3181 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 16:58:13.809 2928 3181 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:58:13.809 2928 3181 I TSLocationManager: ║ HTTP Service (count: 1)
02-09 16:58:13.809 2928 3181 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:58:13.811 2928 3183 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 1 isFinished? true
02-09 16:58:13.811 2928 3183 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 0
02-09 16:58:13.811 2928 3183 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 16:58:13.813 2928 2928 I TSLocationManager: [c.t.l.s.ActivityRecognitionService start]
02-09 16:58:13.813 2928 2928 I TSLocationManager: 🎾 Start motion-activity updates
02-09 16:58:13.819 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:13.819 2928 2928 D TSLocationManager: 🎾 BackgroundTaskService [eventCount: 1]
02-09 16:58:13.819 2928 2928 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task start] ⏳ startBackgroundTask: 1
02-09 16:58:13.820 2928 3181 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish GeofencingService [eventCount: 0, sticky: false]
02-09 16:58:13.822 2928 3183 D TSLocationManager: [c.t.l.data.sqlite.b first]
02-09 16:58:13.822 2928 3183 D TSLocationManager: ✅ Locked 1 records
02-09 16:58:13.822 2928 3183 I TSLocationManager: [c.t.l.http.HttpService a]
02-09 16:58:13.822 2928 3183 I TSLocationManager: 🔵 HTTP POST: ff3927d9-c045-49ed-9376-e8cd669141c9
02-09 16:58:13.861 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:13.861 2928 2928 D TSLocationManager: 🎾 ActivityRecognitionService [eventCount: 1]
02-09 16:58:13.861 2928 3183 D TSLocationManager: [c.t.l.s.ActivityRecognitionService handleActivityRecognitionResult]
02-09 16:58:13.861 2928 3183 D TSLocationManager: 🚘 ️DetectedActivity [type=STILL, confidence=100]
02-09 16:58:13.862 2928 3183 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish ActivityRecognitionService [eventCount: 0, sticky: false]
02-09 16:58:14.042 2928 3205 I TSLocationManager: [c.t.l.http.HttpService$h onResponse]
02-09 16:58:14.042 2928 3205 I TSLocationManager: 🔵 Response: 200
02-09 16:58:14.043 2928 3205 D TSLocationManager: [c.t.l.data.sqlite.b destroy]
02-09 16:58:14.043 2928 3205 D TSLocationManager: ✅ DESTROY: ff3927d9-c045-49ed-9376-e8cd669141c9
02-09 16:58:14.045 2928 3205 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task stop] ⏳ stopBackgroundTask: 1
02-09 16:58:14.046 2928 3205 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish BackgroundTaskService [eventCount: 0, sticky: false]
02-09 16:58:14.047 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 16:58:14.047 2928 2928 D TSLocationManager: 🔴 BackgroundTaskService stopped
02-09 16:58:14.321 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 16:58:14.321 2928 2928 D TSLocationManager: 🔴 GeofencingService stopped
02-09 16:58:14.865 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 16:58:14.865 2928 2928 D TSLocationManager: 🔴 ActivityRecognitionService stopped
02-09 16:58:18.655 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:18.655 2928 2928 D TSLocationManager: 🎾 GeofencingService [eventCount: 1]
02-09 16:58:18.687 2928 3183 I TSLocationManager: [c.t.l.s.GeofencingService handleGeofencingEvent]
02-09 16:58:18.687 2928 3183 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:58:18.687 2928 3183 I TSLocationManager: ║ Geofencing Event: DWELL
02-09 16:58:18.687 2928 3183 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:58:18.687 2928 3183 I TSLocationManager: ╟─ Hi hi
02-09 16:58:18.687 2928 3183 I TSLocationManager: ╚═════════════════════════════════════════════
02-09 16:58:18.688 2928 3183 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 4962
02-09 16:58:18.698 2928 3183 I TSLocationManager: [c.t.l.data.sqlite.b persist]
02-09 16:58:18.698 2928 3183 I TSLocationManager: ✅ INSERT: 08780f21-dcf3-4c0a-a578-abcb226d8279
02-09 16:58:18.699 2928 3183 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 16:58:18.699 2928 3183 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:58:18.699 2928 3183 I TSLocationManager: ║ HTTP Service (count: 1)
02-09 16:58:18.699 2928 3183 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:58:18.707 2928 3183 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish GeofencingService [eventCount: 0, sticky: false]
02-09 16:58:18.707 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 16:58:18.707 2928 2928 D TSLocationManager: 🎾 BackgroundTaskService [eventCount: 1]
02-09 16:58:18.708 2928 2928 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task start] ⏳ startBackgroundTask: 2
02-09 16:58:18.715 2928 3183 D TSLocationManager: [c.t.l.data.sqlite.b first]
02-09 16:58:18.715 2928 3183 D TSLocationManager: ✅ Locked 1 records
02-09 16:58:18.716 2928 3183 I TSLocationManager: [c.t.l.http.HttpService a]
02-09 16:58:18.716 2928 3183 I TSLocationManager: 🔵 HTTP POST: 08780f21-dcf3-4c0a-a578-abcb226d8279
02-09 16:58:18.966 2928 3205 I TSLocationManager: [c.t.l.http.HttpService$h onResponse]
02-09 16:58:18.966 2928 3205 I TSLocationManager: 🔵 Response: 200
02-09 16:58:18.966 2928 3205 D TSLocationManager: [c.t.l.data.sqlite.b destroy]
02-09 16:58:18.966 2928 3205 D TSLocationManager: ✅ DESTROY: 08780f21-dcf3-4c0a-a578-abcb226d8279
02-09 16:58:18.969 2928 3205 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task stop] ⏳ stopBackgroundTask: 2
02-09 16:58:18.969 2928 3205 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish BackgroundTaskService [eventCount: 0, sticky: false]
02-09 16:58:18.970 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 16:58:18.970 2928 2928 D TSLocationManager: 🔴 BackgroundTaskService stopped
02-09 16:58:19.210 2928 2928 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 16:58:19.210 2928 2928 D TSLocationManager: 🔴 GeofencingService stopped
02-09 16:59:33.087 4939 4939 E TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:59:33.087 4939 4939 E TSLocationManager: ║ LICENSE VALIDATION FAILURE: com.example.testflutter
02-09 16:59:33.087 4939 4939 E TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:59:33.087 4939 4939 E TSLocationManager: ╟─ Failed to find license key in AndroidManifest. Ensure you've added the key within <application><meta-data android:name="com.transistorsoft.locationmanager.license" android:value="<YOUR LICENSE KEY>" />
02-09 16:59:33.087 4939 4939 E TSLocationManager: ╟─ BackgroundGeolocation is fully functional in DEBUG builds without a license.
02-09 16:59:33.087 4939 4939 E TSLocationManager: ╚═════════════════════════════════════════════
02-09 16:59:34.453 4939 4939 D TSLocationManager: [c.t.l.adapter.TSConfig d] ℹ️ Persist config, dirty: [authorization, authorization.strategy, authorization.accessToken, authorization.refreshToken, authorization.refreshUrl, authorization.refreshPayload, backgroundPermissionRationale, backgroundPermissionRationale.title, backgroundPermissionRationale.message, backgroundPermissionRationale.negativeAction, debug, desiredAccuracy, enableHeadless, headlessJobService, heartbeatInterval, logLevel, startOnBoot, stopOnTerminate, url]
02-09 16:59:34.460 4939 4939 D TSLocationManager: [c.t.l.data.sqlite.a onCreate] CREATE TABLE IF NOT EXISTS locations (id INTEGER PRIMARY KEY AUTOINCREMENT, uuid TEXT NOT NULL DEFAULT '', timestamp TEXT, json TEXT, data BLOB, encrypted BOOLEAN NOT NULL DEFAULT 0, locked BOOLEAN NOT NULL DEFAULT 0);
02-09 16:59:34.460 4939 4939 D TSLocationManager: [c.t.l.data.sqlite.a onCreate] CREATE TABLE IF NOT EXISTS geofences (id INTEGER PRIMARY KEY AUTOINCREMENT, identifier TEXT NOT NULL UNIQUE, latitude DOUBLE NOT NULL, sin_latitude DOUBLE NOT NULL, cos_latitude DOUBLE NOT NULL, longitude DOUBLE NOT NULL, sin_longitude DOUBLE NOT NULL, cos_longitude DOUBLE NOT NULL, radius DOUBLE NOT NULL, notifyOnEntry BOOLEAN NOT NULL DEFAULT 0, notifyOnExit BOOLEAN NOT NULL DEFAULT 0, notifyOnDwell BOOLEAN NOT NULL DEFAULT 0, loiteringDelay INTEGER NOT NULL DEFAULT 0, extras TEXT);
02-09 16:59:34.462 4939 4939 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 16:59:34.462 4939 4939 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 16:59:34.462 4939 4939 I TSLocationManager: ║ HTTP Service (count: 0)
02-09 16:59:34.462 4939 4939 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 16:59:34.463 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onCreate] ☯️ onCreate
02-09 16:59:34.464 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onStart] ☯️ onStart
02-09 16:59:34.464 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onResume] ☯️ onResume
02-09 16:59:34.466 4939 4939 I TSLocationManager: [c.t.l.a.BackgroundGeolocation <init>]
02-09 16:59:34.466 4939 4939 I TSLocationManager: ✅ Google Play Services: connected (version code:12451000)
02-09 16:59:34.475 4939 4939 I TSLocationManager: [c.t.l.p.TSProviderManager startMonitoring]
02-09 16:59:34.475 4939 4939 I TSLocationManager: 🎾 Start monitoring location-provider changes
02-09 16:59:34.480 4939 5025 D TSLocationManager: [c.t.l.data.sqlite.b prune]
02-09 16:59:34.480 4939 5025 D TSLocationManager: ℹ️ PRUNE -1 days
02-09 16:59:34.496 4939 4939 W TSLocationManager: [c.t.l.a.BackgroundGeolocation startSchedule]
02-09 16:59:34.496 4939 4939 W TSLocationManager: ⚠️ Cannot startSchedule; schedule is null
02-09 16:59:34.499 4939 4971 I TSLocationManager: [c.t.l.data.sqlite.GeofenceDAO create]
02-09 16:59:34.499 4939 4971 I TSLocationManager: ✅ Hi hi
02-09 16:59:34.503 4939 4971 D TSLocationManager: [c.t.l.g.TSGeofenceManager d] ℹ️ Persist monitored geofences: []
02-09 16:59:34.515 4939 4939 W TSLocationManager: [c.t.f.b.BackgroundGeolocationModule ready]
02-09 16:59:34.515 4939 4939 W TSLocationManager: ⚠️ #ready already called. Redirecting to #setConfig
02-09 16:59:34.516 4939 4939 D TSLocationManager: [c.t.l.adapter.TSConfig d] ℹ️ Persist config, dirty: [desiredAccuracy, geofenceModeHighAccuracy, persistMode]
02-09 16:59:34.521 4939 4939 I TSLocationManager: [c.t.locationmanager.util.c g]
02-09 16:59:34.521 4939 4939 I TSLocationManager: 🔵 LocationAuthorization: Requesting Background permission
02-09 16:59:34.765 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager$e run] evaluation buffer timer elapsed
02-09 16:59:35.289 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onPause] ☯️ onPause
02-09 16:59:54.924 4939 4939 I TSLocationManager: [c.t.locationmanager.util.c$j onPermissionGranted]
02-09 16:59:54.924 4939 4939 I TSLocationManager: ✅ LocationAuthorization: Permission granted
02-09 16:59:54.937 4939 4939 I TSLocationManager: [c.t.locationmanager.util.c e]
02-09 16:59:54.937 4939 4939 I TSLocationManager: 🔵 Should show backgroundPermissionRationale? false
02-09 16:59:54.939 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onResume] ☯️ onResume
02-09 16:59:55.692 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onPause] ☯️ onPause
02-09 16:59:55.692 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onStop] ☯️ onStop
02-09 17:00:02.584 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onStart] ☯️ onStart
02-09 17:00:02.625 4939 4939 I TSLocationManager: [c.t.locationmanager.util.c$j onPermissionGranted]
02-09 17:00:02.625 4939 4939 I TSLocationManager: ✅ LocationAuthorization: Permission granted
02-09 17:00:02.626 4939 5025 I TSLocationManager: - Enable: false → true, trackingMode: 0
02-09 17:00:02.636 4939 5025 D TSLocationManager: [c.t.l.http.HttpService startMonitoringConnectivityChanges]
02-09 17:00:02.636 4939 5025 D TSLocationManager: 🎾 Start monitoring connectivity changes
02-09 17:00:02.639 4939 5025 D TSLocationManager: [c.t.l.device.DeviceSettings startMonitoringPowerSaveChanges]
02-09 17:00:02.639 4939 5025 D TSLocationManager: 🎾 Start monitoring powersave changes
02-09 17:00:02.639 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onResume] ☯️ onResume
02-09 17:00:02.641 4939 5012 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 17:00:02.641 4939 5012 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:02.641 4939 5012 I TSLocationManager: ║ HTTP Service (count: 0)
02-09 17:00:02.641 4939 5012 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:02.643 4939 5025 I TSLocationManager: [c.t.l.service.HeartbeatService start]
02-09 17:00:02.643 4939 5025 I TSLocationManager: 🎾 Start heartbeat (60s)
02-09 17:00:02.649 4939 5025 D TSLocationManager: [c.t.locationmanager.util.c h]
02-09 17:00:02.649 4939 5025 D TSLocationManager: ℹ️ LocationAuthorization: Permission granted
02-09 17:00:02.653 4939 5211 I TSLocationManager: [c.t.l.service.HeartbeatService start]
02-09 17:00:02.653 4939 5211 I TSLocationManager: 🎾 Start heartbeat (60s)
02-09 17:00:02.659 4939 4939 D TSLocationManager: [c.t.l.s.ForegroundNotification createNotificationChannel] NotificationChannel{mId='com.example.testflutterTSLocationManager', mName=TSLocationManager, mDescription=, mImportance=1, mBypassDnd=false, mLockscreenVisibility=-1, mSound=null, mLights=false, mLightColor=0, mVibration=null, mUserLockedFields=0, mFgServiceShown=false, mVibrationEnabled=false, mShowBadge=false, mDeleted=false, mDeletedTimeMs=-1, mGroup='null', mAudioAttributes=null, mBlockableSystem=false, mAllowBubbles=-1, mImportanceLockedDefaultApp=false, mOriginalImp=-1000, mParent=null, mConversationId=null, mDemoted=false, mImportantConvo=false}
02-09 17:00:02.659 4939 5211 D TSLocationManager: [c.t.locationmanager.util.c h]
02-09 17:00:02.659 4939 5211 D TSLocationManager: ℹ️ LocationAuthorization: Permission granted
02-09 17:00:02.659 4939 5211 I TSLocationManager: [c.t.l.service.TrackingService changePace]
02-09 17:00:02.659 4939 5211 I TSLocationManager: 🔵 setPace: false → false
02-09 17:00:02.660 4939 5211 D TSLocationManager: [c.t.locationmanager.util.c h]
02-09 17:00:02.660 4939 5211 D TSLocationManager: ℹ️ LocationAuthorization: Permission granted
02-09 17:00:02.661 4939 5211 I TSLocationManager: [c.t.l.p.TSProviderManager handleProviderChangeEvent]
02-09 17:00:02.661 4939 5211 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:02.661 4939 5211 I TSLocationManager: ║ Location-provider change: true
02-09 17:00:02.661 4939 5211 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:02.661 4939 5211 I TSLocationManager: ╟─ GPS: true
02-09 17:00:02.661 4939 5211 I TSLocationManager: ╟─ Network: true
02-09 17:00:02.661 4939 5211 I TSLocationManager: ╟─ AP Mode: false
02-09 17:00:02.661 4939 5211 D TSLocationManager: [c.t.l.http.HttpService a]
02-09 17:00:02.661 4939 5211 D TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:02.661 4939 5211 D TSLocationManager: ║ 📶 Connectivity change: connected? true
02-09 17:00:02.661 4939 5211 D TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:02.664 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:02.664 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 1]
02-09 17:00:02.665 4939 5025 I TSLocationManager: [c.t.l.l.SingleLocationRequest startUpdatingLocation]
02-09 17:00:02.665 4939 5025 I TSLocationManager: 🔵 [SingleLocationRequest start, action: 1, requestId: 1]
02-09 17:00:02.669 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:02.669 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 2]
02-09 17:00:02.670 4939 5012 I TSLocationManager: [c.t.l.l.SingleLocationRequest startUpdatingLocation]
02-09 17:00:02.670 4939 5012 I TSLocationManager: 🔵 [SingleLocationRequest start, action: 1, requestId: 2]
02-09 17:00:02.671 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:02.671 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 3]
02-09 17:00:02.671 4939 5008 I TSLocationManager: [c.t.l.l.SingleLocationRequest startUpdatingLocation]
02-09 17:00:02.671 4939 5008 I TSLocationManager: 🔵 [SingleLocationRequest start, action: 3, requestId: 3]
02-09 17:00:02.675 4939 5008 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 2, sticky: true]
02-09 17:00:02.675 4939 5012 I TSLocationManager: [c.t.l.s.ActivityRecognitionService start]
02-09 17:00:02.675 4939 5012 I TSLocationManager: 🎾 Start motion-activity updates
02-09 17:00:02.676 4939 5025 I TSLocationManager: [c.t.l.s.ActivityRecognitionService start]
02-09 17:00:02.676 4939 5025 I TSLocationManager: 🎾 Start motion-activity updates
02-09 17:00:02.677 4939 5012 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 1, sticky: true]
02-09 17:00:02.677 4939 5025 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: true]
02-09 17:00:02.850 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity execute] locationsettings
02-09 17:00:02.863 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity stop] eventCount: 0
02-09 17:00:02.888 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity execute] locationsettings
02-09 17:00:02.898 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity onDestroy]
02-09 17:00:02.911 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity stop] eventCount: 0
02-09 17:00:03.206 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity onDestroy]
02-09 17:00:03.663 4939 5025 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 17:00:03.663 4939 5025 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:03.663 4939 5025 I TSLocationManager: ║ HTTP Service (count: 0)
02-09 17:00:03.663 4939 5025 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:05.078 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onPause] ☯️ onPause
02-09 17:00:05.079 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onStop] ☯️ onStop
02-09 17:00:06.848 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.848 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 1]
02-09 17:00:06.849 4939 5025 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.849 4939 5025 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.849 4939 5025 I TSLocationManager: ║ motionchange LocationResult: 2
02-09 17:00:06.849 4939 5025 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.849 4939 5025 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h9m56s249ms alt=137.79998779296875 vAcc=1.9931581], age: 3742ms, time: 1675951203107
02-09 17:00:06.853 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.853 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 2]
02-09 17:00:06.854 4939 5012 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.854 4939 5012 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.854 4939 5012 I TSLocationManager: ║ providerchange LocationResult: 3
02-09 17:00:06.854 4939 5012 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.854 4939 5012 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h9m56s249ms alt=137.79998779296875 vAcc=1.9931581], age: 3747ms, time: 1675951203107
02-09 17:00:06.855 4939 5025 I TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.855 4939 5025 I TSLocationManager: 🔵 Acquired motionchange position, isMoving: false
02-09 17:00:06.855 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.855 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 3]
02-09 17:00:06.855 4939 5025 D TSLocationManager: [c.t.l.l.TSLocationManager calculateMedianAccuracy] Median accuracy: 24.63
02-09 17:00:06.856 4939 5008 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.856 4939 5008 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.856 4939 5008 I TSLocationManager: ║ motionchange LocationResult: 1
02-09 17:00:06.856 4939 5008 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.856 4939 5008 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h9m56s249ms alt=137.79998779296875 vAcc=1.9931581], age: 3749ms, time: 1675951203107
02-09 17:00:06.862 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.866 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:06.866 4939 4939 D TSLocationManager: 🔴 LocationRequestService stopped
02-09 17:00:06.870 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager$f$a a] ℹ️ GeofencingClient addGeofences
02-09 17:00:06.871 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager d] ℹ️ Persist monitored geofences: [Hi hi]
02-09 17:00:06.873 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager$f$a a]
02-09 17:00:06.873 4939 4939 D TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.873 4939 4939 D TSLocationManager: ║ TSGeofenceManager monitoring 1/1
02-09 17:00:06.873 4939 4939 D TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.873 4939 4939 D TSLocationManager: ╟─ 🎾 Hi hi
02-09 17:00:06.873 4939 4939 D TSLocationManager: ╚═════════════════════════════════════════════
02-09 17:00:06.894 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.894 4939 4939 D TSLocationManager: 🎾 GeofencingService [eventCount: 1]
02-09 17:00:06.901 4939 5291 I TSLocationManager: [c.t.l.s.GeofencingService handleGeofencingEvent]
02-09 17:00:06.901 4939 5291 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.901 4939 5291 I TSLocationManager: ║ Geofencing Event: ENTER
02-09 17:00:06.901 4939 5291 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.901 4939 5291 I TSLocationManager: ╟─ Hi hi
02-09 17:00:06.901 4939 5291 I TSLocationManager: ╚═════════════════════════════════════════════
02-09 17:00:06.904 4939 5291 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 0
02-09 17:00:06.915 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.915 4939 4939 D TSLocationManager: 🎾 ActivityRecognitionService [eventCount: 1]
02-09 17:00:06.917 4939 5291 I TSLocationManager: [c.t.l.data.sqlite.b persist]
02-09 17:00:06.917 4939 5291 I TSLocationManager: ✅ INSERT: 492963e3-f2ac-4365-86bf-6ebd0e8ee527
02-09 17:00:06.918 4939 5296 D TSLocationManager: [c.t.l.s.ActivityRecognitionService handleActivityRecognitionResult]
02-09 17:00:06.918 4939 5296 D TSLocationManager: 🚘 ️DetectedActivity [type=STILL, confidence=100]
02-09 17:00:06.920 4939 5296 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish ActivityRecognitionService [eventCount: 0, sticky: false]
02-09 17:00:06.927 4939 5291 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 17:00:06.927 4939 5291 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.927 4939 5291 I TSLocationManager: ║ HTTP Service (count: 1)
02-09 17:00:06.927 4939 5291 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.929 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.929 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 1]
02-09 17:00:06.929 4939 5299 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.929 4939 5299 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.929 4939 5299 I TSLocationManager: ║ providerchange LocationResult: 3
02-09 17:00:06.929 4939 5299 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.929 4939 5299 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h10m0s19ms alt=137.79998779296875 vAcc=1.9931581], age: 53ms, time: 1675951206876
02-09 17:00:06.932 4939 5291 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish GeofencingService [eventCount: 0, sticky: false]
02-09 17:00:06.936 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.936 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 2]
02-09 17:00:06.938 4939 5291 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.938 4939 5291 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.938 4939 5291 I TSLocationManager: ║ motionchange LocationResult: 1
02-09 17:00:06.938 4939 5291 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.938 4939 5291 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h10m0s19ms alt=137.79998779296875 vAcc=1.9931581], age: 60ms, time: 1675951206876
02-09 17:00:06.944 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.944 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 3]
02-09 17:00:06.945 4939 5296 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.945 4939 5296 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.945 4939 5296 I TSLocationManager: ║ providerchange LocationResult: 3
02-09 17:00:06.945 4939 5296 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.945 4939 5296 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h10m0s67ms alt=137.79998779296875 vAcc=1.9931581], age: 21ms, time: 1675951206924
02-09 17:00:06.950 4939 5025 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 2 isFinished? true
02-09 17:00:06.950 4939 5025 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 0
02-09 17:00:06.950 4939 5025 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.950 4939 5012 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 0
02-09 17:00:06.956 4939 5012 I TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.956 4939 5012 I TSLocationManager: 🔵 Acquired providerchange position
02-09 17:00:06.956 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.956 4939 4939 D TSLocationManager: 🎾 BackgroundTaskService [eventCount: 1]
02-09 17:00:06.956 4939 5012 D TSLocationManager: [c.t.l.l.TSLocationManager calculateMedianAccuracy] Median accuracy: 24.63
02-09 17:00:06.956 4939 4939 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task start] ⏳ startBackgroundTask: 1
02-09 17:00:06.958 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.958 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 4]
02-09 17:00:06.960 4939 5025 I TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult]
02-09 17:00:06.960 4939 5025 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.960 4939 5025 I TSLocationManager: ║ motionchange LocationResult: 1
02-09 17:00:06.960 4939 5025 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.960 4939 5025 I TSLocationManager: ╟─ 📍 Location[fused 40.990604,28.649666 hAcc=24.63 et=+22h10m0s67ms alt=137.79998779296875 vAcc=1.9931581], age: 35ms, time: 1675951206924
02-09 17:00:06.960 4939 5008 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 0
02-09 17:00:06.961 4939 5012 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 3 isFinished? true
02-09 17:00:06.962 4939 5012 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.965 4939 5008 I TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.965 4939 5008 I TSLocationManager: 🔵 Acquired motionchange position, isMoving: false
02-09 17:00:06.965 4939 5008 D TSLocationManager: [c.t.l.l.TSLocationManager calculateMedianAccuracy] Median accuracy: 24.63
02-09 17:00:06.967 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.970 4939 4939 D TSLocationManager: [c.t.l.l.TSLocationManager$b onLocation]
02-09 17:00:06.970 4939 4939 D TSLocationManager: ℹ️ Distance from last location: 5381747.0
02-09 17:00:06.975 4939 5008 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 1 isFinished? true
02-09 17:00:06.975 4939 5008 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 0
02-09 17:00:06.975 4939 5008 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.976 4939 5299 W TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.976 4939 5299 W TSLocationManager: ⚠️ Failed to find SingleLocationRequest
02-09 17:00:06.976 4939 5299 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 3 isFinished? true
02-09 17:00:06.976 4939 5291 W TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.976 4939 5291 W TSLocationManager: ⚠️ Failed to find SingleLocationRequest
02-09 17:00:06.977 4939 5291 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 1 isFinished? true
02-09 17:00:06.977 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:06.977 4939 4939 D TSLocationManager: 🎾 TrackingService [eventCount: 1]
02-09 17:00:06.977 4939 5291 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 3769
02-09 17:00:06.977 4939 5296 W TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.977 4939 5296 W TSLocationManager: ⚠️ Failed to find SingleLocationRequest
02-09 17:00:06.977 4939 4939 I TSLocationManager: [c.t.l.service.TrackingService handleMotionChangeResult]
02-09 17:00:06.977 4939 4939 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:06.977 4939 4939 I TSLocationManager: ║ TrackingService motionchange: false
02-09 17:00:06.977 4939 4939 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:06.977 4939 5299 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.978 4939 5291 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.978 4939 5296 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 3 isFinished? true
02-09 17:00:06.978 4939 5025 W TSLocationManager: [c.t.l.l.TSLocationManager onSingleLocationResult]
02-09 17:00:06.978 4939 5025 W TSLocationManager: ⚠️ Failed to find SingleLocationRequest
02-09 17:00:06.978 4939 5296 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.978 4939 5025 D TSLocationManager: [c.t.l.s.LocationRequestService handleLocationResult] SingleLocationRequest 1 isFinished? true
02-09 17:00:06.978 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish TrackingService [eventCount: 0, sticky: false]
02-09 17:00:06.979 4939 5025 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 3817
02-09 17:00:06.979 4939 5025 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.980 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: false]
02-09 17:00:06.980 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:06.980 4939 4939 D TSLocationManager: 🔴 LocationRequestService stopped
02-09 17:00:06.981 4939 4939 I TSLocationManager: [c.t.l.s.ActivityRecognitionService start]
02-09 17:00:06.981 4939 4939 I TSLocationManager: 🎾 Start motion-activity updates
02-09 17:00:06.981 4939 5012 D TSLocationManager: [c.t.l.data.sqlite.b first]
02-09 17:00:06.981 4939 5012 D TSLocationManager: ✅ Locked 1 records
02-09 17:00:06.981 4939 5012 I TSLocationManager: [c.t.l.http.HttpService a]
02-09 17:00:06.981 4939 5012 I TSLocationManager: 🔵 HTTP POST: 492963e3-f2ac-4365-86bf-6ebd0e8ee527
02-09 17:00:07.031 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:07.031 4939 4939 D TSLocationManager: 🎾 ActivityRecognitionService [eventCount: 1]
02-09 17:00:07.032 4939 5012 D TSLocationManager: [c.t.l.s.ActivityRecognitionService handleActivityRecognitionResult]
02-09 17:00:07.032 4939 5012 D TSLocationManager: 🚘 ️DetectedActivity [type=STILL, confidence=100]
02-09 17:00:07.033 4939 5012 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish ActivityRecognitionService [eventCount: 0, sticky: false]
02-09 17:00:07.232 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:07.232 4939 4939 D TSLocationManager: 🔴 TrackingService stopped
02-09 17:00:07.435 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:07.435 4939 4939 D TSLocationManager: 🔴 GeofencingService stopped
02-09 17:00:07.499 4939 5021 I TSLocationManager: [c.t.l.http.HttpService$h onResponse]
02-09 17:00:07.499 4939 5021 I TSLocationManager: 🔵 Response: 200
02-09 17:00:07.500 4939 5021 D TSLocationManager: [c.t.l.data.sqlite.b destroy]
02-09 17:00:07.500 4939 5021 D TSLocationManager: ✅ DESTROY: 492963e3-f2ac-4365-86bf-6ebd0e8ee527
02-09 17:00:07.502 4939 5021 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task stop] ⏳ stopBackgroundTask: 1
02-09 17:00:07.502 4939 5021 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish BackgroundTaskService [eventCount: 0, sticky: false]
02-09 17:00:07.504 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:07.504 4939 4939 D TSLocationManager: 🔴 BackgroundTaskService stopped
02-09 17:00:07.913 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:07.913 4939 4939 D TSLocationManager: 🎾 GeofencingService [eventCount: 1]
02-09 17:00:07.914 4939 5012 I TSLocationManager: [c.t.l.s.GeofencingService handleGeofencingEvent]
02-09 17:00:07.914 4939 5012 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:07.914 4939 5012 I TSLocationManager: ║ Geofencing Event: DWELL
02-09 17:00:07.914 4939 5012 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:07.914 4939 5012 I TSLocationManager: ╟─ Hi hi
02-09 17:00:07.914 4939 5012 I TSLocationManager: ╚═════════════════════════════════════════════
02-09 17:00:07.914 4939 5012 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 4306
02-09 17:00:07.919 4939 5012 I TSLocationManager: [c.t.l.data.sqlite.b persist]
02-09 17:00:07.919 4939 5012 I TSLocationManager: ✅ INSERT: 0dc43515-bbd1-40b6-90ed-bc56ea2a9ce2
02-09 17:00:07.920 4939 5012 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 17:00:07.920 4939 5012 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:07.920 4939 5012 I TSLocationManager: ║ HTTP Service (count: 1)
02-09 17:00:07.920 4939 5012 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:07.922 4939 5012 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish GeofencingService [eventCount: 0, sticky: false]
02-09 17:00:07.925 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:07.925 4939 4939 D TSLocationManager: 🎾 BackgroundTaskService [eventCount: 1]
02-09 17:00:07.925 4939 4939 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task start] ⏳ startBackgroundTask: 2
02-09 17:00:07.927 4939 5012 D TSLocationManager: [c.t.l.data.sqlite.b first]
02-09 17:00:07.927 4939 5012 D TSLocationManager: ✅ Locked 1 records
02-09 17:00:07.927 4939 5012 I TSLocationManager: [c.t.l.http.HttpService a]
02-09 17:00:07.927 4939 5012 I TSLocationManager: 🔵 HTTP POST: 0dc43515-bbd1-40b6-90ed-bc56ea2a9ce2
02-09 17:00:08.035 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:08.035 4939 4939 D TSLocationManager: 🔴 ActivityRecognitionService stopped
02-09 17:00:08.423 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:08.423 4939 4939 D TSLocationManager: 🔴 GeofencingService stopped
02-09 17:00:08.632 4939 5021 I TSLocationManager: [c.t.l.http.HttpService$h onResponse]
02-09 17:00:08.632 4939 5021 I TSLocationManager: 🔵 Response: 200
02-09 17:00:08.633 4939 5021 D TSLocationManager: [c.t.l.data.sqlite.b destroy]
02-09 17:00:08.633 4939 5021 D TSLocationManager: ✅ DESTROY: 0dc43515-bbd1-40b6-90ed-bc56ea2a9ce2
02-09 17:00:08.635 4939 5021 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task stop] ⏳ stopBackgroundTask: 2
02-09 17:00:08.636 4939 5021 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish BackgroundTaskService [eventCount: 0, sticky: false]
02-09 17:00:08.638 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService onDestroy]
02-09 17:00:08.638 4939 4939 D TSLocationManager: 🔴 BackgroundTaskService stopped
02-09 17:00:09.319 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onStart] ☯️ onStart
02-09 17:00:09.320 4939 4939 D TSLocationManager: [c.t.l.l.LifecycleManager onResume] ☯️ onResume
02-09 17:00:09.321 4939 5012 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 17:00:09.321 4939 5012 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:09.321 4939 5012 I TSLocationManager: ║ HTTP Service (count: 0)
02-09 17:00:09.321 4939 5012 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:09.499 4939 5012 D TSLocationManager: [c.t.l.c.TransistorAuthorizationToken$a run] 🔑 Destroyed cached token for tracker.transistorsoft.com
02-09 17:00:09.499 4939 5012 D TSLocationManager: [c.t.l.adapter.TSConfig d] ℹ️ Persist config, dirty: [authorization, authorization.strategy, authorization.refreshPayload]
02-09 17:00:09.764 4939 5021 D TSLocationManager: [c.t.l.c.TransistorAuthorizationToken$b$a onResponse] 🔑 Received token from tracker.transistorsoft.com
02-09 17:00:09.819 4939 4939 W TSLocationManager: [c.t.f.b.BackgroundGeolocationModule ready]
02-09 17:00:09.819 4939 4939 W TSLocationManager: ⚠️ #ready already called. Redirecting to #setConfig
02-09 17:00:09.821 4939 4939 D TSLocationManager: [c.t.l.adapter.TSConfig d] ℹ️ Persist config, dirty: [authorization, authorization.strategy, authorization.accessToken, authorization.refreshToken, authorization.refreshPayload, desiredAccuracy]
02-09 17:00:09.834 4939 4939 W TSLocationManager: [c.t.l.a.BackgroundGeolocation startSchedule]
02-09 17:00:09.834 4939 4939 W TSLocationManager: ⚠️ Cannot startSchedule; schedule is null
02-09 17:00:09.836 4939 4971 I TSLocationManager: [c.t.l.data.sqlite.GeofenceDAO destroy]
02-09 17:00:09.836 4939 4971 I TSLocationManager: ✅ Hi hi
02-09 17:00:09.836 4939 4971 I TSLocationManager: [c.t.l.data.sqlite.GeofenceDAO create]
02-09 17:00:09.836 4939 4971 I TSLocationManager: ✅ Hi hi
02-09 17:00:09.837 4939 4971 D TSLocationManager: [c.t.l.g.TSGeofenceManager d] ℹ️ Persist monitored geofences: []
02-09 17:00:09.846 4939 4939 W TSLocationManager: [c.t.f.b.BackgroundGeolocationModule ready]
02-09 17:00:09.846 4939 4939 W TSLocationManager: ⚠️ #ready already called. Redirecting to #setConfig
02-09 17:00:09.846 4939 4939 D TSLocationManager: [c.t.l.adapter.TSConfig d] ℹ️ Persist config, dirty: [desiredAccuracy]
02-09 17:00:09.852 4939 4939 D TSLocationManager: [c.t.locationmanager.util.c g]
02-09 17:00:09.852 4939 4939 D TSLocationManager: ℹ️ LocationAuthorization: Permission granted
02-09 17:00:09.852 4939 5012 I TSLocationManager: - Enable: true → true, trackingMode: 0
02-09 17:00:09.855 4939 5012 D TSLocationManager: [c.t.l.http.HttpService startMonitoringConnectivityChanges]
02-09 17:00:09.855 4939 5012 D TSLocationManager: 🎾 Start monitoring connectivity changes
02-09 17:00:09.856 4939 5012 D TSLocationManager: [c.t.l.device.DeviceSettings startMonitoringPowerSaveChanges]
02-09 17:00:09.856 4939 5012 D TSLocationManager: 🎾 Start monitoring powersave changes
02-09 17:00:09.856 4939 5012 I TSLocationManager: [c.t.l.service.HeartbeatService start]
02-09 17:00:09.856 4939 5012 I TSLocationManager: 🎾 Start heartbeat (60s)
02-09 17:00:09.859 4939 5012 D TSLocationManager: [c.t.locationmanager.util.c h]
02-09 17:00:09.859 4939 5012 D TSLocationManager: ℹ️ LocationAuthorization: Permission granted
02-09 17:00:09.866 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:09.866 4939 4939 D TSLocationManager: 🎾 LocationRequestService [eventCount: 1]
02-09 17:00:09.867 4939 5012 I TSLocationManager: [c.t.l.l.SingleLocationRequest startUpdatingLocation]
02-09 17:00:09.867 4939 5012 I TSLocationManager: 🔵 [SingleLocationRequest start, action: 1, requestId: 4]
02-09 17:00:09.868 4939 5012 I TSLocationManager: [c.t.l.s.ActivityRecognitionService start]
02-09 17:00:09.868 4939 5012 I TSLocationManager: 🎾 Start motion-activity updates
02-09 17:00:09.869 4939 5012 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish LocationRequestService [eventCount: 0, sticky: true]
02-09 17:00:10.068 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity execute] locationsettings
02-09 17:00:10.076 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity stop] eventCount: 0
02-09 17:00:10.096 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager$e run] evaluation buffer timer elapsed
02-09 17:00:10.114 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager$f$a a] ℹ️ GeofencingClient addGeofences
02-09 17:00:10.114 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager d] ℹ️ Persist monitored geofences: [Hi hi]
02-09 17:00:10.115 4939 4939 D TSLocationManager: [c.t.l.g.TSGeofenceManager$f$a a]
02-09 17:00:10.115 4939 4939 D TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:10.115 4939 4939 D TSLocationManager: ║ TSGeofenceManager monitoring 1/1
02-09 17:00:10.115 4939 4939 D TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:10.115 4939 4939 D TSLocationManager: ╟─ 🎾 Hi hi
02-09 17:00:10.115 4939 4939 D TSLocationManager: ╚═════════════════════════════════════════════
02-09 17:00:10.120 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:10.120 4939 4939 D TSLocationManager: 🎾 GeofencingService [eventCount: 1]
02-09 17:00:10.120 4939 5025 I TSLocationManager: [c.t.l.s.GeofencingService handleGeofencingEvent]
02-09 17:00:10.120 4939 5025 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:10.120 4939 5025 I TSLocationManager: ║ Geofencing Event: ENTER
02-09 17:00:10.120 4939 5025 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:10.120 4939 5025 I TSLocationManager: ╟─ Hi hi
02-09 17:00:10.120 4939 5025 I TSLocationManager: ╚═════════════════════════════════════════════
02-09 17:00:10.122 4939 5025 D TSLocationManager: [c.t.l.g.TSGeofenceManager setLocation] isMoving: false | stateChanged: false | timerExpired: false | elapsed: 4306
02-09 17:00:10.124 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:10.124 4939 4939 D TSLocationManager: 🎾 ActivityRecognitionService [eventCount: 1]
02-09 17:00:10.125 4939 5012 D TSLocationManager: [c.t.l.s.ActivityRecognitionService handleActivityRecognitionResult]
02-09 17:00:10.125 4939 5012 D TSLocationManager: 🚘 ️DetectedActivity [type=STILL, confidence=100]
02-09 17:00:10.127 4939 4939 D TSLocationManager: [c.t.l.a.TSLocationManagerActivity onDestroy]
02-09 17:00:10.127 4939 5012 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish ActivityRecognitionService [eventCount: 0, sticky: false]
02-09 17:00:10.136 4939 5025 I TSLocationManager: [c.t.l.data.sqlite.b persist]
02-09 17:00:10.136 4939 5025 I TSLocationManager: ✅ INSERT: 275efea9-fa4e-4874-99d0-ec2014b0e95e
02-09 17:00:10.140 4939 5025 I TSLocationManager: [c.t.l.http.HttpService flush]
02-09 17:00:10.140 4939 5025 I TSLocationManager: ╔═════════════════════════════════════════════
02-09 17:00:10.140 4939 5025 I TSLocationManager: ║ HTTP Service (count: 1)
02-09 17:00:10.140 4939 5025 I TSLocationManager: ╠═════════════════════════════════════════════
02-09 17:00:10.145 4939 4939 D TSLocationManager: [c.t.l.service.AbstractService start]
02-09 17:00:10.145 4939 4939 D TSLocationManager: 🎾 BackgroundTaskService [eventCount: 1]
02-09 17:00:10.145 4939 4939 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task start] ⏳ startBackgroundTask: 3
02-09 17:00:10.147 4939 5025 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish GeofencingService [eventCount: 0, sticky: false]
02-09 17:00:10.148 4939 5012 D TSLocationManager: [c.t.l.data.sqlite.b first]
02-09 17:00:10.148 4939 5012 D TSLocationManager: ✅ Locked 1 records
02-09 17:00:10.149 4939 5012 I TSLocationManager: [c.t.l.http.HttpService a]
02-09 17:00:10.149 4939 5012 I TSLocationManager: 🔵 HTTP POST: 275efea9-fa4e-4874-99d0-ec2014b0e95e
02-09 17:00:10.450 4939 5021 I TSLocationManager: [c.t.l.http.HttpService$h onResponse]
02-09 17:00:10.450 4939 5021 I TSLocationManager: 🔵 Response: 200
02-09 17:00:10.450 4939 5021 D TSLocationManager: [c.t.l.data.sqlite.b destroy]
02-09 17:00:10.450 4939 5021 D TSLocationManager: ✅ DESTROY: 275efea9-fa4e-4874-99d0-ec2014b0e95e
02-09 17:00:10.453 4939 5021 I TSLocationManager: [c.t.l.u.BackgroundTaskManager$Task stop] ⏳ stopBackgroundTask: 3
02-09 17:00:10.453 4939 5021 D TSLocationManager: [c.t.l.service.AbstractService finish] ⚙️︎ finish BackgroundTaskService [eventCount: 0, sticky: false]
BackgroundGeolocation.ready is designed to be called in your Flutter App instance. Where is your Flutter App instance?
@christocracy Since the app is native we have just Application instance, I didn't add FlutterApplication because I didn't see in your example any important code that may influence the geolocation logic and it works for me.
If you're using the plugin in a non-standard way, there's little I can do to help you. This Flutter plugin is designed to be used in standard Flutter apps.
That being said, you should be executing the .ready method in your MainActivity then -- NOT in the main.dart
But I called .ready from MainActivity of native app and it actually works I just don't get the results in backgroundGeolocationHeadlessTask.
If you check logs, there location updates, geofence callbacks. Maybe I just missed something in setting up
.ready is not to be called when an Android app is headless.
calling .ready should not exist in main.dart. Neither should BackgroundFetch.configure
Adding event listeners (eg: onLocation, etc) should not exist in main.dart. That is for UI code. UI code does not exist outside of Flutter Widget components.
@christocracy can the plugin support Activity instead of FlutterActivity?
The plugin does not “support” any Activity. The plugin contains no reference to the Android Activity class.
This issue is stale because it has been open for 30 days with no activity.
This issue was closed because it has been inactive for 14 days since being marked as stale.