react-native-nitro-background-geolocation 0.1.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/NitroBackgroundGeolocation.podspec +29 -0
- package/android/CMakeLists.txt +24 -0
- package/android/build.gradle +133 -0
- package/android/src/main/AndroidManifest.xml +65 -0
- package/android/src/main/cpp/cpp-adapter.cpp +11 -0
- package/android/src/main/java/com/margelo/nitro/nitrobackgroundgeolocation/ConfigMapper.kt +332 -0
- package/android/src/main/java/com/margelo/nitro/nitrobackgroundgeolocation/HeadlessTaskRegistry.kt +23 -0
- package/android/src/main/java/com/margelo/nitro/nitrobackgroundgeolocation/HeadlessTaskService.kt +66 -0
- package/android/src/main/java/com/margelo/nitro/nitrobackgroundgeolocation/NitroBackgroundGeolocation.kt +538 -0
- package/android/src/main/java/com/margelo/nitro/nitrobackgroundgeolocation/NitroBackgroundGeolocationPackage.kt +22 -0
- package/android/src/main/java/com/margelo/nitro/nitrobackgroundgeolocation/ReactNativeHeadlessTaskRunner.kt +62 -0
- package/android/src/main/java/com/marianhello/bgloc/BackgroundGeolocationFacade.java +542 -0
- package/android/src/main/java/com/marianhello/bgloc/BootCompletedReceiver.java +59 -0
- package/android/src/main/java/com/marianhello/bgloc/Config.java +652 -0
- package/android/src/main/java/com/marianhello/bgloc/ConnectivityListener.java +5 -0
- package/android/src/main/java/com/marianhello/bgloc/HttpPostService.java +168 -0
- package/android/src/main/java/com/marianhello/bgloc/LocationManager.java +138 -0
- package/android/src/main/java/com/marianhello/bgloc/PluginDelegate.java +19 -0
- package/android/src/main/java/com/marianhello/bgloc/PluginException.java +38 -0
- package/android/src/main/java/com/marianhello/bgloc/PostLocationTask.java +186 -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 +994 -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 +22 -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 +65 -0
- package/android/src/main/java/com/marianhello/bgloc/data/LocationTransform.java +19 -0
- package/android/src/main/java/com/marianhello/bgloc/data/provider/ContentProviderLocationDAO.java +395 -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 +76 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationDAO.java +160 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationContract.java +112 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationDAO.java +506 -0
- package/android/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteOpenHelper.java +151 -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 +61 -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/provider/AbstractLocationProvider.java +171 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +280 -0
- package/android/src/main/java/com/marianhello/bgloc/provider/DistanceFilterLocationProvider.java +586 -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 +142 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationService.java +17 -0
- package/android/src/main/java/com/marianhello/bgloc/service/LocationServiceImpl.java +760 -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 +140 -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 +246 -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 +233 -0
- package/android/src/main/java/com/marianhello/bgloc/sync/SyncService.java +68 -0
- package/android/src/main/java/com/marianhello/logging/DBLogReader.java +203 -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/values/strings.xml +6 -0
- package/android/src/main/res/xml/authenticator.xml +7 -0
- package/android/src/main/res/xml/syncadapter.xml +9 -0
- package/app.plugin.js +64 -0
- package/ios/NitroBackgroundGeolocation.swift +719 -0
- package/ios/NitroBackgroundGeolocationBootstrap.m +98 -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 +202 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.h +62 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.m +650 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.h +34 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundSync.m +184 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.h +25 -0
- package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.m +105 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.h +74 -0
- package/ios/common/BackgroundGeolocation/MAURConfig.m +485 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.h +49 -0
- package/ios/common/BackgroundGeolocation/MAURConfigurationContract.m +51 -0
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.h +20 -0
- package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.m +523 -0
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.h +17 -0
- package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.m +97 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.h +59 -0
- package/ios/common/BackgroundGeolocation/MAURLocation.m +349 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.h +34 -0
- package/ios/common/BackgroundGeolocation/MAURLocationContract.m +35 -0
- package/ios/common/BackgroundGeolocation/MAURLocationManager.h +53 -0
- package/ios/common/BackgroundGeolocation/MAURLocationManager.m +308 -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 +40 -0
- package/ios/common/BackgroundGeolocation/MAURPostLocationTask.m +218 -0
- package/ios/common/BackgroundGeolocation/MAURProviderDelegate.h +52 -0
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.h +18 -0
- package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.m +129 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.h +26 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.m +278 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.h +57 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.m +93 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.h +38 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.m +380 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.h +32 -0
- package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.m +276 -0
- package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.h +20 -0
- package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.m +62 -0
- package/ios/common/BackgroundGeolocation/Reachability.h +102 -0
- package/ios/common/BackgroundGeolocation/Reachability.m +474 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOLocationManager.h +80 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOLocationManager.m +147 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionActivity.h +30 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionActivity.m +42 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionDetector.h +99 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionDetector.m +327 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOStepDetector.h +44 -0
- package/ios/common/BackgroundGeolocation/SOMotionDetector/SOStepDetector.m +94 -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/lib/module/NitroBackgroundGeolocation.nitro.js +172 -0
- package/lib/module/NitroBackgroundGeolocation.nitro.js.map +1 -0
- package/lib/module/headless.js +72 -0
- package/lib/module/headless.js.map +1 -0
- package/lib/module/index.js +60 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/NitroBackgroundGeolocation.nitro.d.ts +616 -0
- package/lib/typescript/src/NitroBackgroundGeolocation.nitro.d.ts.map +1 -0
- package/lib/typescript/src/headless.d.ts +40 -0
- package/lib/typescript/src/headless.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +8 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/nitro.json +23 -0
- package/nitrogen/generated/android/c++/JActivity.hpp +61 -0
- package/nitrogen/generated/android/c++/JAuthorizationStatus.hpp +61 -0
- package/nitrogen/generated/android/c++/JBackgroundGeolocationError.hpp +61 -0
- package/nitrogen/generated/android/c++/JConfigureOptions.hpp +179 -0
- package/nitrogen/generated/android/c++/JFunc_void.hpp +75 -0
- package/nitrogen/generated/android/c++/JFunc_void_Activity.hpp +78 -0
- package/nitrogen/generated/android/c++/JFunc_void_AuthorizationStatus.hpp +77 -0
- package/nitrogen/generated/android/c++/JFunc_void_BackgroundGeolocationError.hpp +78 -0
- package/nitrogen/generated/android/c++/JFunc_void_Location.hpp +78 -0
- package/nitrogen/generated/android/c++/JFunc_void_StationaryLocation.hpp +78 -0
- package/nitrogen/generated/android/c++/JHybridNitroBackgroundGeolocationSpec.cpp +530 -0
- package/nitrogen/generated/android/c++/JHybridNitroBackgroundGeolocationSpec.hpp +90 -0
- package/nitrogen/generated/android/c++/JLocation.hpp +105 -0
- package/nitrogen/generated/android/c++/JLocationAccuracy.hpp +64 -0
- package/nitrogen/generated/android/c++/JLocationOptions.hpp +65 -0
- package/nitrogen/generated/android/c++/JLocationProvider.hpp +61 -0
- package/nitrogen/generated/android/c++/JLogEntry.hpp +73 -0
- package/nitrogen/generated/android/c++/JNativeLogLevel.hpp +67 -0
- package/nitrogen/generated/android/c++/JServiceStatus.hpp +66 -0
- package/nitrogen/generated/android/c++/JStationaryLocation.hpp +109 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_AnyMap.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_AnyMap.hpp +71 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Boolean.hpp +69 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Double.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Double.hpp +69 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_LocationAccuracy.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_LocationAccuracy.hpp +71 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_LocationProvider.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_LocationProvider.hpp +71 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.cpp +33 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_Map_String__String_.hpp +77 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_String.cpp +26 -0
- package/nitrogen/generated/android/c++/JVariant_NullType_String.hpp +70 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Activity.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/AuthorizationStatus.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/BackgroundGeolocationError.kt +56 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/ConfigureOptions.kt +182 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Func_void.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Func_void_Activity.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Func_void_AuthorizationStatus.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Func_void_BackgroundGeolocationError.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Func_void_Location.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Func_void_StationaryLocation.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/HybridNitroBackgroundGeolocationSpec.kt +218 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Location.kt +111 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/LocationAccuracy.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/LocationOptions.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/LocationProvider.kt +24 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/LogEntry.kt +71 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/NativeLogLevel.kt +26 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/ServiceStatus.kt +61 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/StationaryLocation.kt +116 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_AnyMap.kt +63 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_Boolean.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_Double.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_LocationAccuracy.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_LocationProvider.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_Map_String__String_.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/Variant_NullType_String.kt +62 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/nitrobackgroundgeolocation/nitrobackgroundgeolocationOnLoad.kt +35 -0
- package/nitrogen/generated/android/nitrobackgroundgeolocation+autolinking.cmake +88 -0
- package/nitrogen/generated/android/nitrobackgroundgeolocation+autolinking.gradle +27 -0
- package/nitrogen/generated/android/nitrobackgroundgeolocationOnLoad.cpp +66 -0
- package/nitrogen/generated/android/nitrobackgroundgeolocationOnLoad.hpp +34 -0
- package/nitrogen/generated/ios/NitroBackgroundGeolocation+autolinking.rb +62 -0
- package/nitrogen/generated/ios/NitroBackgroundGeolocation-Swift-Cxx-Bridge.cpp +129 -0
- package/nitrogen/generated/ios/NitroBackgroundGeolocation-Swift-Cxx-Bridge.hpp +911 -0
- package/nitrogen/generated/ios/NitroBackgroundGeolocation-Swift-Cxx-Umbrella.hpp +88 -0
- package/nitrogen/generated/ios/NitroBackgroundGeolocationAutolinking.mm +33 -0
- package/nitrogen/generated/ios/NitroBackgroundGeolocationAutolinking.swift +26 -0
- package/nitrogen/generated/ios/c++/HybridNitroBackgroundGeolocationSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridNitroBackgroundGeolocationSpecSwift.hpp +335 -0
- package/nitrogen/generated/ios/swift/Activity.swift +34 -0
- package/nitrogen/generated/ios/swift/AuthorizationStatus.swift +44 -0
- package/nitrogen/generated/ios/swift/BackgroundGeolocationError.swift +34 -0
- package/nitrogen/generated/ios/swift/ConfigureOptions.swift +1037 -0
- package/nitrogen/generated/ios/swift/Func_void.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_Activity.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_AuthorizationStatus.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_BackgroundGeolocationError.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_ConfigureOptions.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_Location.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_ServiceStatus.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_StationaryLocation.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__optional_StationaryLocation_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_Location_.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_LogEntry_.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridNitroBackgroundGeolocationSpec.swift +82 -0
- package/nitrogen/generated/ios/swift/HybridNitroBackgroundGeolocationSpec_cxx.swift +675 -0
- package/nitrogen/generated/ios/swift/Location.swift +89 -0
- package/nitrogen/generated/ios/swift/LocationAccuracy.swift +48 -0
- package/nitrogen/generated/ios/swift/LocationOptions.swift +78 -0
- package/nitrogen/generated/ios/swift/LocationProvider.swift +44 -0
- package/nitrogen/generated/ios/swift/LogEntry.swift +49 -0
- package/nitrogen/generated/ios/swift/NativeLogLevel.swift +52 -0
- package/nitrogen/generated/ios/swift/ServiceStatus.swift +39 -0
- package/nitrogen/generated/ios/swift/StationaryLocation.swift +94 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_AnyMap.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_Bool.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_Dictionary_String__String_.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_Double.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_LocationAccuracy.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_LocationProvider.swift +30 -0
- package/nitrogen/generated/ios/swift/Variant_NullType_String.swift +30 -0
- package/nitrogen/generated/shared/c++/Activity.hpp +87 -0
- package/nitrogen/generated/shared/c++/AuthorizationStatus.hpp +63 -0
- package/nitrogen/generated/shared/c++/BackgroundGeolocationError.hpp +87 -0
- package/nitrogen/generated/shared/c++/ConfigureOptions.hpp +197 -0
- package/nitrogen/generated/shared/c++/HybridNitroBackgroundGeolocationSpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridNitroBackgroundGeolocationSpec.hpp +121 -0
- package/nitrogen/generated/shared/c++/Location.hpp +131 -0
- package/nitrogen/generated/shared/c++/LocationAccuracy.hpp +69 -0
- package/nitrogen/generated/shared/c++/LocationOptions.hpp +91 -0
- package/nitrogen/generated/shared/c++/LocationProvider.hpp +63 -0
- package/nitrogen/generated/shared/c++/LogEntry.hpp +99 -0
- package/nitrogen/generated/shared/c++/NativeLogLevel.hpp +65 -0
- package/nitrogen/generated/shared/c++/ServiceStatus.hpp +92 -0
- package/nitrogen/generated/shared/c++/StationaryLocation.hpp +135 -0
- package/package.json +112 -0
- package/react-native.config.js +10 -0
- package/src/NitroBackgroundGeolocation.nitro.ts +656 -0
- package/src/headless.ts +91 -0
- package/src/index.tsx +100 -0
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURPostLocationTask.m
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 27/04/2018.
|
|
6
|
+
// Copyright © 2018 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <Foundation/Foundation.h>
|
|
10
|
+
#import "Reachability.h"
|
|
11
|
+
#import "MAURSQLiteLocationDAO.h"
|
|
12
|
+
#import "MAURBackgroundSync.h"
|
|
13
|
+
#import "MAURConfig.h"
|
|
14
|
+
#import "MAURLogging.h"
|
|
15
|
+
#import "MAURPostLocationTask.h"
|
|
16
|
+
#import "MAURSQLiteLocationDAO.h"
|
|
17
|
+
|
|
18
|
+
static NSString * const TAG = @"MAURPostLocationTask";
|
|
19
|
+
|
|
20
|
+
@interface MAURPostLocationTask() <MAURBackgroundSyncDelegate>
|
|
21
|
+
{
|
|
22
|
+
|
|
23
|
+
}
|
|
24
|
+
@end
|
|
25
|
+
|
|
26
|
+
@implementation MAURPostLocationTask
|
|
27
|
+
{
|
|
28
|
+
Reachability *reach;
|
|
29
|
+
MAURBackgroundSync *uploader;
|
|
30
|
+
BOOL hasConnectivity;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
static MAURLocationTransform s_locationTransform = nil;
|
|
34
|
+
|
|
35
|
+
- (instancetype) init
|
|
36
|
+
{
|
|
37
|
+
self = [super init];
|
|
38
|
+
|
|
39
|
+
if (self == nil) {
|
|
40
|
+
return self;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
hasConnectivity = YES;
|
|
44
|
+
|
|
45
|
+
uploader = [[MAURBackgroundSync alloc] init];
|
|
46
|
+
uploader.delegate = self;
|
|
47
|
+
|
|
48
|
+
reach = [Reachability reachabilityWithHostname:@"www.google.com"];
|
|
49
|
+
reach.reachableBlock = ^(Reachability *_reach) {
|
|
50
|
+
// keep in mind this is called on a background thread
|
|
51
|
+
// and if you are updating the UI it needs to happen
|
|
52
|
+
// on the main thread:
|
|
53
|
+
hasConnectivity = YES;
|
|
54
|
+
[_reach stopNotifier];
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
reach.unreachableBlock = ^(Reachability *reach) {
|
|
58
|
+
hasConnectivity = NO;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
return self;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
- (void) start
|
|
65
|
+
{
|
|
66
|
+
hasConnectivity = YES;
|
|
67
|
+
[reach startNotifier];
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
- (void) stop
|
|
71
|
+
{
|
|
72
|
+
[reach stopNotifier];
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
- (void) add:(MAURLocation * _Nonnull)inLocation
|
|
76
|
+
{
|
|
77
|
+
// Take this variable on the main thread to be safe
|
|
78
|
+
MAURLocationTransform locationTransform = s_locationTransform;
|
|
79
|
+
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^{
|
|
80
|
+
|
|
81
|
+
MAURLocation *location = inLocation;
|
|
82
|
+
|
|
83
|
+
if (locationTransform != nil) {
|
|
84
|
+
location = locationTransform(location);
|
|
85
|
+
|
|
86
|
+
if (location == nil) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
MAURSQLiteLocationDAO *locationDAO = [MAURSQLiteLocationDAO sharedInstance];
|
|
92
|
+
// TODO: investigate location id always 0
|
|
93
|
+
NSNumber *locationId = [locationDAO persistLocation:location limitRows:_config.maxLocations.integerValue];
|
|
94
|
+
|
|
95
|
+
if (hasConnectivity && [self.config hasValidUrl]) {
|
|
96
|
+
NSError *error = nil;
|
|
97
|
+
if ([self post:location toUrl:self.config.url withTemplate:self.config._template withHttpHeaders:self.config.httpHeaders error:&error]) {
|
|
98
|
+
if (locationId != nil) {
|
|
99
|
+
[locationDAO deleteLocation:locationId error:nil];
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if ([self.config hasValidSyncUrl]) {
|
|
105
|
+
NSNumber *locationsCount = [locationDAO getLocationsForSyncCount];
|
|
106
|
+
if (locationsCount && [locationsCount integerValue] >= self.config.syncThreshold.integerValue) {
|
|
107
|
+
DDLogDebug(@"%@ Attempt to sync locations: %@ threshold: %@", TAG, locationsCount, self.config.syncThreshold);
|
|
108
|
+
[self sync];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
- (BOOL) post:(MAURLocation*)location toUrl:(NSString*)url withTemplate:(id)locationTemplate withHttpHeaders:(NSMutableDictionary*)httpHeaders error:(NSError * __autoreleasing *)outError;
|
|
115
|
+
{
|
|
116
|
+
NSArray *locations = [[NSArray alloc] initWithObjects:[location toResultFromTemplate:locationTemplate], nil];
|
|
117
|
+
// NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: data options: NSJSONReadingMutableContainers error: &e];
|
|
118
|
+
NSData *data = [NSJSONSerialization dataWithJSONObject:locations options:0 error:outError];
|
|
119
|
+
if (!data) {
|
|
120
|
+
return NO;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
NSString *jsonStr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
|
|
124
|
+
|
|
125
|
+
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
|
|
126
|
+
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
|
|
127
|
+
[request setHTTPMethod:@"POST"];
|
|
128
|
+
if (httpHeaders != nil) {
|
|
129
|
+
for(id key in httpHeaders) {
|
|
130
|
+
id value = [httpHeaders objectForKey:key];
|
|
131
|
+
[request addValue:value forHTTPHeaderField:key];
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
[request setHTTPBody:[jsonStr dataUsingEncoding:NSUTF8StringEncoding]];
|
|
135
|
+
|
|
136
|
+
// Create url connection and fire request
|
|
137
|
+
NSHTTPURLResponse* urlResponse = nil;
|
|
138
|
+
[NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:outError];
|
|
139
|
+
|
|
140
|
+
NSInteger statusCode = urlResponse.statusCode;
|
|
141
|
+
|
|
142
|
+
if (statusCode == 285)
|
|
143
|
+
{
|
|
144
|
+
// Okay, but we don't need to continue sending these
|
|
145
|
+
|
|
146
|
+
DDLogDebug(@"Location was sent to the server, and received an \"HTTP 285 Updated Not Required\"");
|
|
147
|
+
|
|
148
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
149
|
+
if (_delegate && [_delegate respondsToSelector:@selector(postLocationTaskRequestedAbortUpdates:)])
|
|
150
|
+
{
|
|
151
|
+
[_delegate postLocationTaskRequestedAbortUpdates:self];
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
if (statusCode == 401)
|
|
157
|
+
{
|
|
158
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
159
|
+
if (_delegate && [_delegate respondsToSelector:@selector(postLocationTaskHttpAuthorizationUpdates:)])
|
|
160
|
+
{
|
|
161
|
+
[_delegate postLocationTaskHttpAuthorizationUpdates:self];
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
// All 2xx statuses are okay
|
|
167
|
+
if (statusCode >= 200 && statusCode < 300)
|
|
168
|
+
{
|
|
169
|
+
return YES;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
if (*outError == nil) {
|
|
173
|
+
DDLogDebug(@"%@ Server error while posting locations responseCode: %ld", TAG, (long)statusCode);
|
|
174
|
+
} else {
|
|
175
|
+
DDLogError(@"%@ Error while posting locations %@", TAG, [*outError localizedDescription]);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
return NO;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
- (void) sync
|
|
182
|
+
{
|
|
183
|
+
if ([self.config hasValidSyncUrl]) {
|
|
184
|
+
[uploader sync:self.config.syncUrl withTemplate:self.config._template withHttpHeaders:self.config.httpHeaders];
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
#pragma mark - Location transform
|
|
189
|
+
|
|
190
|
+
+ (void) setLocationTransform:(MAURLocationTransform _Nullable)transform
|
|
191
|
+
{
|
|
192
|
+
s_locationTransform = transform;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
+ (MAURLocationTransform _Nullable) locationTransform
|
|
196
|
+
{
|
|
197
|
+
return s_locationTransform;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
#pragma mark - MAURBackgroundSyncDelegate
|
|
201
|
+
|
|
202
|
+
- (void)backgroundSyncRequestedAbortUpdates:(MAURBackgroundSync *)task
|
|
203
|
+
{
|
|
204
|
+
if (_delegate && [_delegate respondsToSelector:@selector(postLocationTaskRequestedAbortUpdates:)])
|
|
205
|
+
{
|
|
206
|
+
[_delegate postLocationTaskRequestedAbortUpdates:self];
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
- (void)backgroundSyncHttpAuthorizationUpdates:(MAURBackgroundSync *)task
|
|
211
|
+
{
|
|
212
|
+
if (_delegate && [_delegate respondsToSelector:@selector(postLocationTaskHttpAuthorizationUpdates:)])
|
|
213
|
+
{
|
|
214
|
+
[_delegate postLocationTaskHttpAuthorizationUpdates:self];
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
@end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURProviderDelegate.h
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 14/09/2016.
|
|
6
|
+
// Copyright © 2016 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#ifndef MAURProviderDelegate_h
|
|
10
|
+
#define MAURProviderDelegate_h
|
|
11
|
+
|
|
12
|
+
#import "MAURLocation.h"
|
|
13
|
+
#import "MAURActivity.h"
|
|
14
|
+
//#import "MAURLocationController.h"
|
|
15
|
+
|
|
16
|
+
typedef NS_ENUM(NSInteger, MAURBGErrorCode) {
|
|
17
|
+
MAURBGPermissionDenied = 1000,
|
|
18
|
+
MAURBGSettingsError = 1001,
|
|
19
|
+
MAURBGConfigureError = 1002,
|
|
20
|
+
MAURBGServiceError = 1003,
|
|
21
|
+
MAURBGJsonError = 1004,
|
|
22
|
+
MAURBGNotImplemented = 9999
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
typedef NS_ENUM(NSInteger, MAURLocationAuthorizationStatus) {
|
|
26
|
+
MAURLocationAuthorizationDenied = 0,
|
|
27
|
+
MAURLocationAuthorizationAllowed = 1,
|
|
28
|
+
MAURLocationAuthorizationAlways = MAURLocationAuthorizationAllowed,
|
|
29
|
+
MAURLocationAuthorizationForeground = 2,
|
|
30
|
+
MAURLocationAuthorizationNotDetermined = 99,
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
typedef NS_ENUM(NSInteger, MAUROperationalMode) {
|
|
34
|
+
MAURBackgroundMode = 0,
|
|
35
|
+
MAURForegroundMode = 1
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
@protocol MAURProviderDelegate <NSObject>
|
|
39
|
+
|
|
40
|
+
- (void) onAuthorizationChanged:(MAURLocationAuthorizationStatus)authStatus;
|
|
41
|
+
- (void) onLocationChanged:(MAURLocation*)location;
|
|
42
|
+
- (void) onStationaryChanged:(MAURLocation*)location;
|
|
43
|
+
- (void) onLocationPause;
|
|
44
|
+
- (void) onLocationResume;
|
|
45
|
+
- (void) onActivityChanged:(MAURActivity*)activity;
|
|
46
|
+
- (void) onAbortRequested;
|
|
47
|
+
- (void) onHttpAuthorization;
|
|
48
|
+
- (void) onError:(NSError*)error;
|
|
49
|
+
|
|
50
|
+
@end
|
|
51
|
+
|
|
52
|
+
#endif /* MAURProviderDelegate_h */
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURRawLocationProvider.h
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 06/11/2017.
|
|
6
|
+
// Copyright © 2017 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#ifndef MAURRawLocationProvider_h
|
|
10
|
+
#define MAURRawLocationProvider_h
|
|
11
|
+
|
|
12
|
+
#import "MAURAbstractLocationProvider.h"
|
|
13
|
+
|
|
14
|
+
@interface MAURRawLocationProvider : MAURAbstractLocationProvider<MAURLocationProvider>
|
|
15
|
+
|
|
16
|
+
@end
|
|
17
|
+
|
|
18
|
+
#endif /* MAURRawLocationProvider_h */
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURRawLocationProvider.m
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 06/11/2017.
|
|
6
|
+
// Copyright © 2017 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <Foundation/Foundation.h>
|
|
10
|
+
#import "MAURRawLocationProvider.h"
|
|
11
|
+
#import "MAURLocationManager.h"
|
|
12
|
+
#import "MAURLogging.h"
|
|
13
|
+
|
|
14
|
+
static NSString * const TAG = @"RawLocationProvider";
|
|
15
|
+
static NSString * const Domain = @"com.marianhello";
|
|
16
|
+
|
|
17
|
+
@implementation MAURRawLocationProvider {
|
|
18
|
+
|
|
19
|
+
BOOL isStarted;
|
|
20
|
+
MAURLocationManager *locationManager;
|
|
21
|
+
|
|
22
|
+
MAURConfig *_config;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
- (instancetype) init
|
|
26
|
+
{
|
|
27
|
+
self = [super init];
|
|
28
|
+
|
|
29
|
+
if (self) {
|
|
30
|
+
isStarted = NO;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return self;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
- (void) onCreate {
|
|
37
|
+
locationManager = [MAURLocationManager sharedInstance];
|
|
38
|
+
locationManager.delegate = self;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
- (BOOL) onConfigure:(MAURConfig*)config error:(NSError * __autoreleasing *)outError
|
|
42
|
+
{
|
|
43
|
+
DDLogVerbose(@"%@ configure", TAG);
|
|
44
|
+
_config = config;
|
|
45
|
+
|
|
46
|
+
locationManager.pausesLocationUpdatesAutomatically = [config pauseLocationUpdates];
|
|
47
|
+
locationManager.activityType = [config decodeActivityType];
|
|
48
|
+
locationManager.distanceFilter = config.distanceFilter.integerValue; // meters
|
|
49
|
+
locationManager.desiredAccuracy = [config decodeDesiredAccuracy];
|
|
50
|
+
|
|
51
|
+
return YES;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
- (BOOL) onStart:(NSError * __autoreleasing *)outError
|
|
55
|
+
{
|
|
56
|
+
DDLogInfo(@"%@ will start", TAG);
|
|
57
|
+
|
|
58
|
+
if (!isStarted) {
|
|
59
|
+
[locationManager stopMonitoringSignificantLocationChanges];
|
|
60
|
+
isStarted = [locationManager start:outError];
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return isStarted;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
- (BOOL) onStop:(NSError * __autoreleasing *)outError
|
|
67
|
+
{
|
|
68
|
+
DDLogInfo(@"%@ will stop", TAG);
|
|
69
|
+
|
|
70
|
+
if (!isStarted) {
|
|
71
|
+
return YES;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
[locationManager stopMonitoringSignificantLocationChanges];
|
|
75
|
+
if ([locationManager stop:outError]) {
|
|
76
|
+
isStarted = NO;
|
|
77
|
+
return YES;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
return NO;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
- (void) onTerminate
|
|
84
|
+
{
|
|
85
|
+
if (isStarted && !_config.stopOnTerminate) {
|
|
86
|
+
[locationManager startMonitoringSignificantLocationChanges];
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
- (void) onAuthorizationChanged:(MAURLocationAuthorizationStatus)authStatus
|
|
91
|
+
{
|
|
92
|
+
[self.delegate onAuthorizationChanged:authStatus];
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
- (void) onLocationsChanged:(NSArray*)locations
|
|
96
|
+
{
|
|
97
|
+
for (CLLocation *location in locations) {
|
|
98
|
+
MAURLocation *bgloc = [MAURLocation fromCLLocation:location];
|
|
99
|
+
[self.delegate onLocationChanged:bgloc];
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
- (void) onError:(NSError*)error
|
|
104
|
+
{
|
|
105
|
+
[self.delegate onError:error];
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
- (void) onPause:(CLLocationManager*)manager
|
|
109
|
+
{
|
|
110
|
+
[self.delegate onLocationPause];
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
- (void) onResume:(CLLocationManager*)manager
|
|
114
|
+
{
|
|
115
|
+
[self.delegate onLocationResume];
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
- (void) onDestroy {
|
|
119
|
+
DDLogInfo(@"Destroying %@ ", TAG);
|
|
120
|
+
[self onStop:nil];
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
- (void) dealloc
|
|
124
|
+
{
|
|
125
|
+
// locationController.delegate = nil;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
@end
|
|
129
|
+
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURSQLiteConfigurationDAO.h
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 01/12/2017.
|
|
6
|
+
// Copyright © 2017 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#ifndef MAURSQLiteConfigurationDAO_h
|
|
10
|
+
#define MAURSQLiteConfigurationDAO_h
|
|
11
|
+
|
|
12
|
+
#import "MAURConfig.h"
|
|
13
|
+
|
|
14
|
+
@interface MAURSQLiteConfigurationDAO : NSObject
|
|
15
|
+
|
|
16
|
+
+ (instancetype) sharedInstance;
|
|
17
|
+
- (id) init NS_UNAVAILABLE;
|
|
18
|
+
- (BOOL) persistConfiguration:(MAURConfig*)config;
|
|
19
|
+
- (MAURConfig*) retrieveConfiguration;
|
|
20
|
+
- (BOOL) clearDatabase;
|
|
21
|
+
- (NSString*) getDatabaseName;
|
|
22
|
+
- (NSString*) getDatabasePath;
|
|
23
|
+
|
|
24
|
+
@end
|
|
25
|
+
|
|
26
|
+
#endif /* MAURSQLiteConfigurationDAO_h */
|