@josuelmm/capacitor-background-geolocation 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/JosuelmmCapacitorBackgroundGeolocation.podspec +34 -0
- package/LICENSE +17 -0
- package/NOTICE.md +32 -0
- package/Package.swift +45 -0
- package/README.md +402 -0
- package/android/build.gradle +79 -0
- package/android/proguard-rules.pro +1 -0
- package/android/src/main/AndroidManifest.xml +83 -0
- package/android/src/main/java/com/evgenii/jsevaluator/HandlerWrapper.java +18 -0
- package/android/src/main/java/com/evgenii/jsevaluator/JavaScriptInterface.java +22 -0
- package/android/src/main/java/com/evgenii/jsevaluator/JsEvaluator.java +133 -0
- package/android/src/main/java/com/evgenii/jsevaluator/JsFunctionCallFormatter.java +37 -0
- package/android/src/main/java/com/evgenii/jsevaluator/WebViewWrapper.java +71 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/CallJavaResultInterface.java +8 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/HandlerWrapperInterface.java +5 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/JsCallback.java +10 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/JsEvaluatorInterface.java +18 -0
- package/android/src/main/java/com/evgenii/jsevaluator/interfaces/WebViewWrapperInterface.java +14 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/BackgroundGeolocationPlugin.java +898 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/ConfigMapper.java +303 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/HeadlessTaskRegistry.java +34 -0
- package/android/src/main/java/com/josuelmm/capacitor/backgroundgeolocation/JsEvaluatorTaskRunner.java +63 -0
- package/android/src/main/java/com/marianhello/bgloc/BackgroundGeolocationFacade.java +699 -0
- package/android/src/main/java/com/marianhello/bgloc/BootCompletedReceiver.java +103 -0
- package/android/src/main/java/com/marianhello/bgloc/Config.java +1155 -0
- package/android/src/main/java/com/marianhello/bgloc/ConnectivityListener.java +5 -0
- package/android/src/main/java/com/marianhello/bgloc/HttpPostService.java +362 -0
- package/android/src/main/java/com/marianhello/bgloc/LocationManager.java +138 -0
- package/android/src/main/java/com/marianhello/bgloc/PluginDelegate.java +45 -0
- package/android/src/main/java/com/marianhello/bgloc/PluginException.java +38 -0
- package/android/src/main/java/com/marianhello/bgloc/PostLocationTask.java +238 -0
- package/android/src/main/java/com/marianhello/bgloc/ResourceResolver.java +55 -0
- package/android/src/main/java/com/marianhello/bgloc/data/AbstractLocationTemplate.java +69 -0
- package/android/src/main/java/com/marianhello/bgloc/data/ArrayListLocationTemplate.java +88 -0
- package/android/src/main/java/com/marianhello/bgloc/data/BackgroundActivity.java +108 -0
- package/android/src/main/java/com/marianhello/bgloc/data/BackgroundLocation.java +1088 -0
- package/android/src/main/java/com/marianhello/bgloc/data/ConfigJsonMapper.java +211 -0
- package/android/src/main/java/com/marianhello/bgloc/data/ConfigurationDAO.java +13 -0
- package/android/src/main/java/com/marianhello/bgloc/data/DAOFactory.java +17 -0
- package/android/src/main/java/com/marianhello/bgloc/data/HashMapLocationTemplate.java +82 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationDAO.java +27 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTemplate.java +12 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTemplateFactory.java +71 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTransform.java +19 -0
- package/android/src/main/java/com/marianhello/bgloc/data/SessionLocationDAO.java +18 -0
- package/android/src/main/java/com/marianhello/bgloc/data/provider/ContentProviderLocationDAO.java +406 -0
- package/android/src/main/java/com/marianhello/bgloc/data/provider/LocationContentProvider.java +321 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationContract.java +94 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationDAO.java +227 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationContract.java +122 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationDAO.java +550 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteOpenHelper.java +189 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteSessionContract.java +74 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteSessionLocationDAO.java +169 -0
- package/android/src/main/java/com/marianhello/bgloc/driving/DrivingEventsDetector.java +265 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/AbstractTaskRunner.java +15 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/ActivityTask.java +48 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/JsCallback.java +10 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/LocationTask.java +60 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/StationaryTask.java +25 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/Task.java +8 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/TaskRunner.java +5 -0
- package/android/src/main/java/com/marianhello/bgloc/headless/TaskRunnerFactory.java +8 -0
- package/android/src/main/java/com/marianhello/bgloc/http/UrlTemplateResolver.java +115 -0
- package/android/src/main/java/com/marianhello/bgloc/oem/BatteryOemHelper.java +214 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/AbstractLocationProvider.java +218 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +385 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/DistanceFilterLocationProvider.java +685 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/LocationProvider.java +32 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/LocationProviderFactory.java +47 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/ProviderDelegate.java +12 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/RawLocationProvider.java +175 -0
- package/android/src/main/java/com/marianhello/bgloc/sensor/SensorFusionDetector.java +199 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationService.java +16 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceImpl.java +1531 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceInfo.java +6 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceInfoImpl.java +41 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceIntentBuilder.java +203 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceProxy.java +156 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/AccountHelper.java +39 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/Authenticator.java +68 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/AuthenticatorService.java +28 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/BatchManager.java +311 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/NotificationHelper.java +148 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/SyncAdapter.java +301 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/SyncService.java +68 -0
- package/android/src/main/java/com/marianhello/logging/DBLogReader.java +208 -0
- package/android/src/main/java/com/marianhello/logging/LogEntry.java +99 -0
- package/android/src/main/java/com/marianhello/logging/LoggerManager.java +70 -0
- package/android/src/main/java/com/marianhello/logging/UncaughtExceptionLogger.java +36 -0
- package/android/src/main/java/com/marianhello/utils/CloneHelper.java +22 -0
- package/android/src/main/java/com/marianhello/utils/Convert.java +56 -0
- package/android/src/main/java/com/marianhello/utils/TextUtils.java +72 -0
- package/android/src/main/java/com/marianhello/utils/ToneGenerator.java +68 -0
- package/android/src/main/java/org/apache/commons/io/Charsets.java +153 -0
- package/android/src/main/java/org/apache/commons/io/input/ReversedLinesFileReader.java +344 -0
- package/android/src/main/java/org/chromium/content/browser/ThreadUtils.java +134 -0
- package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlExpression.java +398 -0
- package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlSelectStatement.java +671 -0
- package/android/src/main/java/ru/andremoniy/sqlbuilder/SqlStatement.java +29 -0
- package/android/src/main/java/ru/andremoniy/utils/TextUtils.java +61 -0
- package/android/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
- package/android/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
- package/android/src/main/res/values/strings.xml +15 -0
- package/android/src/main/res/xml/authenticator.xml +7 -0
- package/android/src/main/res/xml/syncadapter.xml +9 -0
- package/dist/esm/definitions.d.ts +1052 -0
- package/dist/esm/definitions.js +142 -0
- package/dist/esm/definitions.js.map +1 -0
- package/dist/esm/index.d.ts +8 -0
- package/dist/esm/index.js +23 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/web.d.ts +92 -0
- package/dist/esm/web.js +242 -0
- package/dist/esm/web.js.map +1 -0
- package/dist/plugin.cjs.js +415 -0
- package/dist/plugin.cjs.js.map +1 -0
- package/dist/plugin.js +418 -0
- package/dist/plugin.js.map +1 -0
- package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin-Bridging-Header.h +18 -0
- package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin.m +52 -0
- package/ios/Sources/BackgroundGeolocationPlugin/BackgroundGeolocationPlugin.swift +750 -0
- package/ios/Tests/BackgroundGeolocationPluginTests/BackgroundGeolocationPluginTests.swift +12 -0
- package/ios/common/BackgroundGeolocation/CocoaLumberjack.h +1945 -0
- package/ios/common/BackgroundGeolocation/CocoaLumberjack.m +5255 -0
- package/ios/common/BackgroundGeolocation/FMDB.h +2357 -0
- package/ios/common/BackgroundGeolocation/FMDB.m +2672 -0
- package/ios/common/BackgroundGeolocation/FMDBLogger.h +42 -0
- package/ios/common/BackgroundGeolocation/FMDBLogger.m +264 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.h +41 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.m +68 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager+Internal.h +33 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.h +178 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.m +1025 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.h +103 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.m +238 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequestDefines.h +163 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.h +39 -0
- package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.m +37 -0
- package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.h +51 -0
- package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.m +53 -0
- package/ios/common/BackgroundGeolocation/MAURActivity.h +23 -0
- package/ios/common/BackgroundGeolocation/MAURActivity.m +52 -0
- package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.h +18 -0
- package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.m +340 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.h +88 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.m +1193 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.h +46 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.m +283 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.h +25 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.m +105 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.h +99 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.m +636 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.m +54 -0
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.h +20 -0
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.m +550 -0
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.h +17 -0
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.m +124 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.h +73 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.m +392 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.h +38 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.m +39 -0
- package/ios/common/BackgroundGeolocation/MAURLocationManager.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURLocationManager.m +305 -0
- package/ios/common/BackgroundGeolocation/MAURLogReader.h +26 -0
- package/ios/common/BackgroundGeolocation/MAURLogReader.m +122 -0
- package/ios/common/BackgroundGeolocation/MAURLogging.h +19 -0
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.m +367 -0
- package/ios/common/BackgroundGeolocation/MAURProviderDelegate.h +52 -0
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.h +18 -0
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.m +138 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.h +26 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.m +335 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.h +57 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.m +93 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.h +52 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.m +520 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.h +32 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.m +276 -0
- package/ios/common/BackgroundGeolocation/MAURSensorFusionDetector.h +41 -0
- package/ios/common/BackgroundGeolocation/MAURSensorFusionDetector.m +137 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationContract.h +29 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationContract.m +31 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationDAO.h +25 -0
- package/ios/common/BackgroundGeolocation/MAURSessionLocationDAO.m +153 -0
- package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.h +20 -0
- package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.m +62 -0
- package/ios/common/BackgroundGeolocation/MAURUrlTemplateResolver.h +31 -0
- package/ios/common/BackgroundGeolocation/MAURUrlTemplateResolver.m +107 -0
- package/ios/common/BackgroundGeolocation/Reachability.h +102 -0
- package/ios/common/BackgroundGeolocation/Reachability.m +475 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/README.md +170 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.h +55 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.m +47 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlDataManipulationCommand.h +27 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.h +250 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.m +259 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.h +360 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.m +427 -0
- package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlStatement.h +37 -0
- package/ios/common/BackgroundGeolocation/module.modulemap +16 -0
- package/package.json +82 -0
package/dist/plugin.js
ADDED
|
@@ -0,0 +1,418 @@
|
|
|
1
|
+
var capacitorBackgroundGeolocation = (function (exports, core) {
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
// Copyright (c) 2026 JosueLMM
|
|
6
|
+
//
|
|
7
|
+
// Capacitor plugin definitions for @josuelmm/capacitor-background-geolocation.
|
|
8
|
+
// Mirrors @josuelmm/cordova-background-geolocation's www/BackgroundGeolocation.d.ts
|
|
9
|
+
// 1:1 for v1.0.0 parity. Cordova success/fail callbacks are collapsed into
|
|
10
|
+
// Promises; `on(eventName, cb)` becomes Capacitor's `addListener` overloads.
|
|
11
|
+
/**
|
|
12
|
+
* Numeric mapping of {@link LocationProvider} matching the Cordova plugin.
|
|
13
|
+
*
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
const LocationProviderValue = {
|
|
17
|
+
DISTANCE_FILTER: 0,
|
|
18
|
+
ACTIVITY_PROVIDER: 1,
|
|
19
|
+
RAW_PROVIDER: 2,
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Meters mapping of {@link Accuracy} (matches the Cordova plugin's `AccuracyLevel`).
|
|
23
|
+
*
|
|
24
|
+
* @since 1.0.0
|
|
25
|
+
*/
|
|
26
|
+
const AccuracyValue = {
|
|
27
|
+
HIGH: 0,
|
|
28
|
+
MEDIUM: 100,
|
|
29
|
+
LOW: 1000,
|
|
30
|
+
PASSIVE: 10000,
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Service authorization state, mirroring the Cordova plugin constants.
|
|
34
|
+
*
|
|
35
|
+
* @since 1.0.0
|
|
36
|
+
*/
|
|
37
|
+
exports.AuthorizationStatus = void 0;
|
|
38
|
+
(function (AuthorizationStatus) {
|
|
39
|
+
AuthorizationStatus[AuthorizationStatus["NOT_AUTHORIZED"] = 0] = "NOT_AUTHORIZED";
|
|
40
|
+
AuthorizationStatus[AuthorizationStatus["AUTHORIZED"] = 1] = "AUTHORIZED";
|
|
41
|
+
AuthorizationStatus[AuthorizationStatus["AUTHORIZED_FOREGROUND"] = 2] = "AUTHORIZED_FOREGROUND";
|
|
42
|
+
})(exports.AuthorizationStatus || (exports.AuthorizationStatus = {}));
|
|
43
|
+
// ---------------------------------------------------------------------------
|
|
44
|
+
// @awesome-cordova-plugins compatibility re-exports
|
|
45
|
+
// ---------------------------------------------------------------------------
|
|
46
|
+
/** Event name strings (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */
|
|
47
|
+
exports.BackgroundGeolocationEvents = void 0;
|
|
48
|
+
(function (BackgroundGeolocationEvents) {
|
|
49
|
+
BackgroundGeolocationEvents["http_authorization"] = "http_authorization";
|
|
50
|
+
BackgroundGeolocationEvents["abort_requested"] = "abort_requested";
|
|
51
|
+
BackgroundGeolocationEvents["background"] = "background";
|
|
52
|
+
BackgroundGeolocationEvents["foreground"] = "foreground";
|
|
53
|
+
BackgroundGeolocationEvents["authorization"] = "authorization";
|
|
54
|
+
BackgroundGeolocationEvents["error"] = "error";
|
|
55
|
+
BackgroundGeolocationEvents["stop"] = "stop";
|
|
56
|
+
BackgroundGeolocationEvents["start"] = "start";
|
|
57
|
+
BackgroundGeolocationEvents["activity"] = "activity";
|
|
58
|
+
BackgroundGeolocationEvents["stationary"] = "stationary";
|
|
59
|
+
BackgroundGeolocationEvents["location"] = "location";
|
|
60
|
+
BackgroundGeolocationEvents["heartbeat"] = "heartbeat";
|
|
61
|
+
BackgroundGeolocationEvents["syncStart"] = "syncStart";
|
|
62
|
+
BackgroundGeolocationEvents["syncProgress"] = "syncProgress";
|
|
63
|
+
BackgroundGeolocationEvents["syncSuccess"] = "syncSuccess";
|
|
64
|
+
BackgroundGeolocationEvents["syncError"] = "syncError";
|
|
65
|
+
BackgroundGeolocationEvents["tripStart"] = "tripStart";
|
|
66
|
+
BackgroundGeolocationEvents["tripEnd"] = "tripEnd";
|
|
67
|
+
BackgroundGeolocationEvents["moving"] = "moving";
|
|
68
|
+
BackgroundGeolocationEvents["stopped"] = "stopped";
|
|
69
|
+
BackgroundGeolocationEvents["speeding"] = "speeding";
|
|
70
|
+
BackgroundGeolocationEvents["providerChange"] = "providerChange";
|
|
71
|
+
BackgroundGeolocationEvents["sos"] = "sos";
|
|
72
|
+
BackgroundGeolocationEvents["hardBrake"] = "hardBrake";
|
|
73
|
+
BackgroundGeolocationEvents["rapidAcceleration"] = "rapidAcceleration";
|
|
74
|
+
BackgroundGeolocationEvents["sharpTurn"] = "sharpTurn";
|
|
75
|
+
BackgroundGeolocationEvents["possibleCrash"] = "possibleCrash";
|
|
76
|
+
BackgroundGeolocationEvents["phoneUsageWhileDriving"] = "phoneUsageWhileDriving";
|
|
77
|
+
})(exports.BackgroundGeolocationEvents || (exports.BackgroundGeolocationEvents = {}));
|
|
78
|
+
/** Location error codes. @since 1.0.0 */
|
|
79
|
+
exports.BackgroundGeolocationLocationCode = void 0;
|
|
80
|
+
(function (BackgroundGeolocationLocationCode) {
|
|
81
|
+
BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["PERMISSION_DENIED"] = 1] = "PERMISSION_DENIED";
|
|
82
|
+
BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["LOCATION_UNAVAILABLE"] = 2] = "LOCATION_UNAVAILABLE";
|
|
83
|
+
BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode["TIMEOUT"] = 3] = "TIMEOUT";
|
|
84
|
+
})(exports.BackgroundGeolocationLocationCode || (exports.BackgroundGeolocationLocationCode = {}));
|
|
85
|
+
/** Native provider strings. @since 1.0.0 */
|
|
86
|
+
exports.BackgroundGeolocationNativeProvider = void 0;
|
|
87
|
+
(function (BackgroundGeolocationNativeProvider) {
|
|
88
|
+
BackgroundGeolocationNativeProvider["gps"] = "gps";
|
|
89
|
+
BackgroundGeolocationNativeProvider["network"] = "network";
|
|
90
|
+
BackgroundGeolocationNativeProvider["passive"] = "passive";
|
|
91
|
+
BackgroundGeolocationNativeProvider["fused"] = "fused";
|
|
92
|
+
})(exports.BackgroundGeolocationNativeProvider || (exports.BackgroundGeolocationNativeProvider = {}));
|
|
93
|
+
/** Location provider IDs. @since 1.0.0 */
|
|
94
|
+
exports.BackgroundGeolocationLocationProvider = void 0;
|
|
95
|
+
(function (BackgroundGeolocationLocationProvider) {
|
|
96
|
+
BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["DISTANCE_FILTER_PROVIDER"] = 0] = "DISTANCE_FILTER_PROVIDER";
|
|
97
|
+
BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["ACTIVITY_PROVIDER"] = 1] = "ACTIVITY_PROVIDER";
|
|
98
|
+
BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider["RAW_PROVIDER"] = 2] = "RAW_PROVIDER";
|
|
99
|
+
})(exports.BackgroundGeolocationLocationProvider || (exports.BackgroundGeolocationLocationProvider = {}));
|
|
100
|
+
/** Authorization status. @since 1.0.0 */
|
|
101
|
+
exports.BackgroundGeolocationAuthorizationStatus = void 0;
|
|
102
|
+
(function (BackgroundGeolocationAuthorizationStatus) {
|
|
103
|
+
BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["NOT_AUTHORIZED"] = 0] = "NOT_AUTHORIZED";
|
|
104
|
+
BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["AUTHORIZED"] = 1] = "AUTHORIZED";
|
|
105
|
+
BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus["AUTHORIZED_FOREGROUND"] = 2] = "AUTHORIZED_FOREGROUND";
|
|
106
|
+
})(exports.BackgroundGeolocationAuthorizationStatus || (exports.BackgroundGeolocationAuthorizationStatus = {}));
|
|
107
|
+
/** Log levels. @since 1.0.0 */
|
|
108
|
+
exports.BackgroundGeolocationLogLevel = void 0;
|
|
109
|
+
(function (BackgroundGeolocationLogLevel) {
|
|
110
|
+
BackgroundGeolocationLogLevel["TRACE"] = "TRACE";
|
|
111
|
+
BackgroundGeolocationLogLevel["DEBUG"] = "DEBUG";
|
|
112
|
+
BackgroundGeolocationLogLevel["INFO"] = "INFO";
|
|
113
|
+
BackgroundGeolocationLogLevel["WARN"] = "WARN";
|
|
114
|
+
BackgroundGeolocationLogLevel["ERROR"] = "ERROR";
|
|
115
|
+
})(exports.BackgroundGeolocationLogLevel || (exports.BackgroundGeolocationLogLevel = {}));
|
|
116
|
+
/** Provider enum (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */
|
|
117
|
+
exports.BackgroundGeolocationProvider = void 0;
|
|
118
|
+
(function (BackgroundGeolocationProvider) {
|
|
119
|
+
BackgroundGeolocationProvider[BackgroundGeolocationProvider["ANDROID_DISTANCE_FILTER_PROVIDER"] = 0] = "ANDROID_DISTANCE_FILTER_PROVIDER";
|
|
120
|
+
BackgroundGeolocationProvider[BackgroundGeolocationProvider["ANDROID_ACTIVITY_PROVIDER"] = 1] = "ANDROID_ACTIVITY_PROVIDER";
|
|
121
|
+
BackgroundGeolocationProvider[BackgroundGeolocationProvider["RAW_PROVIDER"] = 2] = "RAW_PROVIDER";
|
|
122
|
+
})(exports.BackgroundGeolocationProvider || (exports.BackgroundGeolocationProvider = {}));
|
|
123
|
+
/** Desired accuracy in meters. @since 1.0.0 */
|
|
124
|
+
exports.BackgroundGeolocationAccuracy = void 0;
|
|
125
|
+
(function (BackgroundGeolocationAccuracy) {
|
|
126
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["HIGH"] = 0] = "HIGH";
|
|
127
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["MEDIUM"] = 100] = "MEDIUM";
|
|
128
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["LOW"] = 1000] = "LOW";
|
|
129
|
+
BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy["PASSIVE"] = 10000] = "PASSIVE";
|
|
130
|
+
})(exports.BackgroundGeolocationAccuracy || (exports.BackgroundGeolocationAccuracy = {}));
|
|
131
|
+
/** Mode for `switchMode`. @since 1.0.0 */
|
|
132
|
+
exports.BackgroundGeolocationMode = void 0;
|
|
133
|
+
(function (BackgroundGeolocationMode) {
|
|
134
|
+
BackgroundGeolocationMode[BackgroundGeolocationMode["BACKGROUND"] = 0] = "BACKGROUND";
|
|
135
|
+
BackgroundGeolocationMode[BackgroundGeolocationMode["FOREGROUND"] = 1] = "FOREGROUND";
|
|
136
|
+
})(exports.BackgroundGeolocationMode || (exports.BackgroundGeolocationMode = {}));
|
|
137
|
+
/** iOS activity type. @since 1.0.0 */
|
|
138
|
+
exports.BackgroundGeolocationIOSActivity = void 0;
|
|
139
|
+
(function (BackgroundGeolocationIOSActivity) {
|
|
140
|
+
BackgroundGeolocationIOSActivity["AutomotiveNavigation"] = "AutomotiveNavigation";
|
|
141
|
+
BackgroundGeolocationIOSActivity["OtherNavigation"] = "OtherNavigation";
|
|
142
|
+
BackgroundGeolocationIOSActivity["Fitness"] = "Fitness";
|
|
143
|
+
BackgroundGeolocationIOSActivity["Other"] = "Other";
|
|
144
|
+
})(exports.BackgroundGeolocationIOSActivity || (exports.BackgroundGeolocationIOSActivity = {}));
|
|
145
|
+
|
|
146
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
147
|
+
// Copyright (c) 2026 JosueLMM
|
|
148
|
+
const NativeBackgroundGeolocation = core.registerPlugin('BackgroundGeolocation', {
|
|
149
|
+
web: () => Promise.resolve().then(function () { return web; }).then((m) => new m.BackgroundGeolocationWeb()),
|
|
150
|
+
});
|
|
151
|
+
/**
|
|
152
|
+
* Public plugin. `headlessTask(fn)` serialises the callback before sending it
|
|
153
|
+
* to the native side; every other method is a 1:1 passthrough.
|
|
154
|
+
*/
|
|
155
|
+
const BackgroundGeolocation = new Proxy(NativeBackgroundGeolocation, {
|
|
156
|
+
get(target, prop, receiver) {
|
|
157
|
+
if (prop === 'headlessTask') {
|
|
158
|
+
return (task) => NativeBackgroundGeolocation.registerHeadlessTask({
|
|
159
|
+
task: task.toString(),
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
return Reflect.get(target, prop, receiver);
|
|
163
|
+
},
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
167
|
+
// Copyright (c) 2026 JosueLMM
|
|
168
|
+
//
|
|
169
|
+
// Browser fallback for @josuelmm/capacitor-background-geolocation.
|
|
170
|
+
// Uses navigator.geolocation. Real background tracking is not possible on the
|
|
171
|
+
// web platform — the service runs only while the page is alive.
|
|
172
|
+
const NOT_AVAILABLE = 'Not available on web.';
|
|
173
|
+
class BackgroundGeolocationWeb extends core.WebPlugin {
|
|
174
|
+
constructor() {
|
|
175
|
+
super(...arguments);
|
|
176
|
+
this.watchId = null;
|
|
177
|
+
this.config = {};
|
|
178
|
+
this.lastLocation = null;
|
|
179
|
+
}
|
|
180
|
+
// ---------------- Tracking control ----------------
|
|
181
|
+
async configure(options) {
|
|
182
|
+
this.config = Object.assign(Object.assign({}, this.config), options);
|
|
183
|
+
}
|
|
184
|
+
async start() {
|
|
185
|
+
if (!('geolocation' in navigator)) {
|
|
186
|
+
throw this.unavailable('Geolocation API is not available in this browser.');
|
|
187
|
+
}
|
|
188
|
+
if (this.watchId !== null) {
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
this.watchId = navigator.geolocation.watchPosition((pos) => {
|
|
192
|
+
const loc = this.toLocation(pos);
|
|
193
|
+
this.lastLocation = loc;
|
|
194
|
+
this.notifyListeners('location', loc);
|
|
195
|
+
}, (err) => {
|
|
196
|
+
this.notifyListeners('error', this.toError(err));
|
|
197
|
+
}, {
|
|
198
|
+
enableHighAccuracy: this.config.desiredAccuracy !== 'LOW',
|
|
199
|
+
maximumAge: 0,
|
|
200
|
+
timeout: 30000,
|
|
201
|
+
});
|
|
202
|
+
this.notifyListeners('start', {});
|
|
203
|
+
}
|
|
204
|
+
async stop() {
|
|
205
|
+
if (this.watchId !== null) {
|
|
206
|
+
navigator.geolocation.clearWatch(this.watchId);
|
|
207
|
+
this.watchId = null;
|
|
208
|
+
this.notifyListeners('stop', {});
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
async switchMode(_options) {
|
|
212
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
213
|
+
}
|
|
214
|
+
async checkStatus() {
|
|
215
|
+
return {
|
|
216
|
+
isRunning: this.watchId !== null,
|
|
217
|
+
locationServicesEnabled: 'geolocation' in navigator,
|
|
218
|
+
authorization: exports.AuthorizationStatus.AUTHORIZED_FOREGROUND,
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
// ---------------- Locations ----------------
|
|
222
|
+
getCurrentLocation(options) {
|
|
223
|
+
if (!('geolocation' in navigator)) {
|
|
224
|
+
throw this.unavailable('Geolocation API is not available in this browser.');
|
|
225
|
+
}
|
|
226
|
+
return new Promise((resolve, reject) => {
|
|
227
|
+
var _a, _b, _c;
|
|
228
|
+
navigator.geolocation.getCurrentPosition((pos) => resolve(this.toLocation(pos)), (err) => reject(this.toError(err)), {
|
|
229
|
+
enableHighAccuracy: (_a = options === null || options === void 0 ? void 0 : options.enableHighAccuracy) !== null && _a !== void 0 ? _a : true,
|
|
230
|
+
maximumAge: (_b = options === null || options === void 0 ? void 0 : options.maximumAge) !== null && _b !== void 0 ? _b : 0,
|
|
231
|
+
timeout: (_c = options === null || options === void 0 ? void 0 : options.timeout) !== null && _c !== void 0 ? _c : 30000,
|
|
232
|
+
});
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
async getStationaryLocation() {
|
|
236
|
+
return null;
|
|
237
|
+
}
|
|
238
|
+
async getLocations() {
|
|
239
|
+
return { locations: [] };
|
|
240
|
+
}
|
|
241
|
+
async getValidLocations() {
|
|
242
|
+
return { locations: [] };
|
|
243
|
+
}
|
|
244
|
+
async getValidLocationsAndDelete() {
|
|
245
|
+
return { locations: [] };
|
|
246
|
+
}
|
|
247
|
+
async deleteLocation(_options) {
|
|
248
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
249
|
+
}
|
|
250
|
+
async deleteAllLocations() {
|
|
251
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
252
|
+
}
|
|
253
|
+
// ---------------- Sync queue ----------------
|
|
254
|
+
async forceSync() {
|
|
255
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
256
|
+
}
|
|
257
|
+
async clearSync() {
|
|
258
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
259
|
+
}
|
|
260
|
+
async getPendingSyncCount() {
|
|
261
|
+
return { count: 0 };
|
|
262
|
+
}
|
|
263
|
+
// ---------------- Sessions ----------------
|
|
264
|
+
async startSession() {
|
|
265
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
266
|
+
}
|
|
267
|
+
async getSessionLocations() {
|
|
268
|
+
return { locations: [] };
|
|
269
|
+
}
|
|
270
|
+
async clearSession() {
|
|
271
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
272
|
+
}
|
|
273
|
+
async getSessionLocationsCount() {
|
|
274
|
+
return { count: 0 };
|
|
275
|
+
}
|
|
276
|
+
// ---------------- Diagnostics & OEMs ----------------
|
|
277
|
+
async getDiagnostics() {
|
|
278
|
+
var _a, _b;
|
|
279
|
+
return {
|
|
280
|
+
isRunning: this.watchId !== null,
|
|
281
|
+
locationServicesEnabled: 'geolocation' in navigator,
|
|
282
|
+
lastLocationAt: (_b = (_a = this.lastLocation) === null || _a === void 0 ? void 0 : _a.time) !== null && _b !== void 0 ? _b : null,
|
|
283
|
+
manufacturer: 'web',
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
async isIgnoringBatteryOptimizations() {
|
|
287
|
+
return { whitelisted: true };
|
|
288
|
+
}
|
|
289
|
+
async requestIgnoreBatteryOptimizations() {
|
|
290
|
+
return { whitelisted: true };
|
|
291
|
+
}
|
|
292
|
+
async openBatterySettings() {
|
|
293
|
+
/* no-op */
|
|
294
|
+
}
|
|
295
|
+
async openAutoStartSettings() {
|
|
296
|
+
return { opened: false, manufacturer: 'web', screen: '' };
|
|
297
|
+
}
|
|
298
|
+
async getManufacturerHelp() {
|
|
299
|
+
return { manufacturer: 'web', steps: [] };
|
|
300
|
+
}
|
|
301
|
+
async getPluginVersion() {
|
|
302
|
+
return { version: '1.0.0' };
|
|
303
|
+
}
|
|
304
|
+
// ---------------- Permissions ----------------
|
|
305
|
+
async checkPermissions() {
|
|
306
|
+
const perms = navigator
|
|
307
|
+
.permissions;
|
|
308
|
+
if (perms === null || perms === void 0 ? void 0 : perms.query) {
|
|
309
|
+
try {
|
|
310
|
+
const result = await perms.query({ name: 'geolocation' });
|
|
311
|
+
return { location: result.state };
|
|
312
|
+
}
|
|
313
|
+
catch (_a) {
|
|
314
|
+
/* fall through to probe */
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
return { location: 'prompt' };
|
|
318
|
+
}
|
|
319
|
+
async requestPermissions() {
|
|
320
|
+
if (!('geolocation' in navigator)) {
|
|
321
|
+
return { location: 'denied' };
|
|
322
|
+
}
|
|
323
|
+
return new Promise((resolve) => {
|
|
324
|
+
navigator.geolocation.getCurrentPosition(() => resolve({ location: 'granted' }), (err) => {
|
|
325
|
+
resolve({
|
|
326
|
+
location: err.code === err.PERMISSION_DENIED ? 'denied' : 'prompt',
|
|
327
|
+
});
|
|
328
|
+
}, { enableHighAccuracy: false, maximumAge: 60000, timeout: 5000 });
|
|
329
|
+
});
|
|
330
|
+
}
|
|
331
|
+
async requestBackgroundLocationPermission() {
|
|
332
|
+
return { granted: true, notRequired: true };
|
|
333
|
+
}
|
|
334
|
+
async requestActivityRecognitionPermission() {
|
|
335
|
+
return { granted: true, notRequired: true };
|
|
336
|
+
}
|
|
337
|
+
async requestNotificationPermission() {
|
|
338
|
+
if (typeof Notification === 'undefined') {
|
|
339
|
+
return { granted: true, notRequired: true };
|
|
340
|
+
}
|
|
341
|
+
if (Notification.permission === 'granted') {
|
|
342
|
+
return { granted: true };
|
|
343
|
+
}
|
|
344
|
+
try {
|
|
345
|
+
const result = await Notification.requestPermission();
|
|
346
|
+
return result === 'granted'
|
|
347
|
+
? { granted: true }
|
|
348
|
+
: { granted: false, denied: ['notifications'] };
|
|
349
|
+
}
|
|
350
|
+
catch (_a) {
|
|
351
|
+
return { granted: false, denied: ['notifications'] };
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
async showAppSettings() {
|
|
355
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
356
|
+
}
|
|
357
|
+
async openSettings() {
|
|
358
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
359
|
+
}
|
|
360
|
+
async showLocationSettings() {
|
|
361
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
362
|
+
}
|
|
363
|
+
// ---------------- Tasks ----------------
|
|
364
|
+
async startTask() {
|
|
365
|
+
return { taskKey: 0 };
|
|
366
|
+
}
|
|
367
|
+
async endTask(_options) {
|
|
368
|
+
/* no-op */
|
|
369
|
+
}
|
|
370
|
+
async triggerSOS(payload) {
|
|
371
|
+
var _a;
|
|
372
|
+
this.notifyListeners('sos', Object.assign(Object.assign({}, (payload !== null && payload !== void 0 ? payload : {})), { location: (_a = this.lastLocation) !== null && _a !== void 0 ? _a : undefined }));
|
|
373
|
+
}
|
|
374
|
+
async headlessTask() {
|
|
375
|
+
throw this.unimplemented(NOT_AVAILABLE);
|
|
376
|
+
}
|
|
377
|
+
// ---------------- Config & logs ----------------
|
|
378
|
+
async getConfig() {
|
|
379
|
+
return Object.assign({}, this.config);
|
|
380
|
+
}
|
|
381
|
+
async getLogEntries(_options) {
|
|
382
|
+
return { entries: [] };
|
|
383
|
+
}
|
|
384
|
+
// ---------------- Helpers ----------------
|
|
385
|
+
toLocation(pos) {
|
|
386
|
+
var _a, _b, _c, _d;
|
|
387
|
+
const c = pos.coords;
|
|
388
|
+
return {
|
|
389
|
+
id: pos.timestamp,
|
|
390
|
+
provider: 'gps',
|
|
391
|
+
locationProvider: 0,
|
|
392
|
+
time: pos.timestamp,
|
|
393
|
+
latitude: c.latitude,
|
|
394
|
+
longitude: c.longitude,
|
|
395
|
+
accuracy: (_a = c.accuracy) !== null && _a !== void 0 ? _a : 0,
|
|
396
|
+
speed: (_b = c.speed) !== null && _b !== void 0 ? _b : 0,
|
|
397
|
+
altitude: (_c = c.altitude) !== null && _c !== void 0 ? _c : 0,
|
|
398
|
+
bearing: (_d = c.heading) !== null && _d !== void 0 ? _d : 0,
|
|
399
|
+
};
|
|
400
|
+
}
|
|
401
|
+
toError(err) {
|
|
402
|
+
return { code: err.code, message: err.message };
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
var web = /*#__PURE__*/Object.freeze({
|
|
407
|
+
__proto__: null,
|
|
408
|
+
BackgroundGeolocationWeb: BackgroundGeolocationWeb
|
|
409
|
+
});
|
|
410
|
+
|
|
411
|
+
exports.AccuracyValue = AccuracyValue;
|
|
412
|
+
exports.BackgroundGeolocation = BackgroundGeolocation;
|
|
413
|
+
exports.LocationProviderValue = LocationProviderValue;
|
|
414
|
+
|
|
415
|
+
return exports;
|
|
416
|
+
|
|
417
|
+
})({}, capacitorExports);
|
|
418
|
+
//# sourceMappingURL=plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/definitions.js","esm/index.js","esm/web.js"],"sourcesContent":["// SPDX-License-Identifier: Apache-2.0\n// Copyright (c) 2026 JosueLMM\n//\n// Capacitor plugin definitions for @josuelmm/capacitor-background-geolocation.\n// Mirrors @josuelmm/cordova-background-geolocation's www/BackgroundGeolocation.d.ts\n// 1:1 for v1.0.0 parity. Cordova success/fail callbacks are collapsed into\n// Promises; `on(eventName, cb)` becomes Capacitor's `addListener` overloads.\n/**\n * Numeric mapping of {@link LocationProvider} matching the Cordova plugin.\n *\n * @since 1.0.0\n */\nexport const LocationProviderValue = {\n DISTANCE_FILTER: 0,\n ACTIVITY_PROVIDER: 1,\n RAW_PROVIDER: 2,\n};\n/**\n * Meters mapping of {@link Accuracy} (matches the Cordova plugin's `AccuracyLevel`).\n *\n * @since 1.0.0\n */\nexport const AccuracyValue = {\n HIGH: 0,\n MEDIUM: 100,\n LOW: 1000,\n PASSIVE: 10000,\n};\n/**\n * Service authorization state, mirroring the Cordova plugin constants.\n *\n * @since 1.0.0\n */\nexport var AuthorizationStatus;\n(function (AuthorizationStatus) {\n AuthorizationStatus[AuthorizationStatus[\"NOT_AUTHORIZED\"] = 0] = \"NOT_AUTHORIZED\";\n AuthorizationStatus[AuthorizationStatus[\"AUTHORIZED\"] = 1] = \"AUTHORIZED\";\n AuthorizationStatus[AuthorizationStatus[\"AUTHORIZED_FOREGROUND\"] = 2] = \"AUTHORIZED_FOREGROUND\";\n})(AuthorizationStatus || (AuthorizationStatus = {}));\n// ---------------------------------------------------------------------------\n// @awesome-cordova-plugins compatibility re-exports\n// ---------------------------------------------------------------------------\n/** Event name strings (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */\nexport var BackgroundGeolocationEvents;\n(function (BackgroundGeolocationEvents) {\n BackgroundGeolocationEvents[\"http_authorization\"] = \"http_authorization\";\n BackgroundGeolocationEvents[\"abort_requested\"] = \"abort_requested\";\n BackgroundGeolocationEvents[\"background\"] = \"background\";\n BackgroundGeolocationEvents[\"foreground\"] = \"foreground\";\n BackgroundGeolocationEvents[\"authorization\"] = \"authorization\";\n BackgroundGeolocationEvents[\"error\"] = \"error\";\n BackgroundGeolocationEvents[\"stop\"] = \"stop\";\n BackgroundGeolocationEvents[\"start\"] = \"start\";\n BackgroundGeolocationEvents[\"activity\"] = \"activity\";\n BackgroundGeolocationEvents[\"stationary\"] = \"stationary\";\n BackgroundGeolocationEvents[\"location\"] = \"location\";\n BackgroundGeolocationEvents[\"heartbeat\"] = \"heartbeat\";\n BackgroundGeolocationEvents[\"syncStart\"] = \"syncStart\";\n BackgroundGeolocationEvents[\"syncProgress\"] = \"syncProgress\";\n BackgroundGeolocationEvents[\"syncSuccess\"] = \"syncSuccess\";\n BackgroundGeolocationEvents[\"syncError\"] = \"syncError\";\n BackgroundGeolocationEvents[\"tripStart\"] = \"tripStart\";\n BackgroundGeolocationEvents[\"tripEnd\"] = \"tripEnd\";\n BackgroundGeolocationEvents[\"moving\"] = \"moving\";\n BackgroundGeolocationEvents[\"stopped\"] = \"stopped\";\n BackgroundGeolocationEvents[\"speeding\"] = \"speeding\";\n BackgroundGeolocationEvents[\"providerChange\"] = \"providerChange\";\n BackgroundGeolocationEvents[\"sos\"] = \"sos\";\n BackgroundGeolocationEvents[\"hardBrake\"] = \"hardBrake\";\n BackgroundGeolocationEvents[\"rapidAcceleration\"] = \"rapidAcceleration\";\n BackgroundGeolocationEvents[\"sharpTurn\"] = \"sharpTurn\";\n BackgroundGeolocationEvents[\"possibleCrash\"] = \"possibleCrash\";\n BackgroundGeolocationEvents[\"phoneUsageWhileDriving\"] = \"phoneUsageWhileDriving\";\n})(BackgroundGeolocationEvents || (BackgroundGeolocationEvents = {}));\n/** Location error codes. @since 1.0.0 */\nexport var BackgroundGeolocationLocationCode;\n(function (BackgroundGeolocationLocationCode) {\n BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode[\"PERMISSION_DENIED\"] = 1] = \"PERMISSION_DENIED\";\n BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode[\"LOCATION_UNAVAILABLE\"] = 2] = \"LOCATION_UNAVAILABLE\";\n BackgroundGeolocationLocationCode[BackgroundGeolocationLocationCode[\"TIMEOUT\"] = 3] = \"TIMEOUT\";\n})(BackgroundGeolocationLocationCode || (BackgroundGeolocationLocationCode = {}));\n/** Native provider strings. @since 1.0.0 */\nexport var BackgroundGeolocationNativeProvider;\n(function (BackgroundGeolocationNativeProvider) {\n BackgroundGeolocationNativeProvider[\"gps\"] = \"gps\";\n BackgroundGeolocationNativeProvider[\"network\"] = \"network\";\n BackgroundGeolocationNativeProvider[\"passive\"] = \"passive\";\n BackgroundGeolocationNativeProvider[\"fused\"] = \"fused\";\n})(BackgroundGeolocationNativeProvider || (BackgroundGeolocationNativeProvider = {}));\n/** Location provider IDs. @since 1.0.0 */\nexport var BackgroundGeolocationLocationProvider;\n(function (BackgroundGeolocationLocationProvider) {\n BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider[\"DISTANCE_FILTER_PROVIDER\"] = 0] = \"DISTANCE_FILTER_PROVIDER\";\n BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider[\"ACTIVITY_PROVIDER\"] = 1] = \"ACTIVITY_PROVIDER\";\n BackgroundGeolocationLocationProvider[BackgroundGeolocationLocationProvider[\"RAW_PROVIDER\"] = 2] = \"RAW_PROVIDER\";\n})(BackgroundGeolocationLocationProvider || (BackgroundGeolocationLocationProvider = {}));\n/** Authorization status. @since 1.0.0 */\nexport var BackgroundGeolocationAuthorizationStatus;\n(function (BackgroundGeolocationAuthorizationStatus) {\n BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus[\"NOT_AUTHORIZED\"] = 0] = \"NOT_AUTHORIZED\";\n BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus[\"AUTHORIZED\"] = 1] = \"AUTHORIZED\";\n BackgroundGeolocationAuthorizationStatus[BackgroundGeolocationAuthorizationStatus[\"AUTHORIZED_FOREGROUND\"] = 2] = \"AUTHORIZED_FOREGROUND\";\n})(BackgroundGeolocationAuthorizationStatus || (BackgroundGeolocationAuthorizationStatus = {}));\n/** Log levels. @since 1.0.0 */\nexport var BackgroundGeolocationLogLevel;\n(function (BackgroundGeolocationLogLevel) {\n BackgroundGeolocationLogLevel[\"TRACE\"] = \"TRACE\";\n BackgroundGeolocationLogLevel[\"DEBUG\"] = \"DEBUG\";\n BackgroundGeolocationLogLevel[\"INFO\"] = \"INFO\";\n BackgroundGeolocationLogLevel[\"WARN\"] = \"WARN\";\n BackgroundGeolocationLogLevel[\"ERROR\"] = \"ERROR\";\n})(BackgroundGeolocationLogLevel || (BackgroundGeolocationLogLevel = {}));\n/** Provider enum (compatibility with `@awesome-cordova-plugins` style). @since 1.0.0 */\nexport var BackgroundGeolocationProvider;\n(function (BackgroundGeolocationProvider) {\n BackgroundGeolocationProvider[BackgroundGeolocationProvider[\"ANDROID_DISTANCE_FILTER_PROVIDER\"] = 0] = \"ANDROID_DISTANCE_FILTER_PROVIDER\";\n BackgroundGeolocationProvider[BackgroundGeolocationProvider[\"ANDROID_ACTIVITY_PROVIDER\"] = 1] = \"ANDROID_ACTIVITY_PROVIDER\";\n BackgroundGeolocationProvider[BackgroundGeolocationProvider[\"RAW_PROVIDER\"] = 2] = \"RAW_PROVIDER\";\n})(BackgroundGeolocationProvider || (BackgroundGeolocationProvider = {}));\n/** Desired accuracy in meters. @since 1.0.0 */\nexport var BackgroundGeolocationAccuracy;\n(function (BackgroundGeolocationAccuracy) {\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"HIGH\"] = 0] = \"HIGH\";\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"MEDIUM\"] = 100] = \"MEDIUM\";\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"LOW\"] = 1000] = \"LOW\";\n BackgroundGeolocationAccuracy[BackgroundGeolocationAccuracy[\"PASSIVE\"] = 10000] = \"PASSIVE\";\n})(BackgroundGeolocationAccuracy || (BackgroundGeolocationAccuracy = {}));\n/** Mode for `switchMode`. @since 1.0.0 */\nexport var BackgroundGeolocationMode;\n(function (BackgroundGeolocationMode) {\n BackgroundGeolocationMode[BackgroundGeolocationMode[\"BACKGROUND\"] = 0] = \"BACKGROUND\";\n BackgroundGeolocationMode[BackgroundGeolocationMode[\"FOREGROUND\"] = 1] = \"FOREGROUND\";\n})(BackgroundGeolocationMode || (BackgroundGeolocationMode = {}));\n/** iOS activity type. @since 1.0.0 */\nexport var BackgroundGeolocationIOSActivity;\n(function (BackgroundGeolocationIOSActivity) {\n BackgroundGeolocationIOSActivity[\"AutomotiveNavigation\"] = \"AutomotiveNavigation\";\n BackgroundGeolocationIOSActivity[\"OtherNavigation\"] = \"OtherNavigation\";\n BackgroundGeolocationIOSActivity[\"Fitness\"] = \"Fitness\";\n BackgroundGeolocationIOSActivity[\"Other\"] = \"Other\";\n})(BackgroundGeolocationIOSActivity || (BackgroundGeolocationIOSActivity = {}));\n//# sourceMappingURL=definitions.js.map","// SPDX-License-Identifier: Apache-2.0\n// Copyright (c) 2026 JosueLMM\nimport { registerPlugin } from '@capacitor/core';\nconst NativeBackgroundGeolocation = registerPlugin('BackgroundGeolocation', {\n web: () => import('./web').then((m) => new m.BackgroundGeolocationWeb()),\n});\n/**\n * Public plugin. `headlessTask(fn)` serialises the callback before sending it\n * to the native side; every other method is a 1:1 passthrough.\n */\nconst BackgroundGeolocation = new Proxy(NativeBackgroundGeolocation, {\n get(target, prop, receiver) {\n if (prop === 'headlessTask') {\n return (task) => NativeBackgroundGeolocation.registerHeadlessTask({\n task: task.toString(),\n });\n }\n return Reflect.get(target, prop, receiver);\n },\n});\nexport * from './definitions';\nexport { BackgroundGeolocation };\n//# sourceMappingURL=index.js.map","// SPDX-License-Identifier: Apache-2.0\n// Copyright (c) 2026 JosueLMM\n//\n// Browser fallback for @josuelmm/capacitor-background-geolocation.\n// Uses navigator.geolocation. Real background tracking is not possible on the\n// web platform — the service runs only while the page is alive.\nimport { WebPlugin } from '@capacitor/core';\nimport { AuthorizationStatus } from './definitions';\nconst NOT_AVAILABLE = 'Not available on web.';\nexport class BackgroundGeolocationWeb extends WebPlugin {\n constructor() {\n super(...arguments);\n this.watchId = null;\n this.config = {};\n this.lastLocation = null;\n }\n // ---------------- Tracking control ----------------\n async configure(options) {\n this.config = Object.assign(Object.assign({}, this.config), options);\n }\n async start() {\n if (!('geolocation' in navigator)) {\n throw this.unavailable('Geolocation API is not available in this browser.');\n }\n if (this.watchId !== null) {\n return;\n }\n this.watchId = navigator.geolocation.watchPosition((pos) => {\n const loc = this.toLocation(pos);\n this.lastLocation = loc;\n this.notifyListeners('location', loc);\n }, (err) => {\n this.notifyListeners('error', this.toError(err));\n }, {\n enableHighAccuracy: this.config.desiredAccuracy !== 'LOW',\n maximumAge: 0,\n timeout: 30000,\n });\n this.notifyListeners('start', {});\n }\n async stop() {\n if (this.watchId !== null) {\n navigator.geolocation.clearWatch(this.watchId);\n this.watchId = null;\n this.notifyListeners('stop', {});\n }\n }\n async switchMode(_options) {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async checkStatus() {\n return {\n isRunning: this.watchId !== null,\n locationServicesEnabled: 'geolocation' in navigator,\n authorization: AuthorizationStatus.AUTHORIZED_FOREGROUND,\n };\n }\n // ---------------- Locations ----------------\n getCurrentLocation(options) {\n if (!('geolocation' in navigator)) {\n throw this.unavailable('Geolocation API is not available in this browser.');\n }\n return new Promise((resolve, reject) => {\n var _a, _b, _c;\n navigator.geolocation.getCurrentPosition((pos) => resolve(this.toLocation(pos)), (err) => reject(this.toError(err)), {\n enableHighAccuracy: (_a = options === null || options === void 0 ? void 0 : options.enableHighAccuracy) !== null && _a !== void 0 ? _a : true,\n maximumAge: (_b = options === null || options === void 0 ? void 0 : options.maximumAge) !== null && _b !== void 0 ? _b : 0,\n timeout: (_c = options === null || options === void 0 ? void 0 : options.timeout) !== null && _c !== void 0 ? _c : 30000,\n });\n });\n }\n async getStationaryLocation() {\n return null;\n }\n async getLocations() {\n return { locations: [] };\n }\n async getValidLocations() {\n return { locations: [] };\n }\n async getValidLocationsAndDelete() {\n return { locations: [] };\n }\n async deleteLocation(_options) {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async deleteAllLocations() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n // ---------------- Sync queue ----------------\n async forceSync() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async clearSync() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async getPendingSyncCount() {\n return { count: 0 };\n }\n // ---------------- Sessions ----------------\n async startSession() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async getSessionLocations() {\n return { locations: [] };\n }\n async clearSession() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async getSessionLocationsCount() {\n return { count: 0 };\n }\n // ---------------- Diagnostics & OEMs ----------------\n async getDiagnostics() {\n var _a, _b;\n return {\n isRunning: this.watchId !== null,\n locationServicesEnabled: 'geolocation' in navigator,\n lastLocationAt: (_b = (_a = this.lastLocation) === null || _a === void 0 ? void 0 : _a.time) !== null && _b !== void 0 ? _b : null,\n manufacturer: 'web',\n };\n }\n async isIgnoringBatteryOptimizations() {\n return { whitelisted: true };\n }\n async requestIgnoreBatteryOptimizations() {\n return { whitelisted: true };\n }\n async openBatterySettings() {\n /* no-op */\n }\n async openAutoStartSettings() {\n return { opened: false, manufacturer: 'web', screen: '' };\n }\n async getManufacturerHelp() {\n return { manufacturer: 'web', steps: [] };\n }\n async getPluginVersion() {\n return { version: '1.0.0' };\n }\n // ---------------- Permissions ----------------\n async checkPermissions() {\n const perms = navigator\n .permissions;\n if (perms === null || perms === void 0 ? void 0 : perms.query) {\n try {\n const result = await perms.query({ name: 'geolocation' });\n return { location: result.state };\n }\n catch (_a) {\n /* fall through to probe */\n }\n }\n return { location: 'prompt' };\n }\n async requestPermissions() {\n if (!('geolocation' in navigator)) {\n return { location: 'denied' };\n }\n return new Promise((resolve) => {\n navigator.geolocation.getCurrentPosition(() => resolve({ location: 'granted' }), (err) => {\n resolve({\n location: err.code === err.PERMISSION_DENIED ? 'denied' : 'prompt',\n });\n }, { enableHighAccuracy: false, maximumAge: 60000, timeout: 5000 });\n });\n }\n async requestBackgroundLocationPermission() {\n return { granted: true, notRequired: true };\n }\n async requestActivityRecognitionPermission() {\n return { granted: true, notRequired: true };\n }\n async requestNotificationPermission() {\n if (typeof Notification === 'undefined') {\n return { granted: true, notRequired: true };\n }\n if (Notification.permission === 'granted') {\n return { granted: true };\n }\n try {\n const result = await Notification.requestPermission();\n return result === 'granted'\n ? { granted: true }\n : { granted: false, denied: ['notifications'] };\n }\n catch (_a) {\n return { granted: false, denied: ['notifications'] };\n }\n }\n async showAppSettings() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async openSettings() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n async showLocationSettings() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n // ---------------- Tasks ----------------\n async startTask() {\n return { taskKey: 0 };\n }\n async endTask(_options) {\n /* no-op */\n }\n async triggerSOS(payload) {\n var _a;\n this.notifyListeners('sos', Object.assign(Object.assign({}, (payload !== null && payload !== void 0 ? payload : {})), { location: (_a = this.lastLocation) !== null && _a !== void 0 ? _a : undefined }));\n }\n async headlessTask() {\n throw this.unimplemented(NOT_AVAILABLE);\n }\n // ---------------- Config & logs ----------------\n async getConfig() {\n return Object.assign({}, this.config);\n }\n async getLogEntries(_options) {\n return { entries: [] };\n }\n // ---------------- Helpers ----------------\n toLocation(pos) {\n var _a, _b, _c, _d;\n const c = pos.coords;\n return {\n id: pos.timestamp,\n provider: 'gps',\n locationProvider: 0,\n time: pos.timestamp,\n latitude: c.latitude,\n longitude: c.longitude,\n accuracy: (_a = c.accuracy) !== null && _a !== void 0 ? _a : 0,\n speed: (_b = c.speed) !== null && _b !== void 0 ? _b : 0,\n altitude: (_c = c.altitude) !== null && _c !== void 0 ? _c : 0,\n bearing: (_d = c.heading) !== null && _d !== void 0 ? _d : 0,\n };\n }\n toError(err) {\n return { code: err.code, message: err.message };\n }\n}\n//# sourceMappingURL=web.js.map"],"names":["AuthorizationStatus","BackgroundGeolocationEvents","BackgroundGeolocationLocationCode","BackgroundGeolocationNativeProvider","BackgroundGeolocationLocationProvider","BackgroundGeolocationAuthorizationStatus","BackgroundGeolocationLogLevel","BackgroundGeolocationProvider","BackgroundGeolocationAccuracy","BackgroundGeolocationMode","BackgroundGeolocationIOSActivity","registerPlugin","WebPlugin"],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (c) 2026 JosueLMM
|
|
3
|
+
|
|
4
|
+
#ifndef BackgroundGeolocationPlugin_Bridging_Header_h
|
|
5
|
+
#define BackgroundGeolocationPlugin_Bridging_Header_h
|
|
6
|
+
|
|
7
|
+
#import "MAURBackgroundGeolocationFacade.h"
|
|
8
|
+
#import "MAURConfig.h"
|
|
9
|
+
#import "MAURLocation.h"
|
|
10
|
+
#import "MAURActivity.h"
|
|
11
|
+
#import "MAURProviderDelegate.h"
|
|
12
|
+
#import "MAURLocationContract.h"
|
|
13
|
+
#import "MAURBackgroundTaskManager.h"
|
|
14
|
+
#import "MAURSQLiteLocationDAO.h"
|
|
15
|
+
#import "MAURBackgroundSync.h"
|
|
16
|
+
#import "MAURLogReader.h"
|
|
17
|
+
|
|
18
|
+
#endif /* BackgroundGeolocationPlugin_Bridging_Header_h */
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
// Copyright (c) 2026 JosueLMM
|
|
3
|
+
|
|
4
|
+
#import <Foundation/Foundation.h>
|
|
5
|
+
#import <Capacitor/Capacitor.h>
|
|
6
|
+
|
|
7
|
+
CAP_PLUGIN(BackgroundGeolocationPlugin, "BackgroundGeolocation",
|
|
8
|
+
CAP_PLUGIN_METHOD(configure, CAPPluginReturnPromise);
|
|
9
|
+
CAP_PLUGIN_METHOD(start, CAPPluginReturnPromise);
|
|
10
|
+
CAP_PLUGIN_METHOD(stop, CAPPluginReturnPromise);
|
|
11
|
+
CAP_PLUGIN_METHOD(getCurrentLocation, CAPPluginReturnPromise);
|
|
12
|
+
CAP_PLUGIN_METHOD(getStationaryLocation, CAPPluginReturnPromise);
|
|
13
|
+
CAP_PLUGIN_METHOD(getLocations, CAPPluginReturnPromise);
|
|
14
|
+
CAP_PLUGIN_METHOD(getValidLocations, CAPPluginReturnPromise);
|
|
15
|
+
CAP_PLUGIN_METHOD(getValidLocationsAndDelete, CAPPluginReturnPromise);
|
|
16
|
+
CAP_PLUGIN_METHOD(getConfig, CAPPluginReturnPromise);
|
|
17
|
+
CAP_PLUGIN_METHOD(deleteLocation, CAPPluginReturnPromise);
|
|
18
|
+
CAP_PLUGIN_METHOD(deleteAllLocations, CAPPluginReturnPromise);
|
|
19
|
+
CAP_PLUGIN_METHOD(isLocationEnabled, CAPPluginReturnPromise);
|
|
20
|
+
CAP_PLUGIN_METHOD(showAppSettings, CAPPluginReturnPromise);
|
|
21
|
+
CAP_PLUGIN_METHOD(showLocationSettings, CAPPluginReturnPromise);
|
|
22
|
+
CAP_PLUGIN_METHOD(openSettings, CAPPluginReturnPromise);
|
|
23
|
+
CAP_PLUGIN_METHOD(watchLocationMode, CAPPluginReturnPromise);
|
|
24
|
+
CAP_PLUGIN_METHOD(stopWatchingLocationMode, CAPPluginReturnPromise);
|
|
25
|
+
CAP_PLUGIN_METHOD(getLogEntries, CAPPluginReturnPromise);
|
|
26
|
+
CAP_PLUGIN_METHOD(checkStatus, CAPPluginReturnPromise);
|
|
27
|
+
CAP_PLUGIN_METHOD(getDiagnostics, CAPPluginReturnPromise);
|
|
28
|
+
CAP_PLUGIN_METHOD(getPluginVersion, CAPPluginReturnPromise);
|
|
29
|
+
CAP_PLUGIN_METHOD(switchMode, CAPPluginReturnPromise);
|
|
30
|
+
CAP_PLUGIN_METHOD(startTask, CAPPluginReturnPromise);
|
|
31
|
+
CAP_PLUGIN_METHOD(endTask, CAPPluginReturnPromise);
|
|
32
|
+
CAP_PLUGIN_METHOD(forceSync, CAPPluginReturnPromise);
|
|
33
|
+
CAP_PLUGIN_METHOD(clearSync, CAPPluginReturnPromise);
|
|
34
|
+
CAP_PLUGIN_METHOD(getPendingSyncCount, CAPPluginReturnPromise);
|
|
35
|
+
CAP_PLUGIN_METHOD(startSession, CAPPluginReturnPromise);
|
|
36
|
+
CAP_PLUGIN_METHOD(clearSession, CAPPluginReturnPromise);
|
|
37
|
+
CAP_PLUGIN_METHOD(getSessionLocations, CAPPluginReturnPromise);
|
|
38
|
+
CAP_PLUGIN_METHOD(getSessionLocationsCount, CAPPluginReturnPromise);
|
|
39
|
+
CAP_PLUGIN_METHOD(triggerSOS, CAPPluginReturnPromise);
|
|
40
|
+
CAP_PLUGIN_METHOD(isIgnoringBatteryOptimizations, CAPPluginReturnPromise);
|
|
41
|
+
CAP_PLUGIN_METHOD(requestIgnoreBatteryOptimizations, CAPPluginReturnPromise);
|
|
42
|
+
CAP_PLUGIN_METHOD(openBatterySettings, CAPPluginReturnPromise);
|
|
43
|
+
CAP_PLUGIN_METHOD(openAutoStartSettings, CAPPluginReturnPromise);
|
|
44
|
+
CAP_PLUGIN_METHOD(getManufacturerHelp, CAPPluginReturnPromise);
|
|
45
|
+
CAP_PLUGIN_METHOD(requestBackgroundLocationPermission, CAPPluginReturnPromise);
|
|
46
|
+
CAP_PLUGIN_METHOD(requestActivityRecognitionPermission, CAPPluginReturnPromise);
|
|
47
|
+
CAP_PLUGIN_METHOD(requestNotificationPermission, CAPPluginReturnPromise);
|
|
48
|
+
CAP_PLUGIN_METHOD(checkPermissions, CAPPluginReturnPromise);
|
|
49
|
+
CAP_PLUGIN_METHOD(requestPermissions, CAPPluginReturnPromise);
|
|
50
|
+
CAP_PLUGIN_METHOD(registerHeadlessTask, CAPPluginReturnPromise);
|
|
51
|
+
CAP_PLUGIN_METHOD(removeAllListeners, CAPPluginReturnPromise);
|
|
52
|
+
)
|