@josuelmm/cordova-background-geolocation 2.3.5

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.
Files changed (239) hide show
  1. package/.npmignore +23 -0
  2. package/CHANGELOG.md +787 -0
  3. package/CONTRIBUTORS.md +15 -0
  4. package/HISTORY.md +734 -0
  5. package/LICENSE +191 -0
  6. package/README.md +125 -0
  7. package/RELEASE.MD +5 -0
  8. package/android/CDVBackgroundGeolocation/src/main/AndroidManifest.xml +23 -0
  9. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/HandlerWrapper.java +18 -0
  10. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/JavaScriptInterface.java +22 -0
  11. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/JsEvaluator.java +133 -0
  12. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/JsFunctionCallFormatter.java +37 -0
  13. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/WebViewWrapper.java +71 -0
  14. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/interfaces/CallJavaResultInterface.java +8 -0
  15. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/interfaces/HandlerWrapperInterface.java +5 -0
  16. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/interfaces/JsCallback.java +10 -0
  17. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/interfaces/JsEvaluatorInterface.java +18 -0
  18. package/android/CDVBackgroundGeolocation/src/main/java/com/evgenii/jsevaluator/interfaces/WebViewWrapperInterface.java +14 -0
  19. package/android/CDVBackgroundGeolocation/src/main/java/com/marianhello/bgloc/cordova/ConfigMapper.java +148 -0
  20. package/android/CDVBackgroundGeolocation/src/main/java/com/marianhello/bgloc/cordova/PluginRegistry.java +25 -0
  21. package/android/CDVBackgroundGeolocation/src/main/java/com/marianhello/bgloc/cordova/headless/JsEvaluatorTaskRunner.java +53 -0
  22. package/android/CDVBackgroundGeolocation/src/main/java/com/tenforwardconsulting/bgloc/cordova/BackgroundGeolocationPlugin.java +603 -0
  23. package/android/CDVBackgroundGeolocation/src/main/res/values/strings.xml +4 -0
  24. package/android/CDVBackgroundGeolocation/src/test/java/com/marianhello/ConfigMapperTest.java +208 -0
  25. package/android/common/src/androidTest/java/com/marianhello/bgloc/BackgroundGeolocationFacadeTest.java +45 -0
  26. package/android/common/src/androidTest/java/com/marianhello/bgloc/BatchManagerTest.java +570 -0
  27. package/android/common/src/androidTest/java/com/marianhello/bgloc/ConfigTest.java +76 -0
  28. package/android/common/src/androidTest/java/com/marianhello/bgloc/ContentProviderLocationDAOTest.java +437 -0
  29. package/android/common/src/androidTest/java/com/marianhello/bgloc/DBLogReaderTest.java +95 -0
  30. package/android/common/src/androidTest/java/com/marianhello/bgloc/LocationContentProviderTest.java +159 -0
  31. package/android/common/src/androidTest/java/com/marianhello/bgloc/LocationServiceProxyTest.java +161 -0
  32. package/android/common/src/androidTest/java/com/marianhello/bgloc/LocationServiceTest.java +247 -0
  33. package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteConfigurationDAOTest.java +200 -0
  34. package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteLocationDAOTest.java +457 -0
  35. package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteLocationDAOThreadTest.java +96 -0
  36. package/android/common/src/androidTest/java/com/marianhello/bgloc/SQLiteOpenHelperTest.java +225 -0
  37. package/android/common/src/androidTest/java/com/marianhello/bgloc/TestPluginDelegate.java +46 -0
  38. package/android/common/src/androidTest/java/com/marianhello/bgloc/TestResourceResolver.java +14 -0
  39. package/android/common/src/androidTest/java/com/marianhello/bgloc/provider/MockLocationProvider.java +50 -0
  40. package/android/common/src/androidTest/java/com/marianhello/bgloc/provider/TestLocationProviderFactory.java +17 -0
  41. package/android/common/src/androidTest/java/com/marianhello/bgloc/sqlite/SQLiteOpenHelper10.java +92 -0
  42. package/android/common/src/androidTest/java/com/marianhello/bgloc/test/LocationProviderTestCase.java +107 -0
  43. package/android/common/src/androidTest/java/com/marianhello/bgloc/test/TestConstants.java +5 -0
  44. package/android/common/src/main/AndroidManifest.xml +72 -0
  45. package/android/common/src/main/java/com/marianhello/bgloc/BackgroundGeolocationFacade.java +523 -0
  46. package/android/common/src/main/java/com/marianhello/bgloc/BootCompletedReceiver.java +59 -0
  47. package/android/common/src/main/java/com/marianhello/bgloc/Config.java +652 -0
  48. package/android/common/src/main/java/com/marianhello/bgloc/ConnectivityListener.java +5 -0
  49. package/android/common/src/main/java/com/marianhello/bgloc/HttpPostService.java +224 -0
  50. package/android/common/src/main/java/com/marianhello/bgloc/LocationManager.java +138 -0
  51. package/android/common/src/main/java/com/marianhello/bgloc/PluginDelegate.java +19 -0
  52. package/android/common/src/main/java/com/marianhello/bgloc/PluginException.java +38 -0
  53. package/android/common/src/main/java/com/marianhello/bgloc/PostLocationTask.java +188 -0
  54. package/android/common/src/main/java/com/marianhello/bgloc/ResourceResolver.java +55 -0
  55. package/android/common/src/main/java/com/marianhello/bgloc/data/AbstractLocationTemplate.java +69 -0
  56. package/android/common/src/main/java/com/marianhello/bgloc/data/ArrayListLocationTemplate.java +88 -0
  57. package/android/common/src/main/java/com/marianhello/bgloc/data/BackgroundActivity.java +108 -0
  58. package/android/common/src/main/java/com/marianhello/bgloc/data/BackgroundLocation.java +994 -0
  59. package/android/common/src/main/java/com/marianhello/bgloc/data/ConfigurationDAO.java +13 -0
  60. package/android/common/src/main/java/com/marianhello/bgloc/data/DAOFactory.java +17 -0
  61. package/android/common/src/main/java/com/marianhello/bgloc/data/HashMapLocationTemplate.java +82 -0
  62. package/android/common/src/main/java/com/marianhello/bgloc/data/LocationDAO.java +22 -0
  63. package/android/common/src/main/java/com/marianhello/bgloc/data/LocationTemplate.java +12 -0
  64. package/android/common/src/main/java/com/marianhello/bgloc/data/LocationTemplateFactory.java +65 -0
  65. package/android/common/src/main/java/com/marianhello/bgloc/data/LocationTransform.java +19 -0
  66. package/android/common/src/main/java/com/marianhello/bgloc/data/provider/ContentProviderLocationDAO.java +395 -0
  67. package/android/common/src/main/java/com/marianhello/bgloc/data/provider/LocationContentProvider.java +321 -0
  68. package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationContract.java +76 -0
  69. package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteConfigurationDAO.java +160 -0
  70. package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationContract.java +112 -0
  71. package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteLocationDAO.java +506 -0
  72. package/android/common/src/main/java/com/marianhello/bgloc/data/sqlite/SQLiteOpenHelper.java +151 -0
  73. package/android/common/src/main/java/com/marianhello/bgloc/headless/AbstractTaskRunner.java +15 -0
  74. package/android/common/src/main/java/com/marianhello/bgloc/headless/ActivityTask.java +48 -0
  75. package/android/common/src/main/java/com/marianhello/bgloc/headless/JsCallback.java +10 -0
  76. package/android/common/src/main/java/com/marianhello/bgloc/headless/LocationTask.java +60 -0
  77. package/android/common/src/main/java/com/marianhello/bgloc/headless/StationaryTask.java +25 -0
  78. package/android/common/src/main/java/com/marianhello/bgloc/headless/Task.java +8 -0
  79. package/android/common/src/main/java/com/marianhello/bgloc/headless/TaskRunner.java +5 -0
  80. package/android/common/src/main/java/com/marianhello/bgloc/headless/TaskRunnerFactory.java +8 -0
  81. package/android/common/src/main/java/com/marianhello/bgloc/provider/AbstractLocationProvider.java +171 -0
  82. package/android/common/src/main/java/com/marianhello/bgloc/provider/ActivityRecognitionLocationProvider.java +282 -0
  83. package/android/common/src/main/java/com/marianhello/bgloc/provider/DistanceFilterLocationProvider.java +610 -0
  84. package/android/common/src/main/java/com/marianhello/bgloc/provider/LocationProvider.java +32 -0
  85. package/android/common/src/main/java/com/marianhello/bgloc/provider/LocationProviderFactory.java +47 -0
  86. package/android/common/src/main/java/com/marianhello/bgloc/provider/ProviderDelegate.java +12 -0
  87. package/android/common/src/main/java/com/marianhello/bgloc/provider/RawLocationProvider.java +145 -0
  88. package/android/common/src/main/java/com/marianhello/bgloc/service/LocationService.java +16 -0
  89. package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceImpl.java +749 -0
  90. package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceInfo.java +6 -0
  91. package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceInfoImpl.java +41 -0
  92. package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceIntentBuilder.java +203 -0
  93. package/android/common/src/main/java/com/marianhello/bgloc/service/LocationServiceProxy.java +130 -0
  94. package/android/common/src/main/java/com/marianhello/bgloc/sync/AccountHelper.java +39 -0
  95. package/android/common/src/main/java/com/marianhello/bgloc/sync/Authenticator.java +68 -0
  96. package/android/common/src/main/java/com/marianhello/bgloc/sync/AuthenticatorService.java +28 -0
  97. package/android/common/src/main/java/com/marianhello/bgloc/sync/BatchManager.java +278 -0
  98. package/android/common/src/main/java/com/marianhello/bgloc/sync/NotificationHelper.java +148 -0
  99. package/android/common/src/main/java/com/marianhello/bgloc/sync/SyncAdapter.java +249 -0
  100. package/android/common/src/main/java/com/marianhello/bgloc/sync/SyncService.java +68 -0
  101. package/android/common/src/main/java/com/marianhello/logging/DBLogReader.java +203 -0
  102. package/android/common/src/main/java/com/marianhello/logging/LogEntry.java +99 -0
  103. package/android/common/src/main/java/com/marianhello/logging/LoggerManager.java +70 -0
  104. package/android/common/src/main/java/com/marianhello/logging/UncaughtExceptionLogger.java +36 -0
  105. package/android/common/src/main/java/com/marianhello/utils/CloneHelper.java +22 -0
  106. package/android/common/src/main/java/com/marianhello/utils/Convert.java +56 -0
  107. package/android/common/src/main/java/com/marianhello/utils/TextUtils.java +72 -0
  108. package/android/common/src/main/java/com/marianhello/utils/ToneGenerator.java +68 -0
  109. package/android/common/src/main/java/org/apache/commons/io/Charsets.java +153 -0
  110. package/android/common/src/main/java/org/apache/commons/io/input/ReversedLinesFileReader.java +344 -0
  111. package/android/common/src/main/java/org/chromium/content/browser/ThreadUtils.java +134 -0
  112. package/android/common/src/main/java/ru/andremoniy/sqlbuilder/SqlExpression.java +398 -0
  113. package/android/common/src/main/java/ru/andremoniy/sqlbuilder/SqlSelectStatement.java +671 -0
  114. package/android/common/src/main/java/ru/andremoniy/sqlbuilder/SqlStatement.java +29 -0
  115. package/android/common/src/main/java/ru/andremoniy/utils/TextUtils.java +61 -0
  116. package/android/common/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  117. package/android/common/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  118. package/android/common/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  119. package/android/common/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  120. package/android/common/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  121. package/android/common/src/main/res/values/strings.xml +4 -0
  122. package/android/common/src/main/res/xml/authenticator.xml +7 -0
  123. package/android/common/src/main/res/xml/syncadapter.xml +9 -0
  124. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/ArrayListLocationTemplateTest.java +82 -0
  125. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/BackgroundLocationTest.java +128 -0
  126. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/ConfigTest.java +191 -0
  127. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/DBLogReaderTest.java +37 -0
  128. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/HashMapLocationTemplateTest.java +216 -0
  129. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/HttpPostServiceTest.java +223 -0
  130. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/LocationTemplateFactoryTest.java +50 -0
  131. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/PostLocationTaskTest.java +180 -0
  132. package/android/common/src/test/java/com/marianhello/backgroundgeolocation/TestHelper.java +16 -0
  133. package/android/dependencies.gradle +13 -0
  134. package/ios/CDVBackgroundGeolocation/CDVBackgroundGeolocation.h +41 -0
  135. package/ios/CDVBackgroundGeolocation/CDVBackgroundGeolocation.m +526 -0
  136. package/ios/common/BackgroundGeolocation/CocoaLumberjack.h +1945 -0
  137. package/ios/common/BackgroundGeolocation/CocoaLumberjack.m +5255 -0
  138. package/ios/common/BackgroundGeolocation/FMDB.h +2357 -0
  139. package/ios/common/BackgroundGeolocation/FMDB.m +2672 -0
  140. package/ios/common/BackgroundGeolocation/FMDBLogger.h +42 -0
  141. package/ios/common/BackgroundGeolocation/FMDBLogger.m +264 -0
  142. package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.h +41 -0
  143. package/ios/common/BackgroundGeolocation/INTULocationManager/INTUHeadingRequest.m +68 -0
  144. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager+Internal.h +33 -0
  145. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.h +178 -0
  146. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationManager.m +1025 -0
  147. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.h +103 -0
  148. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequest.m +238 -0
  149. package/ios/common/BackgroundGeolocation/INTULocationManager/INTULocationRequestDefines.h +163 -0
  150. package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.h +39 -0
  151. package/ios/common/BackgroundGeolocation/INTULocationManager/INTURequestIDGenerator.m +37 -0
  152. package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.h +51 -0
  153. package/ios/common/BackgroundGeolocation/MAURAbstractLocationProvider.m +53 -0
  154. package/ios/common/BackgroundGeolocation/MAURActivity.h +23 -0
  155. package/ios/common/BackgroundGeolocation/MAURActivity.m +52 -0
  156. package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.h +18 -0
  157. package/ios/common/BackgroundGeolocation/MAURActivityLocationProvider.m +202 -0
  158. package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.h +60 -0
  159. package/ios/common/BackgroundGeolocation/MAURBackgroundGeolocationFacade.m +638 -0
  160. package/ios/common/BackgroundGeolocation/MAURBackgroundSync.h +34 -0
  161. package/ios/common/BackgroundGeolocation/MAURBackgroundSync.m +185 -0
  162. package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.h +25 -0
  163. package/ios/common/BackgroundGeolocation/MAURBackgroundTaskManager.m +105 -0
  164. package/ios/common/BackgroundGeolocation/MAURConfig.h +74 -0
  165. package/ios/common/BackgroundGeolocation/MAURConfig.m +485 -0
  166. package/ios/common/BackgroundGeolocation/MAURConfigurationContract.h +49 -0
  167. package/ios/common/BackgroundGeolocation/MAURConfigurationContract.m +51 -0
  168. package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.h +20 -0
  169. package/ios/common/BackgroundGeolocation/MAURDistanceFilterLocationProvider.m +514 -0
  170. package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.h +17 -0
  171. package/ios/common/BackgroundGeolocation/MAURGeolocationOpenHelper.m +97 -0
  172. package/ios/common/BackgroundGeolocation/MAURLocation.h +59 -0
  173. package/ios/common/BackgroundGeolocation/MAURLocation.m +349 -0
  174. package/ios/common/BackgroundGeolocation/MAURLocationContract.h +34 -0
  175. package/ios/common/BackgroundGeolocation/MAURLocationContract.m +35 -0
  176. package/ios/common/BackgroundGeolocation/MAURLocationManager.h +53 -0
  177. package/ios/common/BackgroundGeolocation/MAURLocationManager.m +287 -0
  178. package/ios/common/BackgroundGeolocation/MAURLogReader.h +26 -0
  179. package/ios/common/BackgroundGeolocation/MAURLogReader.m +122 -0
  180. package/ios/common/BackgroundGeolocation/MAURLogging.h +19 -0
  181. package/ios/common/BackgroundGeolocation/MAURPostLocationTask.h +40 -0
  182. package/ios/common/BackgroundGeolocation/MAURPostLocationTask.m +250 -0
  183. package/ios/common/BackgroundGeolocation/MAURProviderDelegate.h +52 -0
  184. package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.h +18 -0
  185. package/ios/common/BackgroundGeolocation/MAURRawLocationProvider.m +129 -0
  186. package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.h +26 -0
  187. package/ios/common/BackgroundGeolocation/MAURSQLiteConfigurationDAO.m +278 -0
  188. package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.h +57 -0
  189. package/ios/common/BackgroundGeolocation/MAURSQLiteHelper.m +93 -0
  190. package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.h +38 -0
  191. package/ios/common/BackgroundGeolocation/MAURSQLiteLocationDAO.m +380 -0
  192. package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.h +32 -0
  193. package/ios/common/BackgroundGeolocation/MAURSQLiteOpenHelper.m +276 -0
  194. package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.h +20 -0
  195. package/ios/common/BackgroundGeolocation/MAURUncaughtExceptionLogger.m +62 -0
  196. package/ios/common/BackgroundGeolocation/Reachability.h +102 -0
  197. package/ios/common/BackgroundGeolocation/Reachability.m +475 -0
  198. package/ios/common/BackgroundGeolocation/SOMotionDetector/CHANGELOG.md +2 -0
  199. package/ios/common/BackgroundGeolocation/SOMotionDetector/LICENSE +21 -0
  200. package/ios/common/BackgroundGeolocation/SOMotionDetector/README.md +135 -0
  201. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOLocationManager.h +80 -0
  202. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOLocationManager.m +147 -0
  203. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionActivity.h +30 -0
  204. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionActivity.m +42 -0
  205. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionDetector.h +99 -0
  206. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOMotionDetector.m +327 -0
  207. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOStepDetector.h +44 -0
  208. package/ios/common/BackgroundGeolocation/SOMotionDetector/SOStepDetector.m +94 -0
  209. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/README.md +170 -0
  210. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.h +55 -0
  211. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/ext/NSString+ZIMString.m +47 -0
  212. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlDataManipulationCommand.h +27 -0
  213. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.h +250 -0
  214. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlExpression.m +259 -0
  215. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.h +360 -0
  216. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlSelectStatement.m +427 -0
  217. package/ios/common/BackgroundGeolocation/SQLQueryBuilder/sql/ZIMSqlStatement.h +37 -0
  218. package/ios/common/BackgroundGeolocation.xcodeproj/project.pbxproj +760 -0
  219. package/ios/common/BackgroundGeolocationTests/Info.plist +24 -0
  220. package/ios/common/BackgroundGeolocationTests/MAURBackgroundLocationTest.m +185 -0
  221. package/ios/common/BackgroundGeolocationTests/MAURConfigTest.m +161 -0
  222. package/ios/common/BackgroundGeolocationTests/MAURGeolocationOpenHelperTest.m +102 -0
  223. package/ios/common/BackgroundGeolocationTests/MAURLocationTest.m +216 -0
  224. package/ios/common/BackgroundGeolocationTests/MAURLocationUploaderTest.m +55 -0
  225. package/ios/common/BackgroundGeolocationTests/MAURLogReaderTest.m +43 -0
  226. package/ios/common/BackgroundGeolocationTests/MAURSQLiteConfigurationDAOTest.m +102 -0
  227. package/ios/common/BackgroundGeolocationTests/MAURSQLiteHelperTest.m +41 -0
  228. package/ios/common/BackgroundGeolocationTests/MAURSQLiteLocationDAOTests.m +240 -0
  229. package/ios/common/BackgroundGeolocationTests/MAURSQLiteLocationDAOThreadTest.m +84 -0
  230. package/ios/common/BackgroundGeolocationTests/MAURSQLiteOpenHelperTest.m +144 -0
  231. package/ios/common/CONTRIBUTORS.md +10 -0
  232. package/ios/common/LICENSE +191 -0
  233. package/ios/common/README.md +7 -0
  234. package/ios/common/scripts/xcode-refactor.js +184 -0
  235. package/package.json +44 -0
  236. package/plugin.xml +355 -0
  237. package/www/BackgroundGeolocation.d.ts +910 -0
  238. package/www/BackgroundGeolocation.js +247 -0
  239. package/www/radio.js +177 -0
