This release brings abstractions, allowing code reuse between ReactNative Cordova plugin variants. As result enabling faster pace of development and bug fixing on shared codebase.
- post/sync attributes customization via
postTemplate
config prop - iOS ACTIVITY_PROVIDER (experimental)
- enable partial plugin reconfiguration
- on "activity" changed event
- Android Use gradle to choose authority (PR #136) by @jsdario
- iOS configuration persistence
Since alpha.8:
- Android automatic linking with react-native link
- iOS checkStatus returns status of location services (locationServicesEnabled)
- iOS RAW_LOCATION_PROVIDER continue to run on app terminate
Since alpha.10:
- Android checkStatus returns status of location services (locationServicesEnabled)
Since alpha.15:
- Android location parameters isFromMockProvider, mockLocationsEnabled, radius, provider
- Android Headless Task
Since alpha.16:
- iOS add background modes and permissions on postlink
- add crossplatform prepublish script execution (PR #165) by @dobrynia
Since alpha.17:
- Android allow to override version of libraries with ext declaration
Since alpha.19:
- Android Oreo experimental support
Since alpha.20:
- option to get logs by offset and filter by log level
- log uncaught exceptions
Since alpha.22:
- method forceSync
Since alpha.26:
- Android add httpHeaders validation
Since alpha.28:
- implement getCurrentLocation
- iOS implement getStationaryLocation
Since alpha.31:
- Android Gradle3 support (experimental)
Since alpha.37:
- Transforming/filtering locations in native code (by @danielgindi) More info: mauron85/background-geolocation-android#8
Since alpha.40:
- notificationsEnabled config option (by @danielgindi) More info: mauron85#269
- Allow stopping location updates on status "285 Updates Not Required" (by @danielgindi) More info: mauron85#271
Since alpha.43:
- Listen for 401 Unauthorized status codes received from http server (by @FeNoMeNa) More info: https://github.com/mauron85/react-native-background-geolocation/pull/308/files
Since alpha.44:
- typescript definitions (index.d.ts)
- Android allow override minSdkVersion
Since alpha.45:
- allow nested location props in postTemplate
Since alpha.6:
- iOS saveBatteryOnBackground defaults to false
Since alpha.8:
- shared code base with Cordova
Since alpha.11:
- Android derive sync authority and provider from applicationId
- Android remove android.permission.GET_ACCOUNTS
Since alpha.19:
- Android postlink register project in settings.gradle instead of file copying (BREAKING CHANGE - read android-setup section)
Since alpha.20:
- iOS use Android log format (BREAKING CHANGE)
Since alpha.22:
- Android remove sync delay when conditions are met
- Android consider HTTP 201 response code as succesful post
- Android obey system sync setting
Since alpha.26:
- Android show service notification only when in background
- Android remove config option startForeground (related to above)
- Android remove wake locks from both Android providers (by @grassick)
- Android remove restriction on postTemplate string only values
Since alpha.28:
- Android bring back startForeground config option (BREAKING CHANGE!)
startForeground has slightly different meaning.
If false (default) then service will create notification and promotes itself to foreground service, when client unbinds from service. This typically happens when application is moving to background. If app is moving back to foreground (becoming visible to user) service destroys notification and also stop being foreground service.
If true service will create notification and will stay in foreground at all times.
Since alpha.30:
- Android internal changes (permission handling)
- Android gradle build changes
Since alpha.38:
- Android disable notification sound and vibration on oreo (PR: #9 by @danielgindi, Closes #260)
Since alpha.4:
- iOS open location settings on iOS 10 and later (PR #158) by @asafron
Since alpha.8:
- checkStatus authorization
- Android fix for Build Failed: cannot find symbol
Since alpha.9:
- Android fix #118 - NullPointerException LocationService.onTaskRemoved
- Android permission - check and request permissions in runtime
Since alpha.13:
- Android fix allowBackup attribute conflict
Since alpha.14:
- Android fix #166 - Error: more than one library with package name 'com.google.android.gms.license'
Since alpha.15:
- Android only pass valid location parameters
- iOS reset connectivity status on stop
- iOS fix App Store Rejection - Prefs Non-Public URL Scheme
Since alpha.17:
- Android fix service accidently started with default or stored config
Since alpha.21:
- Android uninstall common module on postunlink
- Android prevent multiple registration of common project
- Android fix some nullpointer exceptions 92649c70e0ce0072464f47f1d096bef40047b8a6
- iOS update plist on changes only
Since alpha.22:
- Android add guards to prevent some race conditions
- Android config null handling
Since alpha.25:
- Android issue #185 - handle invalid configuration
Since alpha.27:
- iOS fix forceSync params
- fix #183 - Error when adding 'activity' event listener
Since alpha.28:
- iOS display debug notifications in foreground on iOS >= 10
- iOS fix error message format
- iOS activity provider stationary event
Since alpha.35:
- Android getCurrentLocation runs on background thread (PR #219 by @djereg)
- iOS Fix crash on delete all location (7392e39 by @acerbetti)
Since alpha.36:
- Android Defer start and configure until service is ready (PR: #7 Commit: 00e1314 by @danielgindi, fixes #201, #181, #172)
Since alpha.38:
- iOS Avoid taking control of UNUserNotificationCenter (PR: #268 by @danielgindi, fixes #206, #256)
Since alpha.41:
Since alpha.42:
- Android make sure mService exists when we call start or stop (PR: #17 by @ivosabev, fixes #257, #280)
Since alpha.44:
- Android automatically use gradle4 template when gradle >= 4.4 is detected (no need for gradle3EXPERIMENTAL)
- Android upgrade default libraries to version compatible with RN57
- Android fix gradle4 compile, testCompile deprecated warnings
- Android fix service crash on boot for Android 8 when startOnBoot option is used
- react native peer dependency >0.49.0
release
- iOS send http headers on background sync
- Android ConfigMapper mapToConfig missing config props (fixes #122)
- Android return location id for getLocations
- iOS fix crash when calling getConfig before configure
- checkStatus if service is running
- events [start, stop, authorization, background, foreground]
- implement all methods for both platforms
- new RAW_LOCATION_PROVIDER
- start and stop methods doesn't accept callback (use event listeners instead)
- for background syncing syncUrl option is required
- on Android DISTANCE_FILTER_PROVIDER now accept arbitrary values (before only 10, 100, 1000)
- all plugin constants are in directly BackgroundGeolocation namespace. (check index.js)
- plugin can be started without executing configure (stored settings or defaults will be used)
- location property locationId renamed to just id
- iOS pauseLocationUpdates now default to false (becuase iOS docs now states that you need to restart manually if you set it to true)
- iOS finish method replaced with startTask and endTask
- Android location sync should also be completed on 201 status code (PR #71)
- iOS implementation for isLocationEnabled (PR #92)
- (tpisto) iOS compile error in React Native 0.48.x (fixes #108)
- RN 0.47 compatibility (fixes #95)
- iOS fixing build issue #44
- iOS RN 0.40 compatibility
- Android fix issue #10
- Android fix crash on destroy when plugin was not configured
- fix Android issue #10 - crash on refresh
- Android onStationary
- Android getLogEntries
- Android location filtering
- Android project directory structure (please read updated install instructions)
- Android db logging instead of file
- fix config not persisted
- tmp fix Android time long to int conversion
- Android isLocationEnabled
- Android showAppSettings
- Android showLocationSettings
- Android getLocations
- Android getConfig
- upgrading plugin to match cordova 2.2.0-alpha.6
- fix iOS crash on stop
- initial iOS implementation
- initial Android implementation