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,485 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURConfig.m
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 11/06/16.
|
|
6
|
+
//
|
|
7
|
+
|
|
8
|
+
#import "MAURConfig.h"
|
|
9
|
+
|
|
10
|
+
#define isNull(value) (value == nil || value == (id)[NSNull null])
|
|
11
|
+
#define isNotNull(value) (value != nil && value != (id)[NSNull null])
|
|
12
|
+
|
|
13
|
+
@implementation MAURConfig
|
|
14
|
+
|
|
15
|
+
@synthesize stationaryRadius, distanceFilter, desiredAccuracy, _debug, activityType, activitiesInterval, _stopOnTerminate, url, syncUrl, syncThreshold, httpHeaders, _saveBatteryOnBackground, maxLocations, _pauseLocationUpdates, locationProvider, _template;
|
|
16
|
+
|
|
17
|
+
-(instancetype) initWithDefaults {
|
|
18
|
+
self = [super init];
|
|
19
|
+
|
|
20
|
+
if (self == nil) {
|
|
21
|
+
return self;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
stationaryRadius = [NSNumber numberWithInt:50];
|
|
25
|
+
distanceFilter = [NSNumber numberWithInt:500];
|
|
26
|
+
desiredAccuracy = [NSNumber numberWithInt:100];
|
|
27
|
+
_debug = [NSNumber numberWithBool:NO];
|
|
28
|
+
activityType = @"OtherNavigation";
|
|
29
|
+
activitiesInterval = [NSNumber numberWithInt:10000];
|
|
30
|
+
_stopOnTerminate = [NSNumber numberWithBool:YES];
|
|
31
|
+
_saveBatteryOnBackground = [NSNumber numberWithBool:NO];
|
|
32
|
+
maxLocations = [NSNumber numberWithInt:10000];
|
|
33
|
+
syncThreshold = [NSNumber numberWithInt:100];
|
|
34
|
+
_pauseLocationUpdates = [NSNumber numberWithBool:NO];
|
|
35
|
+
locationProvider = [NSNumber numberWithInt:DISTANCE_FILTER_PROVIDER];
|
|
36
|
+
// template =
|
|
37
|
+
|
|
38
|
+
return self;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
+(instancetype) fromDictionary:(NSDictionary*)config
|
|
42
|
+
{
|
|
43
|
+
MAURConfig *instance = [[MAURConfig alloc] init];
|
|
44
|
+
|
|
45
|
+
if (isNotNull(config[@"stationaryRadius"])) {
|
|
46
|
+
instance.stationaryRadius = config[@"stationaryRadius"];
|
|
47
|
+
}
|
|
48
|
+
if (isNotNull(config[@"distanceFilter"])) {
|
|
49
|
+
instance.distanceFilter = config[@"distanceFilter"];
|
|
50
|
+
}
|
|
51
|
+
if (isNotNull(config[@"desiredAccuracy"])) {
|
|
52
|
+
instance.desiredAccuracy = config[@"desiredAccuracy"];
|
|
53
|
+
}
|
|
54
|
+
if (isNotNull(config[@"debug"])) {
|
|
55
|
+
instance._debug = config[@"debug"];
|
|
56
|
+
}
|
|
57
|
+
if (isNotNull(config[@"activityType"])) {
|
|
58
|
+
instance.activityType = config[@"activityType"];
|
|
59
|
+
}
|
|
60
|
+
if (isNull(config[@"activitiesInterval"])) {
|
|
61
|
+
instance.activitiesInterval = config[@"activitiesInterval"];
|
|
62
|
+
}
|
|
63
|
+
if (isNotNull(config[@"stopOnTerminate"])) {
|
|
64
|
+
instance._stopOnTerminate = config[@"stopOnTerminate"];
|
|
65
|
+
}
|
|
66
|
+
if (config[@"url"] != nil) {
|
|
67
|
+
instance.url = config[@"url"];
|
|
68
|
+
}
|
|
69
|
+
if (config[@"syncUrl"] != nil) {
|
|
70
|
+
instance.syncUrl = config[@"syncUrl"];
|
|
71
|
+
}
|
|
72
|
+
if (isNotNull(config[@"syncThreshold"])) {
|
|
73
|
+
instance.syncThreshold = config[@"syncThreshold"];
|
|
74
|
+
}
|
|
75
|
+
if (config[@"httpHeaders"] != nil) {
|
|
76
|
+
instance.httpHeaders = config[@"httpHeaders"];
|
|
77
|
+
}
|
|
78
|
+
if (isNotNull(config[@"saveBatteryOnBackground"])) {
|
|
79
|
+
instance._saveBatteryOnBackground = config[@"saveBatteryOnBackground"];
|
|
80
|
+
}
|
|
81
|
+
if (isNotNull(config[@"maxLocations"])) {
|
|
82
|
+
instance.maxLocations = config[@"maxLocations"];
|
|
83
|
+
}
|
|
84
|
+
if (isNotNull(config[@"pauseLocationUpdates"])) {
|
|
85
|
+
instance._pauseLocationUpdates = config[@"pauseLocationUpdates"];
|
|
86
|
+
}
|
|
87
|
+
if (isNotNull(config[@"locationProvider"])) {
|
|
88
|
+
instance.locationProvider = config[@"locationProvider"];
|
|
89
|
+
}
|
|
90
|
+
if (config[@"postTemplate"] != nil) {
|
|
91
|
+
instance._template = config[@"postTemplate"];
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
return instance;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
+ (instancetype) merge:(MAURConfig*)config withConfig:(MAURConfig*)newConfig
|
|
98
|
+
{
|
|
99
|
+
if (config == nil) {
|
|
100
|
+
return newConfig;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (newConfig == nil) {
|
|
104
|
+
return config;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
MAURConfig *merger= [config copy];
|
|
108
|
+
|
|
109
|
+
if ([newConfig hasStationaryRadius]) {
|
|
110
|
+
merger.stationaryRadius = newConfig.stationaryRadius;
|
|
111
|
+
}
|
|
112
|
+
if ([newConfig hasDistanceFilter]) {
|
|
113
|
+
merger.distanceFilter = newConfig.distanceFilter;
|
|
114
|
+
}
|
|
115
|
+
if ([newConfig hasDesiredAccuracy]) {
|
|
116
|
+
merger.desiredAccuracy = newConfig.desiredAccuracy;
|
|
117
|
+
}
|
|
118
|
+
if ([newConfig hasDebug]) {
|
|
119
|
+
merger._debug = newConfig._debug;
|
|
120
|
+
}
|
|
121
|
+
if ([newConfig hasActivityType]) {
|
|
122
|
+
merger.activityType = newConfig.activityType;
|
|
123
|
+
}
|
|
124
|
+
if ([newConfig hasActivitiesInterval]) {
|
|
125
|
+
merger.activitiesInterval = newConfig.activitiesInterval;
|
|
126
|
+
}
|
|
127
|
+
if ([newConfig hasStopOnTerminate]) {
|
|
128
|
+
merger._stopOnTerminate = newConfig._stopOnTerminate;
|
|
129
|
+
}
|
|
130
|
+
if ([newConfig hasUrl]) {
|
|
131
|
+
merger.url = newConfig.url;
|
|
132
|
+
}
|
|
133
|
+
if ([newConfig hasSyncUrl]) {
|
|
134
|
+
merger.syncUrl = newConfig.syncUrl;
|
|
135
|
+
}
|
|
136
|
+
if ([newConfig hasSyncThreshold]) {
|
|
137
|
+
merger.syncThreshold = newConfig.syncThreshold;
|
|
138
|
+
}
|
|
139
|
+
if ([newConfig hasHttpHeaders]) {
|
|
140
|
+
merger.httpHeaders = newConfig.httpHeaders;
|
|
141
|
+
}
|
|
142
|
+
if ([newConfig hasSaveBatteryOnBackground]) {
|
|
143
|
+
merger._saveBatteryOnBackground = newConfig._saveBatteryOnBackground;
|
|
144
|
+
}
|
|
145
|
+
if ([newConfig hasMaxLocations]) {
|
|
146
|
+
merger.maxLocations = newConfig.maxLocations;
|
|
147
|
+
}
|
|
148
|
+
if ([newConfig hasPauseLocationUpdates]) {
|
|
149
|
+
merger._pauseLocationUpdates = newConfig._pauseLocationUpdates;
|
|
150
|
+
}
|
|
151
|
+
if ([newConfig hasLocationProvider]) {
|
|
152
|
+
merger.locationProvider = newConfig.locationProvider;
|
|
153
|
+
}
|
|
154
|
+
if ([newConfig hasTemplate]) {
|
|
155
|
+
merger._template = newConfig._template;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
return merger;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
-(id) copyWithZone: (NSZone *) zone
|
|
162
|
+
{
|
|
163
|
+
MAURConfig *copy = [[[self class] allocWithZone: zone] init];
|
|
164
|
+
if (copy) {
|
|
165
|
+
copy.stationaryRadius = stationaryRadius;
|
|
166
|
+
copy.distanceFilter = distanceFilter;
|
|
167
|
+
copy.desiredAccuracy = desiredAccuracy;
|
|
168
|
+
copy._debug = _debug;
|
|
169
|
+
copy.activityType = activityType;
|
|
170
|
+
copy.activitiesInterval = activitiesInterval;
|
|
171
|
+
copy._stopOnTerminate = _stopOnTerminate;
|
|
172
|
+
copy.url = url;
|
|
173
|
+
copy.syncUrl = syncUrl;
|
|
174
|
+
copy.syncThreshold = syncThreshold;
|
|
175
|
+
copy.httpHeaders = httpHeaders;
|
|
176
|
+
copy._saveBatteryOnBackground = _saveBatteryOnBackground;
|
|
177
|
+
copy.maxLocations = maxLocations;
|
|
178
|
+
copy._pauseLocationUpdates = _pauseLocationUpdates;
|
|
179
|
+
copy.locationProvider = locationProvider;
|
|
180
|
+
copy._template = _template;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
return copy;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
- (BOOL) hasStationaryRadius
|
|
187
|
+
{
|
|
188
|
+
return stationaryRadius != nil;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
- (BOOL) hasDistanceFilter
|
|
192
|
+
{
|
|
193
|
+
return distanceFilter != nil;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
- (BOOL) hasDesiredAccuracy
|
|
197
|
+
{
|
|
198
|
+
return desiredAccuracy != nil;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
- (BOOL) hasDebug
|
|
202
|
+
{
|
|
203
|
+
return _debug != nil;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
- (BOOL) hasActivityType
|
|
207
|
+
{
|
|
208
|
+
return activityType != nil;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
- (BOOL) hasActivitiesInterval
|
|
212
|
+
{
|
|
213
|
+
return activitiesInterval != nil;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
- (BOOL) hasStopOnTerminate
|
|
217
|
+
{
|
|
218
|
+
return _stopOnTerminate != nil;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
- (BOOL) hasUrl
|
|
222
|
+
{
|
|
223
|
+
return url != nil;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
- (BOOL) hasValidUrl
|
|
227
|
+
{
|
|
228
|
+
return url != nil && url.length > 0;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
- (void) setUrl:(NSString*)newUrl
|
|
232
|
+
{
|
|
233
|
+
if (newUrl == (id)[NSNull null]) {
|
|
234
|
+
url = @"";
|
|
235
|
+
} else {
|
|
236
|
+
url = newUrl;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
- (NSString*) url
|
|
241
|
+
{
|
|
242
|
+
if (url == nil) {
|
|
243
|
+
url = @"";
|
|
244
|
+
}
|
|
245
|
+
return url;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
- (BOOL) hasSyncUrl
|
|
249
|
+
{
|
|
250
|
+
return syncUrl != nil;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
- (BOOL) hasValidSyncUrl
|
|
254
|
+
{
|
|
255
|
+
return syncUrl != nil && syncUrl.length > 0;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
- (void) setSyncUrl:(NSString*)newSyncUrl
|
|
259
|
+
{
|
|
260
|
+
if (newSyncUrl == (id)[NSNull null]) {
|
|
261
|
+
syncUrl = @"";
|
|
262
|
+
} else {
|
|
263
|
+
syncUrl = newSyncUrl;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
- (NSString*) syncUrl
|
|
268
|
+
{
|
|
269
|
+
if (syncUrl == nil) {
|
|
270
|
+
syncUrl = @"";
|
|
271
|
+
}
|
|
272
|
+
return syncUrl;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
- (BOOL) hasSyncThreshold
|
|
276
|
+
{
|
|
277
|
+
return syncThreshold != nil;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
- (BOOL) hasHttpHeaders
|
|
281
|
+
{
|
|
282
|
+
return httpHeaders != nil;
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
- (void) setHttpHeaders:(NSMutableDictionary *)newHttpHeaders
|
|
286
|
+
{
|
|
287
|
+
if (newHttpHeaders == (id)[NSNull null]) {
|
|
288
|
+
httpHeaders = [[NSMutableDictionary alloc] init];
|
|
289
|
+
} else {
|
|
290
|
+
httpHeaders = newHttpHeaders;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
- (NSMutableDictionary *) httpHeaders
|
|
295
|
+
{
|
|
296
|
+
if (httpHeaders == nil) {
|
|
297
|
+
httpHeaders = [[NSMutableDictionary alloc] init];
|
|
298
|
+
}
|
|
299
|
+
return httpHeaders;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
- (BOOL) hasSaveBatteryOnBackground
|
|
303
|
+
{
|
|
304
|
+
return _saveBatteryOnBackground != nil;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
- (BOOL) hasMaxLocations
|
|
308
|
+
{
|
|
309
|
+
return maxLocations != nil;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
- (BOOL) hasPauseLocationUpdates
|
|
313
|
+
{
|
|
314
|
+
return _pauseLocationUpdates != nil;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
- (BOOL) hasLocationProvider
|
|
318
|
+
{
|
|
319
|
+
return locationProvider != nil;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
- (BOOL) hasTemplate
|
|
323
|
+
{
|
|
324
|
+
return _template != nil;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
- (void) set_template:(NSObject*)template
|
|
328
|
+
{
|
|
329
|
+
if (template == (id)[NSNull null]) {
|
|
330
|
+
_template = [MAURConfig getDefaultTemplate];
|
|
331
|
+
} else {
|
|
332
|
+
_template = template;
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
- (NSObject*) _template{
|
|
337
|
+
if (_template == nil) {
|
|
338
|
+
_template = [MAURConfig getDefaultTemplate];
|
|
339
|
+
}
|
|
340
|
+
return _template;
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
- (BOOL) isDebugging
|
|
344
|
+
{
|
|
345
|
+
return _debug.boolValue;
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
- (BOOL) stopOnTerminate
|
|
349
|
+
{
|
|
350
|
+
return _stopOnTerminate.boolValue;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
- (BOOL) saveBatteryOnBackground
|
|
354
|
+
{
|
|
355
|
+
return _saveBatteryOnBackground.boolValue;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
- (BOOL) pauseLocationUpdates
|
|
359
|
+
{
|
|
360
|
+
return _pauseLocationUpdates.boolValue;
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
- (CLActivityType) decodeActivityType
|
|
364
|
+
{
|
|
365
|
+
if ([activityType caseInsensitiveCompare:@"AutomotiveNavigation"] == NSOrderedSame) {
|
|
366
|
+
return CLActivityTypeAutomotiveNavigation;
|
|
367
|
+
}
|
|
368
|
+
if ([activityType caseInsensitiveCompare:@"OtherNavigation"] == NSOrderedSame) {
|
|
369
|
+
return CLActivityTypeOtherNavigation;
|
|
370
|
+
}
|
|
371
|
+
if ([activityType caseInsensitiveCompare:@"Fitness"] == NSOrderedSame) {
|
|
372
|
+
return CLActivityTypeFitness;
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
return CLActivityTypeOther;
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
- (NSInteger) decodeDesiredAccuracy
|
|
379
|
+
{
|
|
380
|
+
NSInteger desiredAccuracy = self.desiredAccuracy.integerValue;
|
|
381
|
+
|
|
382
|
+
if (desiredAccuracy >= 1000) {
|
|
383
|
+
return kCLLocationAccuracyKilometer;
|
|
384
|
+
}
|
|
385
|
+
if (desiredAccuracy >= 100) {
|
|
386
|
+
return kCLLocationAccuracyHundredMeters;
|
|
387
|
+
}
|
|
388
|
+
if (desiredAccuracy >= 10) {
|
|
389
|
+
return kCLLocationAccuracyNearestTenMeters;
|
|
390
|
+
}
|
|
391
|
+
if (desiredAccuracy >= 0) {
|
|
392
|
+
return kCLLocationAccuracyBest;
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
return kCLLocationAccuracyHundredMeters;
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
+ (NSDictionary*) getDefaultTemplate
|
|
399
|
+
{
|
|
400
|
+
return @{
|
|
401
|
+
@"time": @"@time",
|
|
402
|
+
@"accuracy": @"@accuracy",
|
|
403
|
+
@"altitudeAccuracy": @"@altitudeAccuracy",
|
|
404
|
+
@"speed": @"@speed",
|
|
405
|
+
@"bearing": @"@bearing",
|
|
406
|
+
@"altitude": @"@altitude",
|
|
407
|
+
@"latitude": @"@latitude",
|
|
408
|
+
@"longitude": @"@longitude",
|
|
409
|
+
@"provider": @"provider",
|
|
410
|
+
@"locationProvider": @"@locationProvider",
|
|
411
|
+
@"radius": @"@radius",
|
|
412
|
+
};
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
- (NSString*) getHttpHeadersAsString:(NSError * __autoreleasing *)outError;
|
|
416
|
+
{
|
|
417
|
+
NSError *error = nil;
|
|
418
|
+
NSString *httpHeadersString;
|
|
419
|
+
|
|
420
|
+
if ([self hasHttpHeaders]) {
|
|
421
|
+
NSData *jsonHttpHeaders = [NSJSONSerialization dataWithJSONObject:httpHeaders options:NSJSONWritingPrettyPrinted error:&error];
|
|
422
|
+
if (jsonHttpHeaders) {
|
|
423
|
+
httpHeadersString = [[NSString alloc] initWithData:jsonHttpHeaders encoding:NSUTF8StringEncoding];
|
|
424
|
+
} else {
|
|
425
|
+
if (outError != nil) {
|
|
426
|
+
NSLog(@"Http headers serialization error: %@", error);
|
|
427
|
+
*outError = error;
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
return httpHeadersString;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
- (NSString*) getTemplateAsString:(NSError * __autoreleasing *)outError;
|
|
436
|
+
{
|
|
437
|
+
NSError *error = nil;
|
|
438
|
+
NSString *templateAsString;
|
|
439
|
+
|
|
440
|
+
if ([self hasTemplate]) {
|
|
441
|
+
NSData *jsonTemplate = [NSJSONSerialization dataWithJSONObject:_template options:0 error:&error];
|
|
442
|
+
if (jsonTemplate) {
|
|
443
|
+
templateAsString = [[NSString alloc] initWithData:jsonTemplate encoding:NSUTF8StringEncoding];
|
|
444
|
+
} else {
|
|
445
|
+
if (outError != nil) {
|
|
446
|
+
NSLog(@"Template serialization error: %@", error);
|
|
447
|
+
*outError = error;
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
return templateAsString;
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
- (NSDictionary*) toDictionary
|
|
456
|
+
{
|
|
457
|
+
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithCapacity:10];
|
|
458
|
+
|
|
459
|
+
if ([self hasActivityType]) [dict setObject:self.activityType forKey:@"activityType"];
|
|
460
|
+
if ([self hasActivitiesInterval]) [dict setObject:self.activitiesInterval forKey:@"activitiesInterval"];
|
|
461
|
+
if ([self hasUrl]) [dict setObject:self.url forKey:@"url"];
|
|
462
|
+
if ([self hasSyncUrl]) [dict setObject:self.syncUrl forKey:@"syncUrl"];
|
|
463
|
+
if ([self hasHttpHeaders]) [dict setObject:self.httpHeaders forKey:@"httpHeaders"];
|
|
464
|
+
if ([self hasStationaryRadius]) [dict setObject:self.stationaryRadius forKey:@"stationaryRadius"];
|
|
465
|
+
if ([self hasDistanceFilter]) [dict setObject:self.distanceFilter forKey:@"distanceFilter"];
|
|
466
|
+
if ([self hasDesiredAccuracy]) [dict setObject:self.desiredAccuracy forKey:@"desiredAccuracy"];
|
|
467
|
+
if ([self hasDebug]) [dict setObject:self._debug forKey:@"debug"];
|
|
468
|
+
if ([self hasStopOnTerminate]) [dict setObject:self._stopOnTerminate forKey:@"stopOnTerminate"];
|
|
469
|
+
if ([self hasSyncThreshold]) [dict setObject:self.syncThreshold forKey:@"syncThreshold"];
|
|
470
|
+
if ([self hasSaveBatteryOnBackground]) [dict setObject:self._saveBatteryOnBackground forKey:@"saveBatteryOnBackground"];
|
|
471
|
+
if ([self hasMaxLocations]) [dict setObject:self.maxLocations forKey:@"maxLocations"];
|
|
472
|
+
if ([self hasPauseLocationUpdates]) [dict setObject:self._pauseLocationUpdates forKey:@"pauseLocationUpdates"];
|
|
473
|
+
if ([self hasLocationProvider]) [dict setObject:self.locationProvider forKey:@"locationProvider"];
|
|
474
|
+
[dict setObject:self._template forKey:@"postTemplate"];
|
|
475
|
+
|
|
476
|
+
return dict;
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
- (NSString *) description
|
|
480
|
+
{
|
|
481
|
+
return [NSString stringWithFormat:@"Config: distanceFilter=%@ stationaryRadius=%@ desiredAccuracy=%@ activityType=%@ activitiesInterval=%@ isDebugging=%@ stopOnTerminate=%@ url=%@ syncThreshold=%@ maxLocations=%@ httpHeaders=%@ pauseLocationUpdates=%@ saveBatteryOnBackground=%@ locationProvider=%@ postTemplate=%@", self.distanceFilter, self.stationaryRadius, self.desiredAccuracy, self.activityType, self.activitiesInterval, self._debug, self._stopOnTerminate, self.url, self.syncThreshold, self.maxLocations, self.httpHeaders, self._pauseLocationUpdates, self._saveBatteryOnBackground, self.locationProvider, self._template];
|
|
482
|
+
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
@end
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURConfigurationContract.h
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 01/12/2017.
|
|
6
|
+
// Copyright © 2017 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#ifndef MAURConfigurationContract_h
|
|
10
|
+
#define MAURConfigurationContract_h
|
|
11
|
+
|
|
12
|
+
#define CC_TABLE_NAME "configuration"
|
|
13
|
+
#define CC_COLUMN_NAME_ID "id"
|
|
14
|
+
#define CC_COLUMN_NAME_NULLABLE "NULLHACK"
|
|
15
|
+
#define CC_COLUMN_NAME_RADIUS "stationary_radius"
|
|
16
|
+
#define CC_COLUMN_NAME_DISTANCE_FILTER "distance_filter"
|
|
17
|
+
#define CC_COLUMN_NAME_DESIRED_ACCURACY "desired_accuracy"
|
|
18
|
+
#define CC_COLUMN_NAME_DEBUG "debugging"
|
|
19
|
+
#define CC_COLUMN_NAME_ACTIVITY_TYPE "activity_type"
|
|
20
|
+
#define CC_COLUMN_NAME_NOTIF_TITLE "notification_title"
|
|
21
|
+
#define CC_COLUMN_NAME_NOTIF_TEXT "notification_text"
|
|
22
|
+
#define CC_COLUMN_NAME_NOTIF_ICON_LARGE "notification_icon_large"
|
|
23
|
+
#define CC_COLUMN_NAME_NOTIF_ICON_SMALL "notification_icon_small"
|
|
24
|
+
#define CC_COLUMN_NAME_NOTIF_COLOR "notification_icon_color"
|
|
25
|
+
#define CC_COLUMN_NAME_STOP_TERMINATE "stop_terminate"
|
|
26
|
+
#define CC_COLUMN_NAME_START_BOOT "start_boot"
|
|
27
|
+
#define CC_COLUMN_NAME_START_FOREGROUND "start_foreground"
|
|
28
|
+
#define CC_COLUMN_NAME_STOP_ON_STILL "stop_still"
|
|
29
|
+
#define CC_COLUMN_NAME_LOCATION_PROVIDER "service_provider"
|
|
30
|
+
#define CC_COLUMN_NAME_INTERVAL "interval"
|
|
31
|
+
#define CC_COLUMN_NAME_FASTEST_INTERVAL "fastest_interval"
|
|
32
|
+
#define CC_COLUMN_NAME_ACTIVITIES_INTERVAL "activities_interval"
|
|
33
|
+
#define CC_COLUMN_NAME_URL "url"
|
|
34
|
+
#define CC_COLUMN_NAME_SYNC_URL "sync_url"
|
|
35
|
+
#define CC_COLUMN_NAME_SYNC_THRESHOLD "sync_threshold"
|
|
36
|
+
#define CC_COLUMN_NAME_HEADERS "http_headers"
|
|
37
|
+
#define CC_COLUMN_NAME_SAVE_BATTERY "save_battery"
|
|
38
|
+
#define CC_COLUMN_NAME_MAX_LOCATIONS "max_locations"
|
|
39
|
+
#define CC_COLUMN_NAME_PAUSE_LOCATION_UPDATES "pause_updates"
|
|
40
|
+
#define CC_COLUMN_NAME_TEMPLATE "template"
|
|
41
|
+
#define CC_COLUMN_NAME_LAST_UPDATED_AT "updated_at"
|
|
42
|
+
|
|
43
|
+
@interface MAURConfigurationContract : NSObject
|
|
44
|
+
|
|
45
|
+
+ (NSString*) createTableSQL;
|
|
46
|
+
|
|
47
|
+
@end
|
|
48
|
+
|
|
49
|
+
#endif /* MAURConfigurationContract_h */
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURConfigurationContract.m
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 01/12/2017.
|
|
6
|
+
// Copyright © 2017 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#import <Foundation/Foundation.h>
|
|
10
|
+
#import "MAURSQLiteHelper.h"
|
|
11
|
+
#import "MAURConfigurationContract.h"
|
|
12
|
+
|
|
13
|
+
@implementation MAURConfigurationContract
|
|
14
|
+
|
|
15
|
+
+ (NSString*) createTableSQL
|
|
16
|
+
{
|
|
17
|
+
NSArray *columns = @[
|
|
18
|
+
@{ @"name": @CC_COLUMN_NAME_ID, @"type": [SQLPrimaryKeyAutoIncColumnType sqlColumnWithType: kInteger]},
|
|
19
|
+
@{ @"name": @CC_COLUMN_NAME_RADIUS, @"type": [SQLColumnType sqlColumnWithType: kReal]},
|
|
20
|
+
@{ @"name": @CC_COLUMN_NAME_DISTANCE_FILTER, @"type": [SQLColumnType sqlColumnWithType: kReal]},
|
|
21
|
+
@{ @"name": @CC_COLUMN_NAME_DESIRED_ACCURACY, @"type": [SQLColumnType sqlColumnWithType: kReal]},
|
|
22
|
+
@{ @"name": @CC_COLUMN_NAME_DEBUG, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
23
|
+
@{ @"name": @CC_COLUMN_NAME_ACTIVITY_TYPE, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
24
|
+
@{ @"name": @CC_COLUMN_NAME_NOTIF_TITLE, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
25
|
+
@{ @"name": @CC_COLUMN_NAME_NOTIF_TEXT, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
26
|
+
@{ @"name": @CC_COLUMN_NAME_NOTIF_ICON_LARGE, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
27
|
+
@{ @"name": @CC_COLUMN_NAME_NOTIF_ICON_SMALL, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
28
|
+
@{ @"name": @CC_COLUMN_NAME_NOTIF_COLOR, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
29
|
+
@{ @"name": @CC_COLUMN_NAME_STOP_TERMINATE, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
30
|
+
@{ @"name": @CC_COLUMN_NAME_START_BOOT, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
31
|
+
@{ @"name": @CC_COLUMN_NAME_START_FOREGROUND, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
32
|
+
@{ @"name": @CC_COLUMN_NAME_STOP_ON_STILL, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
33
|
+
@{ @"name": @CC_COLUMN_NAME_LOCATION_PROVIDER, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
34
|
+
@{ @"name": @CC_COLUMN_NAME_INTERVAL, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
35
|
+
@{ @"name": @CC_COLUMN_NAME_FASTEST_INTERVAL, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
36
|
+
@{ @"name": @CC_COLUMN_NAME_ACTIVITIES_INTERVAL, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
37
|
+
@{ @"name": @CC_COLUMN_NAME_URL, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
38
|
+
@{ @"name": @CC_COLUMN_NAME_SYNC_URL, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
39
|
+
@{ @"name": @CC_COLUMN_NAME_SYNC_THRESHOLD, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
40
|
+
@{ @"name": @CC_COLUMN_NAME_HEADERS, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
41
|
+
@{ @"name": @CC_COLUMN_NAME_SAVE_BATTERY, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
42
|
+
@{ @"name": @CC_COLUMN_NAME_MAX_LOCATIONS, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
43
|
+
@{ @"name": @CC_COLUMN_NAME_PAUSE_LOCATION_UPDATES, @"type": [SQLColumnType sqlColumnWithType: kInteger]},
|
|
44
|
+
@{ @"name": @CC_COLUMN_NAME_TEMPLATE, @"type": [SQLColumnType sqlColumnWithType: kText]},
|
|
45
|
+
@{ @"name": @CC_COLUMN_NAME_LAST_UPDATED_AT, @"type": [SQLColumnType sqlColumnWithType: kInteger]}
|
|
46
|
+
];
|
|
47
|
+
|
|
48
|
+
return [MAURSQLiteHelper createTableSqlStatement:@CC_TABLE_NAME columns:columns];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//
|
|
2
|
+
// MAURDistanceFilterLocationProvider.h
|
|
3
|
+
// BackgroundGeolocation
|
|
4
|
+
//
|
|
5
|
+
// Created by Marian Hello on 14/09/2016.
|
|
6
|
+
// Copyright © 2016 mauron85. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
|
|
9
|
+
#ifndef MAURDistanceFilterLocationProvider_h
|
|
10
|
+
#define MAURDistanceFilterLocationProvider_h
|
|
11
|
+
|
|
12
|
+
#import <CoreLocation/CoreLocation.h>
|
|
13
|
+
#import "MAURAbstractLocationProvider.h"
|
|
14
|
+
#import "MAURConfig.h"
|
|
15
|
+
|
|
16
|
+
@interface MAURDistanceFilterLocationProvider : MAURAbstractLocationProvider<MAURLocationProvider>
|
|
17
|
+
|
|
18
|
+
@end
|
|
19
|
+
|
|
20
|
+
#endif /* MAURDistanceFilterLocationProvider_h */
|