@@ -0,0 +1,247 @@
1
+ /*
2
+ According to apache license
3
+
4
+ This is fork of christocracy cordova-plugin-background-geolocation plugin
5
+ https://github.com/christocracy/cordova-plugin-background-geolocation
6
+
7
+ Differences to original version:
8
+
9
+ 1. new method isLocationEnabled
10
+ */
11
+
12
+ var exec = require('cordova/exec');
13
+ var channel = require('cordova/channel');
14
+ var radio = require('./radio');
15
+ var TAG = 'CDVBackgroundGeolocation';
16
+
17
+ var assert = function (condition, msgArray) {
18
+ if (!condition) {
19
+ throw new Error(msgArray.join('') || 'Assertion failed');
20
+ }
21
+ }
22
+
23
+ var eventHandler = function (event) {
24
+ radio(event.name).broadcast(event.payload);
25
+ };
26
+
27
+ var errorHandler = function (error) {
28
+ radio('error').broadcast(error);
29
+ };
30
+
31
+ var unsubscribeAll = function (channels) {
32
+ channels.forEach(function(channel) {
33
+ var topic = radio(channel);
34
+ var callbacks = [].concat.apply([], topic.channels[channel]); // flatten array
35
+ topic.unsubscribe.apply(topic, callbacks);
36
+ });
37
+ }
38
+
39
+ var execWithPromise = function (suceess, failure, method, data) {
40
+ if (!suceess && !failure) {
41
+ return new Promise(function (resolve, reject) {
42
+ exec(resolve, reject, 'BackgroundGeolocation', method, data);
43
+ });
44
+ }
45
+ exec(suceess || function() {}, failure || function() {}, 'BackgroundGeolocation', method, data || []);
46
+ }
47
+
48
+ var BackgroundGeolocation = {
49
+ events: [
50
+ 'location',
51
+ 'stationary',
52
+ 'activity',
53
+ 'start',
54
+ 'stop',
55
+ 'error',
56
+ 'authorization',
57
+ 'foreground',
58
+ 'background',
59
+ 'abort_requested',
60
+ 'http_authorization'
61
+ ],
62
+
63
+ DISTANCE_FILTER_PROVIDER: 0,
64
+ ACTIVITY_PROVIDER: 1,
65
+ RAW_PROVIDER: 2,
66
+
67
+ BACKGROUND_MODE: 0,
68
+ FOREGROUND_MODE: 1,
69
+
70
+ NOT_AUTHORIZED: 0,
71
+ AUTHORIZED: 1,
72
+ AUTHORIZED_FOREGROUND: 2,
73
+
74
+ HIGH_ACCURACY: 0,
75
+ MEDIUM_ACCURACY: 100,
76
+ LOW_ACCURACY: 1000,
77
+ PASSIVE_ACCURACY: 10000,
78
+
79
+ LOG_ERROR: 'ERROR',
80
+ LOG_WARN: 'WARN',
81
+ LOG_INFO: 'INFO',
82
+ LOG_DEBUG: 'DEBUG',
83
+ LOG_TRACE: 'TRACE',
84
+
85
+ PERMISSION_DENIED: 1,
86
+ LOCATION_UNAVAILABLE: 2,
87
+ TIMEOUT: 3,
88
+
89
+ configure: function (config, success, failure) {
90
+ return execWithPromise(success,
91
+ failure,
92
+ 'configure',
93
+ [config]
94
+ );
95
+ },
96
+
97
+ start: function () {
98
+ return execWithPromise(null, null, 'start');
99
+ },
100
+
101
+ stop: function () {
102
+ return execWithPromise(null, null, 'stop');
103
+ },
104
+
105
+ switchMode: function (mode, success, failure) {
106
+ return execWithPromise(success,
107
+ failure,
108
+ 'switchMode', [mode]);
109
+ },
110
+
111
+ getConfig: function (success, failure) {
112
+ return execWithPromise(success,
113
+ failure,
114
+ 'getConfig');
115
+ },
116
+
117
+ /**
118
+ * Returns current stationaryLocation if available. null if not
119
+ */
120
+ getStationaryLocation: function (success, failure) {
121
+ return execWithPromise(success,
122
+ failure,
123
+ 'getStationaryLocation');
124
+ },
125
+
126
+ showAppSettings: function () {
127
+ return execWithPromise(null,
128
+ null,
129
+ 'showAppSettings');
130
+ },
131
+
132
+ showLocationSettings: function () {
133
+ return execWithPromise(null,
134
+ null,
135
+ 'showLocationSettings');
136
+ },
137
+
138
+ getLocations: function (success, failure) {
139
+ return execWithPromise(success,
140
+ failure,
141
+ 'getLocations');
142
+ },
143
+
144
+ getValidLocations: function (success, failure) {
145
+ return execWithPromise(success,
146
+ failure,
147
+ 'getValidLocations');
148
+ },
149
+
150
+ getValidLocationsAndDelete: function (success, failure) {
151
+ return execWithPromise(success,
152
+ failure,
153
+ 'getValidLocationsAndDelete');
154
+ },
155
+
156
+ deleteLocation: function (locationId, success, failure) {
157
+ return execWithPromise(success,
158
+ failure,
159
+ 'deleteLocation', [locationId]);
160
+ },
161
+
162
+ deleteAllLocations: function (success, failure) {
163
+ return execWithPromise(success,
164
+ failure,
165
+ 'deleteAllLocations');
166
+ },
167
+
168
+ getCurrentLocation: function(success, failure, options) {
169
+ options = options || {};
170
+ return execWithPromise(success,
171
+ failure,
172
+ 'getCurrentLocation', [options.timeout, options.maximumAge, options.enableHighAccuracy]);
173
+ },
174
+
175
+ getLogEntries: function(limit, offset = 0, minLevel = "DEBUG", success, failure) {
176
+ return execWithPromise(success,
177
+ failure,
178
+ 'getLogEntries', [limit, offset, minLevel]);
179
+ },
180
+
181
+ checkStatus: function (success, failure) {
182
+ return execWithPromise(success,
183
+ failure,
184
+ 'checkStatus')
185
+ },
186
+
187
+ startTask: function (success, failure) {
188
+ return execWithPromise(success,
189
+ failure,
190
+ 'startTask');
191
+ },
192
+
193
+ endTask: function (taskKey, success, failure) {
194
+ return execWithPromise(success,
195
+ failure,
196
+ 'endTask', [taskKey]);
197
+ },
198
+
199
+ headlessTask: function (func, success, failure) {
200
+ return execWithPromise(success,
201
+ failure,
202
+ 'registerHeadlessTask', [func.toString()]);
203
+ },
204
+
205
+ forceSync: function (success, failure) {
206
+ return execWithPromise(success,
207
+ failure,
208
+ 'forceSync');
209
+ },
210
+
211
+ on: function (event, callbackFn) {
212
+ assert(this.events.indexOf(event) > -1, [TAG, '#on unknown event "' + event + '"']);
213
+ if (!callbackFn) {
214
+ return radio(event);
215
+ }
216
+ radio(event).subscribe(callbackFn);
217
+ return {
218
+ remove: function () {
219
+ radio(event).unsubscribe(callbackFn);
220
+ }
221
+ };
222
+ },
223
+
224
+ removeAllListeners: function (event) {
225
+ if (!event) {
226
+ unsubscribeAll(this.events);
227
+ return void 0;
228
+ }
229
+ if (this.events.indexOf(event) < 0) {
230
+ console.log('[WARN] ' + TAG + '#removeAllListeners for unknown event "' + event + '"');
231
+ return void 0;
232
+ }
233
+ unsubscribeAll([event]);
234
+ }
235
+ };
236
+
237
+ channel.deviceready.subscribe(function () {
238
+ // register app global listeners
239
+ exec(eventHandler,
240
+ errorHandler,
241
+ 'BackgroundGeolocation',
242
+ 'addEventListener'
243
+ );
244
+ });
245
+
246
+
247
+ module.exports = BackgroundGeolocation;
package/www/radio.js ADDED
@@ -0,0 +1,177 @@
1
+ /**
2
+ Radio.js - Chainable, Dependency Free Publish/Subscribe for Javascript
3
+ http://radio.uxder.com
4
+ Author: Scott Murphy 2011
5
+ twitter: @hellocreation, github: uxder
6
+
7
+ Permission is hereby granted, free of charge, to any person
8
+ obtaining a copy of this software and associated documentation
9
+ files (the "Software"), to deal in the Software without
10
+ restriction, including without limitation the rights to use,
11
+ copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ copies of the Software, and to permit persons to whom the
13
+ Software is furnished to do so, subject to the following
14
+ conditions:
15
+
16
+ The above copyright notice and this permission notice shall be
17
+ included in all copies or substantial portions of the Software.
18
+
19
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
21
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
23
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
24
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
25
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
26
+ OTHER DEALINGS IN THE SOFTWARE.
27
+ */
28
+ (function (name, global, definition) {
29
+ if (typeof module !== 'undefined') module.exports = definition(name, global);
30
+ else if (typeof define === 'function' && typeof define.amd === 'object') define(definition);
31
+ else global[name] = definition(name, global);
32
+ })('radio', this, function (name, global) {
33
+
34
+ "use strict";
35
+
36
+ /**
37
+ * Main Wrapper for radio.$ and create a function radio to accept the channelName
38
+ * @param {String} channelName topic of event
39
+ */
40
+ function radio(channelName) {
41
+ arguments.length ? radio.$.channel(channelName) : radio.$.reset();
42
+ return radio.$;
43
+ }
44
+
45
+ radio.$ = {
46
+ version: '0.2',
47
+ channelName: "",
48
+ channels: [],
49
+
50
+ /**
51
+ * Reset global state, by removing all channels
52
+ * @example
53
+ * radio()
54
+ */
55
+ reset: function() {
56
+ radio.$.channelName = "";
57
+ radio.$.channels = [];
58
+ },
59
+
60
+ /**
61
+ * Broadcast (publish)
62
+ * Iterate through all listeners (callbacks) in current channel and pass arguments to subscribers
63
+ * @param arguments data to be sent to listeners
64
+ * @example
65
+ * //basic usage
66
+ * radio('channel1').broadcast('my message');
67
+ * //send an unlimited number of parameters
68
+ * radio('channel2').broadcast(param1, param2, param3 ... );
69
+ */
70
+ broadcast: function() {
71
+ // use slice() so as to loop on a copy of channels list as it might be changed while looping
72
+ var i, c = this.channels[this.channelName].slice(),
73
+ l = c.length,
74
+ subscriber, callback, context;
75
+ //iterate through current channel and run each subscriber
76
+ for (i = 0; i < l; i++) {
77
+ subscriber = c[i];
78
+ //if subscriber was an array, set the callback and context.
79
+ if ((typeof(subscriber) === 'object') && (subscriber.length)) {
80
+ callback = subscriber[0];
81
+ //if user set the context, set it to the context otherwise, it is a globally scoped function
82
+ context = subscriber[1] || global;
83
+ }
84
+ callback.apply(context, arguments);
85
+ }
86
+ return this;
87
+ },
88
+
89
+ /**
90
+ * Create the channel if it doesn't exist and set the current channel/event name
91
+ * @param {String} name the name of the channel
92
+ * @example
93
+ * radio('channel1');
94
+ */
95
+ channel: function(name) {
96
+ var c = this.channels;
97
+ //create a new channel if it doesn't exists
98
+ if (!c[name]) c[name] = [];
99
+ this.channelName = name;
100
+ return this;
101
+ },
102
+
103
+ /**
104
+ * Add Subscriber to channel
105
+ * Take the arguments and add it to the this.channels array.
106
+ * @param {Function|Array} arguments list of callbacks or arrays[callback, context] separated by commas
107
+ * @example
108
+ * //basic usage
109
+ * var callback = function() {};
110
+ * radio('channel1').subscribe(callback);
111
+ *
112
+ * //subscribe an endless amount of callbacks
113
+ * radio('channel1').subscribe(callback, callback2, callback3 ...);
114
+ *
115
+ * //adding callbacks with context
116
+ * radio('channel1').subscribe([callback, context],[callback1, context], callback3);
117
+ *
118
+ * //subscribe by chaining
119
+ * radio('channel1').subscribe(callback).radio('channel2').subscribe(callback).subscribe(callback2);
120
+ */
121
+ subscribe: function() {
122
+ var a = arguments,
123
+ c = this.channels[this.channelName],
124
+ i, l = a.length,
125
+ p, ai = [];
126
+
127
+ //run through each arguments and subscribe it to the channel
128
+ for (i = 0; i < l; i++) {
129
+ ai = a[i];
130
+ //if the user sent just a function, wrap the fucntion in an array [function]
131
+ p = (typeof(ai) === "function") ? [ai] : ai;
132
+ if ((typeof(p) === 'object') && (p.length)) c.push(p);
133
+ }
134
+ return this;
135
+ },
136
+
137
+ /**
138
+ * Remove subscriber from channel
139
+ * Take arguments with functions and unsubscribe it if there is a match against existing subscribers.
140
+ * @param {Function} arguments callbacks separated by commas
141
+ * @example
142
+ * //basic usage
143
+ * radio('channel1').unsubscribe(callback);
144
+ * //you can unsubscribe as many callbacks as you want
145
+ * radio('channel1').unsubscribe(callback, callback2, callback3 ...);
146
+ * //removing callbacks with context is the same
147
+ * radio('channel1').subscribe([callback, context]).unsubscribe(callback);
148
+ */
149
+ unsubscribe: function() {
150
+ var a = arguments,
151
+ i, j, c = this.channels[this.channelName],
152
+ l = a.length,
153
+ cl = c.length,
154
+ offset = 0,
155
+ jo;
156
+ //loop through each argument
157
+ for (i = 0; i < l; i++) {
158
+ //need to reset vars that change as the channel array items are removed
159
+ offset = 0;
160
+ cl = c.length;
161
+ //loop through the channel
162
+ for (j = 0; j < cl; j++) {
163
+ jo = j - offset;
164
+ //if there is a match with the argument and the channel function, unsubscribe it from the channel array
165
+ if (c[jo][0] === a[i]) {
166
+ //unsubscribe matched item from the channel array
167
+ c.splice(jo, 1);
168
+ offset++;
169
+ }
170
+ }
171
+ }
172
+ return this;
173
+ }
174
+ };
175
+
176
+ return radio;
177
+ });