diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0e55eed1..674206c2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,15 @@
# CHANGELOG
+## 5.0.0-beta.1 — 2025-11-10
+* Initial introduction of v5 beta. See the [Migration Guide](https://github.com/transistorsoft/flutter_background_geolocation/blob/5.0.0-beta/help/MIGRATION-GUIDE-5.0.0.md)
+
+## 4.18.1 — 2025-11-09
+* [Android] pin local `tslocationmanager` dependency at `:3.+` to prevent inadvertant importing a beta version from mavencentral. this version of the dart API is not yet ready for the beta version
+
+## 4.18.0 — 2025-09-08
+* [Android] Drop Huawei HMS support for failure to provide Android 16KB Page support in their SDKs.
+
+
## 4.17.0 — 2025-07-28
* [iOS] Implement Swift Package Manager support
* [example] Re-factor /example app's location marker images.
diff --git a/README.md b/README.md
index 159d6f9b..c0562d97 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,21 @@
# flutter_background_geolocation
+[!IMPORTANT]
+**Beta channel (`5.0.0-beta.1`)**
+
+**Opt in to the beta** by adding this to your `pubspec.yaml`:
+
+```yaml
+dependencies:
+ flutter_background_geolocation: ^5.0.0-beta
+```
+
+See the **[Migration Guide to 5.0.0](./MIGRATION-GUIDE-5.0.0.md)** for details about new config APIs (e.g., `LocationFilter`) and how to migrate from flat to compound config (legacy config is still supported).
+
+Be sure to see updated [Setup Guides](#-setup-guides)
+
+---------------------------------------------------------
+
[](https://www.transistorsoft.com)
-------------------------------------------------------------------------------
@@ -26,10 +42,11 @@ Also available for [Cordova](https://github.com/transistorsoft/cordova-backgroun

# Contents
-- ### π [API Documentation](https://pub.dartlang.org/documentation/flutter_background_geolocation/latest/flt_background_geolocation/flt_background_geolocation-library.html)
+- ### π [API Documentation](https://pub.dev/documentation/flutter_background_geolocation/5.0.0-beta.1/flt_background_geolocation/)
- ### [Installing the Plugin](#-installing-the-plugin)
- ### [Setup Guides](#-setup-guides)
- ### [Using the plugin](#-using-the-plugin)
+- ### [v5 Migration Guide](help/MIGRATION-GUIDE-5.0.0.md)
- ### [Example](#l-example)
- ### [Debugging](https://github.com/transistorsoft/flutter_background_geolocation/wiki/Debugging)
- ### [Demo Application](#-demo-application)
@@ -58,8 +75,8 @@ dependencies:
## π· Setup Guides
-- [iOS](https://github.com/transistorsoft/flutter_background_geolocation/blob/master/help/INSTALL-IOS.md)
-- [Android](https://github.com/transistorsoft/flutter_background_geolocation/blob/master/help/INSTALL-ANDROID.md)
+- [iOS](help/INSTALL-IOS.md)
+- [Android](help/INSTALL-ANDROID.md)
## π· Using the plugin ##
diff --git a/android/build.gradle b/android/build.gradle
index c0f737cc..87ecc91d 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -1,6 +1,18 @@
group 'com.transistorsoft.flutter.backgroundgeolocation'
version '1.0-SNAPSHOT'
+buildscript {
+ repositories {
+ google()
+ mavenCentral()
+ }
+ dependencies {
+ // Android Gradle Plugin compatible with Gradle 8.11.x
+ classpath 'com.android.tools.build:gradle:8.7.2'
+ }
+}
+
+
rootProject.allprojects {
repositories {
google()
@@ -36,7 +48,7 @@ android {
compileSdkVersion safeExtGet('compileSdkVersion', DEFAULT_COMPILE_SDK_VERSION)
defaultConfig {
- minSdkVersion 16
+ minSdkVersion 19
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles 'proguard-rules.pro'
}
@@ -53,6 +65,13 @@ repositories {
dependencies {
def playServicesLocationVersion = safeExtGet('playServicesLocationVersion', DEFAULT_PLAY_SERVICES_LOCATION_VERSION)
+
+ implementation "com.google.android.gms:play-services-location:$playServicesLocationVersion"
+
+ implementation "com.transistorsoft:tslocationmanager:4.0.0-beta.1"
+ implementation 'org.greenrobot:eventbus:3.3.1'
+ /*
+ def playServicesLocationVersion = safeExtGet('playServicesLocationVersion', DEFAULT_PLAY_SERVICES_LOCATION_VERSION)
def hmsLocationVersion = safeExtGet('hmsLocationVersion', DEFAULT_HMS_LOCATION_VERSION);
def appCompatVersion = safeExtGet('appCompatVersion', safeExtGet('supportLibVersion', DEFAULT_APP_COMPAT_VERSION))
def okHttpVersion = safeExtGet('okHttpVersion', DEFAULT_OK_HTTP_VERSION)
@@ -84,10 +103,6 @@ dependencies {
implementation "io.github.nishkarsh:android-permissions:$androidPermissionsVersion"
// GMS location
implementation "com.google.android.gms:play-services-location:$playServicesLocationVersion"
- // HMS location
- implementation("com.huawei.hms:location:$hmsLocationVersion") {
- exclude(group: "com.huawei.hms", module: 'hianalytics')
- }
implementation "androidx.localbroadcastmanager:localbroadcastmanager:$localBroadcastManagerVersion"
implementation "androidx.appcompat:appcompat:$appCompatVersion"
@@ -95,9 +110,12 @@ dependencies {
implementation "androidx.lifecycle:lifecycle-runtime:$lifeCycleRuntimeVersion"
implementation "androidx.lifecycle:lifecycle-extensions:$lifeCycleExtensionsVersion"
+ implementation 'org.bouncycastle:bcprov-jdk15to18:1.78.1'
+
// WorkManager
def workVersion = safeExtGet('workVersion', DEFAULT_WORK_VERSION)
def concurrentFuturesVersion = safeExtGet('concurrentFuturesVersion', DEFAULT_CONCURRENT_FUTURES_VERSION)
implementation "androidx.work:work-runtime:$workVersion"
implementation "androidx.concurrent:concurrent-futures:$concurrentFuturesVersion"
+ */
}
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar
deleted file mode 100644
index 2d693a81..00000000
Binary files a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar and /dev/null differ
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.md5 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.md5
deleted file mode 100644
index 07db0ea7..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.md5
+++ /dev/null
@@ -1 +0,0 @@
-641f3cbf3f902db9a4139bf8f198c019
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha1 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha1
deleted file mode 100644
index d0c0df7b..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-ba82001981e2835a1f899d7a057b25535671ed0f
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha256 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha256
deleted file mode 100644
index 934c0514..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha256
+++ /dev/null
@@ -1 +0,0 @@
-eeefa1d6bb4eed3067864c0ab621930a2125f1fa06f6ab8bc46075b786e1cca7
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha512 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha512
deleted file mode 100644
index 738217b3..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.aar.sha512
+++ /dev/null
@@ -1 +0,0 @@
-2855371218cd7c67b3f121ba3f7fce4093364f5d9538e8d8347a91c47a68eb2c2374ea0b9a7fb59dfea62a8cac1aa1aac41d80ab45e00563c36a01ddea7d7637
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.md5 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.md5
deleted file mode 100644
index c3dce1a4..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.md5
+++ /dev/null
@@ -1 +0,0 @@
-767ed28701420cd3f27d2128f317787a
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha1 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha1
deleted file mode 100644
index 7274a0b6..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha1
+++ /dev/null
@@ -1 +0,0 @@
-439e4e5864879010d5c671b002144acc8c0e1712
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha256 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha256
deleted file mode 100644
index 5d3da9b4..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha256
+++ /dev/null
@@ -1 +0,0 @@
-8c11e6152a277786c7423bbf9fe3e127b7bd38dcb6d1d421348ef6a54edc23ca
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha512 b/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha512
deleted file mode 100644
index cb914ca5..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom.sha512
+++ /dev/null
@@ -1 +0,0 @@
-23e32ae13456ca49ca20fd2bbbb06f227c9d64ea10f0a848bc67bcfbfd0726a3a6316fe6fb8fcc39daa97684934549a8c94b14c9b924974a3c3b28d8f15aee60
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar
new file mode 100644
index 00000000..82885ee0
Binary files /dev/null and b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar differ
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.md5 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.md5
new file mode 100644
index 00000000..ff17eb66
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.md5
@@ -0,0 +1 @@
+1dac98d4dd69dafad55477a69ac14b6e
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha1 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha1
new file mode 100644
index 00000000..67702123
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha1
@@ -0,0 +1 @@
+69757bb1c0c4482cea74b8f5155d7289023208ce
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha256 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha256
new file mode 100644
index 00000000..23d6b75d
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha256
@@ -0,0 +1 @@
+7d418aa319b4bf863b0fccf4d7c8fbe7367d764cc7307a11b9b3c2a3e35326ce
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha512 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha512
new file mode 100644
index 00000000..5fbf6554
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.aar.sha512
@@ -0,0 +1 @@
+bd57b7decc2c5f6b37ab498c0ae1f6668d37d7bbb793aff6512ca2788362c95628115feb1fb818b299bf16c7cd4a8950799511392d62cda1985579abfb4c1d99
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom
similarity index 93%
rename from android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom
rename to android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom
index f3f4a2ee..e24f39bf 100644
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/3.6.8/tslocationmanager-v21-3.6.8.pom
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom
@@ -4,6 +4,6 @@
4.0.0
com.transistorsoft
tslocationmanager-v21
- 3.6.8
+ 4.0.0
aar
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.md5 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.md5
new file mode 100644
index 00000000..47708b24
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.md5
@@ -0,0 +1 @@
+7273ec5efbcfa222c9f503023dcef4de
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha1 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha1
new file mode 100644
index 00000000..3aa8e5c1
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha1
@@ -0,0 +1 @@
+3da361e663967f875807fe30f93c5369380faa9a
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha256 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha256
new file mode 100644
index 00000000..4097c4c4
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha256
@@ -0,0 +1 @@
+12da9d7af701c2cfa456353b29e70b9889f6a2857c7ab019485bc189753af952
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha512 b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha512
new file mode 100644
index 00000000..d547af74
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/4.0.0/tslocationmanager-v21-4.0.0.pom.sha512
@@ -0,0 +1 @@
+1280e2419dfff84482f6bd579a7548f21fddfa30f7f47f9fb9b56a0089b912f946c601a6316c12054685d81c376a04f2cd884bc46648b22e114f79ec0d203419
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager-v21/maven-metadata.xml b/android/libs/com/transistorsoft/tslocationmanager-v21/maven-metadata.xml
index 8a6f39d6..f4a7b41a 100644
--- a/android/libs/com/transistorsoft/tslocationmanager-v21/maven-metadata.xml
+++ b/android/libs/com/transistorsoft/tslocationmanager-v21/maven-metadata.xml
@@ -3,13 +3,11 @@
com.transistorsoft
tslocationmanager-v21
- 3.6.8
- 3.6.8
+ 4.0.0
+ 4.0.0
- 3.6.6
- 3.6.7
- 3.6.8
+ 4.0.0
- 20250727174649
+ 20251105064435
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar
deleted file mode 100644
index 0b134c70..00000000
Binary files a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar and /dev/null differ
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.md5 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.md5
deleted file mode 100644
index beffd53a..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.md5
+++ /dev/null
@@ -1 +0,0 @@
-d43dad047c564d19cfe77cd26f83e42f
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha1 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha1
deleted file mode 100644
index cfce4e36..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha1
+++ /dev/null
@@ -1 +0,0 @@
-f3530c9f73915bb300175cb830615c03ac6bf9af
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha256 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha256
deleted file mode 100644
index d2205283..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha256
+++ /dev/null
@@ -1 +0,0 @@
-15d0a2af79bf43ce6357b07af8112818353bfb6787c733af901ac177d408a164
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha512 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha512
deleted file mode 100644
index 3ef8959a..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.aar.sha512
+++ /dev/null
@@ -1 +0,0 @@
-0ff908fef62fc7a0f17a6142afa4b0a16c5a280b4cc016df0343e7467fa3f4d35385362dbfa13b09f2af94f2b7874e10dbf58d3c8f82b41c753f411e021ac2ad
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.md5 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.md5
deleted file mode 100644
index f1b6a4ec..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.md5
+++ /dev/null
@@ -1 +0,0 @@
-3e018b992680e5b8d8891cb34fd4a204
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha1 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha1
deleted file mode 100644
index 7260499f..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha1
+++ /dev/null
@@ -1 +0,0 @@
-306f5bf26e8a5d8db0fa0e524c3690e74a91b983
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha256 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha256
deleted file mode 100644
index 1772dcca..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha256
+++ /dev/null
@@ -1 +0,0 @@
-0c6c86970e4516aa09fce5c2c88ebd3c4e553c1f3c4998bbf479479bfe6eb685
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha512 b/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha512
deleted file mode 100644
index 25b50ced..00000000
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom.sha512
+++ /dev/null
@@ -1 +0,0 @@
-2123322a83ce3f1caec736e5b28d5b43fb24c29a527f5cf3567ade867d8bd5c921c11b0dba7884b3c8e6bdfbae6624bfa668ca182233a7219a6668fe5c0ca009
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar
new file mode 100644
index 00000000..1683e84c
Binary files /dev/null and b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar differ
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.md5 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.md5
new file mode 100644
index 00000000..4525c359
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.md5
@@ -0,0 +1 @@
+f2c2b4f3b02b01ad8ba05e38b2f83804
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha1 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha1
new file mode 100644
index 00000000..82f53c9a
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha1
@@ -0,0 +1 @@
+3af7e4c9fc9a4a3feea8c2dc0c0e94104b4ec22f
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha256 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha256
new file mode 100644
index 00000000..1cfa0d6a
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha256
@@ -0,0 +1 @@
+351ba95184ae40e66a8da8250cf3c2ef4c079ed7da3e8cefebabe4c181c993b7
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha512 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha512
new file mode 100644
index 00000000..60399f8d
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.aar.sha512
@@ -0,0 +1 @@
+79f3b40c78d39ede4eb9d3c255a05b05ffff423299ab9ab4a0726870a7d57e15dbbb388defda36281f31cdd353259872dcb6ff78a35d5ecf741a6865f42fd098
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom
similarity index 93%
rename from android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom
rename to android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom
index 84003f46..3bd9c8fd 100644
--- a/android/libs/com/transistorsoft/tslocationmanager/3.6.8/tslocationmanager-3.6.8.pom
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom
@@ -4,6 +4,6 @@
4.0.0
com.transistorsoft
tslocationmanager
- 3.6.8
+ 4.0.0
aar
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.md5 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.md5
new file mode 100644
index 00000000..d773d4e2
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.md5
@@ -0,0 +1 @@
+ffd3cb7533329758f7657a2ebf892c3e
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha1 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha1
new file mode 100644
index 00000000..bd6b403e
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha1
@@ -0,0 +1 @@
+196fb846a453332e994a26859ea692a8514e7ff7
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha256 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha256
new file mode 100644
index 00000000..1cd51a78
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha256
@@ -0,0 +1 @@
+4bd2029fbfaf2396450520649bd656d991d7b66e6d73be191661010ee6db7765
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha512 b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha512
new file mode 100644
index 00000000..b38b1bc0
--- /dev/null
+++ b/android/libs/com/transistorsoft/tslocationmanager/4.0.0/tslocationmanager-4.0.0.pom.sha512
@@ -0,0 +1 @@
+579e31f342f95fa6db3188a5d137ff945cbdcf7a3055c74efef4f3babd63df284c6268379cf34fe0a16c6735d8755e474aa5c92a67bd47b29897daf509d9d1a4
\ No newline at end of file
diff --git a/android/libs/com/transistorsoft/tslocationmanager/maven-metadata.xml b/android/libs/com/transistorsoft/tslocationmanager/maven-metadata.xml
index d89e2ba9..3758fbcf 100644
--- a/android/libs/com/transistorsoft/tslocationmanager/maven-metadata.xml
+++ b/android/libs/com/transistorsoft/tslocationmanager/maven-metadata.xml
@@ -3,13 +3,11 @@
com.transistorsoft
tslocationmanager
- 3.6.8
- 3.6.8
+ 4.0.0
+ 4.0.0
- 3.6.6
- 3.6.7
- 3.6.8
+ 4.0.0
- 20250727174649
+ 20251105064435
diff --git a/android/proguard-rules.pro b/android/proguard-rules.pro
index 0a2fe4cc..d5b65f5c 100644
--- a/android/proguard-rules.pro
+++ b/android/proguard-rules.pro
@@ -1,39 +1,84 @@
-# BackgroundGeolocation lib tslocationmanager.aar is *already* proguarded
--keepnames class com.transistorsoft.flutter.backgroundgeolocation.FLTBackgroundGeolocationPlugin
--keep class com.transistorsoft** { *; }
--dontwarn com.transistorsoft.**
+# JNI surface
+-keepnames class com.transistorsoft.locationmanager.a.A
+-keepclassmembers class com.transistorsoft.locationmanager.a.A {
+ public static void r(boolean);
+ public static boolean getDBFlag();
+}
+#######################################################################
+# TSConfig reflection (metadata + state + editors)
+#######################################################################
+-keepattributes *Annotation*,Signature,EnclosingMethod,InnerClasses
-# Huawei Adapter
--keep class com.google.android.gms.** {*;}
--keep interface com.google.android.gms.** {*;}
--dontwarn com.huawei.**
+# Keep the annotation TYPES so they exist at runtime
+-keep class com.transistorsoft.locationmanager.config.meta.ConfigProp { *; }
+-keep class com.transistorsoft.locationmanager.config.meta.ConfigSpec { *; }
+-keep class com.transistorsoft.locationmanager.config.meta.ConfigGroup { *; }
+-keep class com.transistorsoft.locationmanager.config.meta.CtorOrder { *; }
-# BackgroundGeolocation (EventBus)
--keepattributes *Annotation*
--keepclassmembers class * {
- @org.greenrobot.eventbus.Subscribe ;
+# Keep field names + ctors for state modules; FieldIndex uses getters/ctors by name/signature
+-keepnames class com.transistorsoft.locationmanager.config.state.** { *; }
+-keepclassmembers class com.transistorsoft.locationmanager.config.state.** {
+ ;
+ (...);
+}
+
+# Keep module field names on the aggregate ConfigState
+-keepnames class com.transistorsoft.locationmanager.config.state.ConfigState {
+ ;
+ (...);
}
--keep enum org.greenrobot.eventbus.ThreadMode { *; }
-# And if you use AsyncExecutor:
--keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
- (java.lang.Throwable);
+# Keep Editor and sub-editors members that routing may reflect
+-keepnames class com.transistorsoft.locationmanager.config.edit.Editor { *; }
+-keepclassmembers class com.transistorsoft.locationmanager.config.edit.Editor {
+ ;
+ (...);
}
-# Accessed via reflection, avoid renaming or removal
+-keepclassmembers class com.transistorsoft.locationmanager.config.edit.** {
+ public (...);
+ public ** set*(...);
+ ;
+}
+-keepnames class com.transistorsoft.locationmanager.config.TSConfig
+-keepclassmembers class com.transistorsoft.locationmanager.config.TSConfig { public static void r(boolean); }
+-keepnames class com.transistorsoft.locationmanager.logger.TSLog
+-keepclassmembers class com.transistorsoft.locationmanager.logger.TSLog { public static void r(boolean); }
+-keepnames class com.transistorsoft.locationmanager.service.AbstractService
+-keepclassmembers class com.transistorsoft.locationmanager.service.AbstractService { public static void r(boolean); }
+
+# Services (names + ctors)
+-keep class com.transistorsoft.locationmanager.service.** extends com.transistorsoft.locationmanager.service.AbstractService
+-keepclassmembers class com.transistorsoft.locationmanager.service.** extends com.transistorsoft.locationmanager.service.AbstractService { (...); }
+
+# Scheduler components
+-keep class com.transistorsoft.locationmanager.scheduler.ScheduleAlarmReceiver
+-keep class com.transistorsoft.locationmanager.scheduler.ScheduleJobService
+-keep class com.transistorsoft.locationmanager.scheduler.ScheduleService
+-keepclassmembers class com.transistorsoft.locationmanager.scheduler.ScheduleAlarmReceiver { (...); }
+-keepclassmembers class com.transistorsoft.locationmanager.scheduler.ScheduleJobService { (...); }
+-keepclassmembers class com.transistorsoft.locationmanager.scheduler.ScheduleService { (...); }
+
+# Cross-module DTOs
+-keepnames class com.transistorsoft.locationmanager.data.SQLQuery
+-keepclassmembers class com.transistorsoft.locationmanager.data.SQLQuery { public static *; }
+-keepnames class com.transistorsoft.locationmanager.data.LocationModel
+-keepclassmembers class com.transistorsoft.locationmanager.data.LocationModel { public *; }
+
+# EventBus reflection
+-keepattributes *Annotation*
+-keepclassmembers class * { @org.greenrobot.eventbus.Subscribe ; }
+-keep enum org.greenrobot.eventbus.ThreadMode { *; }
-keep class org.greenrobot.eventbus.android.AndroidComponentsImpl
-# logback
--keep class ch.qos** { *; }
--keep class org.slf4j** { *; }
--dontwarn ch.qos.logback.core.net.*
+# (Optional) Flutter plugin entry
+-keepnames class com.transistorsoft.flutter.backgroundgeolocation.FLTBackgroundGeolocationPlugin
-# OkHttp3
+# OkHttp/logging quiets (unchanged)
-dontwarn okio.**
-dontwarn okhttp3.**
-dontwarn javax.annotation.**
-dontwarn org.conscrypt.**
-# A resource is loaded with a relative path so the package of this class must be preserved.
-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase
-
-# LifecycleObserver
--keep class androidx.lifecycle.FullLifecycleObserver
+-keep class ch.qos** { *; }
+-keep class org.slf4j** { *; }
+-dontwarn ch.qos.logback.core.net.*
diff --git a/android/src/main/java/com/transistorsoft/flutter/backgroundgeolocation/BackgroundGeolocationModule.java b/android/src/main/java/com/transistorsoft/flutter/backgroundgeolocation/BackgroundGeolocationModule.java
index 7821b084..c0b59ce9 100644
--- a/android/src/main/java/com/transistorsoft/flutter/backgroundgeolocation/BackgroundGeolocationModule.java
+++ b/android/src/main/java/com/transistorsoft/flutter/backgroundgeolocation/BackgroundGeolocationModule.java
@@ -5,16 +5,17 @@
import android.content.Context;
import android.os.Build;
import android.os.Bundle;
+import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.transistorsoft.xms.g.common.ExtensionApiAvailability;
-
+import com.google.android.gms.common.GoogleApiAvailability;
import com.transistorsoft.flutter.backgroundgeolocation.streams.*;
import com.transistorsoft.locationmanager.adapter.BackgroundGeolocation;
-import com.transistorsoft.locationmanager.adapter.TSConfig;
+import com.transistorsoft.locationmanager.adapter.Actions;
+import com.transistorsoft.locationmanager.config.TSConfig;
import com.transistorsoft.locationmanager.adapter.callback.TSBackgroundTaskCallback;
import com.transistorsoft.locationmanager.adapter.callback.TSCallback;
import com.transistorsoft.locationmanager.adapter.callback.TSEmailLogCallback;
@@ -29,16 +30,17 @@
import com.transistorsoft.locationmanager.adapter.callback.TSPlayServicesConnectErrorCallback;
import com.transistorsoft.locationmanager.adapter.callback.TSRequestPermissionCallback;
import com.transistorsoft.locationmanager.adapter.callback.TSSyncCallback;
-import com.transistorsoft.locationmanager.config.TSAuthorization;
-import com.transistorsoft.locationmanager.config.TransistorAuthorizationToken;
+import com.transistorsoft.locationmanager.http.TSAuthorization;
+import com.transistorsoft.locationmanager.http.TransistorAuthorizationToken;
+import com.transistorsoft.locationmanager.config.edit.Editor;
import com.transistorsoft.locationmanager.data.LocationModel;
import com.transistorsoft.locationmanager.data.SQLQuery;
import com.transistorsoft.locationmanager.device.DeviceInfo;
import com.transistorsoft.locationmanager.device.DeviceSettingsRequest;
+import com.transistorsoft.locationmanager.event.LocationEvent;
import com.transistorsoft.locationmanager.event.TerminateEvent;
import com.transistorsoft.locationmanager.geofence.TSGeofence;
import com.transistorsoft.locationmanager.location.TSCurrentPositionRequest;
-import com.transistorsoft.locationmanager.location.TSLocation;
import com.transistorsoft.locationmanager.location.TSWatchPositionRequest;
import com.transistorsoft.locationmanager.logger.TSLog;
import com.transistorsoft.locationmanager.scheduler.TSScheduleManager;
@@ -80,8 +82,6 @@ static synchronized BackgroundGeolocationModule getInstanceSynchronized() {
private static final String ACTION_READY = "ready";
private static final String ACTION_REGISTER_HEADLESS_TASK = "registerHeadlessTask";
private static final String ACTION_GET_STATE = "getState";
- private static final String ACTION_START_SCHEDULE = "startSchedule";
- private static final String ACTION_STOP_SCHEDULE = "stopSchedule";
private static final String ACTION_LOG = "log";
private static final String ACTION_REQUEST_SETTINGS = "requestSettings";
private static final String ACTION_SHOW_SETTINGS = "showSettings";
@@ -138,13 +138,12 @@ void setActivity(@Nullable final Activity activity) {
BackgroundGeolocation adapter = BackgroundGeolocation.getInstance(activity);
adapter.setActivity(activity);
adapter.removeListeners();
-
TSConfig config = TSConfig.getInstance(mContext.getApplicationContext());
- config.useCLLocationAccuracy(true);
-
- config.updateWithBuilder()
- .setHeadlessJobService(JOB_SERVICE_CLASS)
- .commit();
+ config.setUseCLLocationAccuracy(true);
+ Editor ed = config.edit();
+ //ed.geo().setUseCLLocationAccuracy(true);
+ ed.app().setHeadlessJobService(JOB_SERVICE_CLASS);
+ ed.commit();
}
});
} else if (mActivity != null) {
@@ -233,7 +232,7 @@ private void handlePlayServicesConnectError(Integer errorCode) {
if (mActivity == null) {
return;
}
- ExtensionApiAvailability.getInstance().getErrorDialog(mActivity, errorCode, 1001).show();
+ GoogleApiAvailability.getInstance().getErrorDialog(mActivity, errorCode, 1001).show();
}
@SuppressWarnings("unchecked")
@@ -244,61 +243,62 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
ready(params, result);
} else if (call.method.equals(ACTION_GET_STATE)) {
getState(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_START)) {
+
+ } else if (call.method.equalsIgnoreCase(Actions.START)) {
start(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_STOP)) {
+ } else if (call.method.equalsIgnoreCase(Actions.STOP)) {
stop(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_START_GEOFENCES)) {
+ } else if (call.method.equalsIgnoreCase(Actions.START_GEOFENCES)) {
startGeofences(result);
- } else if (call.method.equalsIgnoreCase(ACTION_START_SCHEDULE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.START_SCHEDULE)) {
startSchedule(result);
- } else if (call.method.equalsIgnoreCase(ACTION_STOP_SCHEDULE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.STOP_SCHEDULE)) {
stopSchedule(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_START_BACKGROUND_TASK)) {
+ } else if (call.method.equalsIgnoreCase(Actions.START_BACKGROUND_TASK)) {
startBackgroundTask(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_FINISH)) {
+ } else if (call.method.equalsIgnoreCase(Actions.FINISH)) {
stopBackgroundTask((int) call.arguments, result);
} else if (call.method.equalsIgnoreCase(ACTION_RESET)) {
reset(call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_SET_CONFIG)) {
+ } else if (call.method.equalsIgnoreCase(Actions.SET_CONFIG)) {
setConfig((Map) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_CHANGE_PACE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.CHANGE_PACE)) {
changePace(call, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_CURRENT_POSITION)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_CURRENT_POSITION)) {
getCurrentPosition((Map) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_WATCH_POSITION)) {
+ } else if (call.method.equalsIgnoreCase(Actions.WATCH_POSITION)) {
watchPosition((Map) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_STOP_WATCH_POSITION)) {
+ } else if (call.method.equalsIgnoreCase(Actions.STOP_WATCH_POSITION)) {
stopWatchPosition(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_LOCATIONS)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_LOCATIONS)) {
getLocations(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_INSERT_LOCATION)) {
+ } else if (call.method.equalsIgnoreCase(Actions.INSERT_LOCATION)) {
insertLocation((Map) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_COUNT)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_COUNT)) {
getCount(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_DESTROY_LOCATIONS)) {
+ } else if (call.method.equalsIgnoreCase(Actions.DESTROY_LOCATIONS)) {
destroyLocations(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_DESTROY_LOCATION)) {
+ } else if (call.method.equalsIgnoreCase(Actions.DESTROY_LOCATION)) {
destroyLocation((String) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_SYNC)) {
+ } else if (call.method.equalsIgnoreCase(Actions.SYNC)) {
sync(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_ODOMETER)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_ODOMETER)) {
getOdometer(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_SET_ODOMETER)) {
+ } else if (call.method.equalsIgnoreCase(Actions.SET_ODOMETER)) {
setOdometer((Double) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_ADD_GEOFENCE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.ADD_GEOFENCE)) {
addGeofence((Map) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_ADD_GEOFENCES)) {
+ } else if (call.method.equalsIgnoreCase(Actions.ADD_GEOFENCES)) {
addGeofences((List) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_REMOVE_GEOFENCE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.REMOVE_GEOFENCE)) {
removeGeofence((String) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_REMOVE_GEOFENCES)) {
+ } else if (call.method.equalsIgnoreCase(Actions.REMOVE_GEOFENCES)) {
removeGeofences(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_GEOFENCES)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_GEOFENCES)) {
getGeofences(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_GEOFENCE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_GEOFENCE)) {
getGeofence((String) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GEOFENCE_EXISTS)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GEOFENCE_EXISTS)) {
geofenceExists((String) call.arguments, result);
} else if (call.method.equalsIgnoreCase(TSLog.ACTION_LOG)) {
log((List) call.arguments, result);
@@ -308,16 +308,16 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
emailLog((List) call.arguments, result);
} else if (call.method.equalsIgnoreCase(TSLog.ACTION_UPLOAD_LOG)) {
uploadLog((List) call.arguments, result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_DESTROY_LOG)) {
+ } else if (call.method.equalsIgnoreCase(Actions.DESTROY_LOG)) {
destroyLog(result);
} else if (call.method.equalsIgnoreCase(ACTION_LOG)) {
Map args = (Map) call.arguments;
log(args.get("level"), args.get("message"), result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_GET_SENSORS)) {
+ } else if (call.method.equalsIgnoreCase(Actions.GET_SENSORS)) {
getSensors(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_IS_POWER_SAVE_MODE)) {
+ } else if (call.method.equalsIgnoreCase(Actions.IS_POWER_SAVE_MODE)) {
isPowerSaveMode(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_IS_IGNORING_BATTERY_OPTIMIZATIONS)) {
+ } else if (call.method.equalsIgnoreCase(Actions.IS_IGNORING_BATTERY_OPTIMIZATIONS)) {
isIgnoringBatteryOptimizations(result);
} else if (call.method.equalsIgnoreCase(ACTION_REQUEST_SETTINGS)) {
requestSettings((List) call.arguments, result);
@@ -325,13 +325,13 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
showSettings((List) call.arguments, result);
} else if (call.method.equalsIgnoreCase(DeviceInfo.ACTION_GET_DEVICE_INFO)) {
getDeviceInfo(result);
- } else if (call.method.equalsIgnoreCase(BackgroundGeolocation.ACTION_PLAY_SOUND)) {
+ } else if (call.method.equalsIgnoreCase(Actions.PLAY_SOUND)) {
playSound((String) call.arguments, result);
} else if (call.method.equalsIgnoreCase(ACTION_REGISTER_HEADLESS_TASK)) {
registerHeadlessTask((List