Releases: GeoTecINIT/nativescript-context-apis
Wi-Fi: Compatibility with Android API < 30
This release includes no breaking API changes
This version fixes a problem by which the Wi-Fi scanner was not working properly in Android phones running below Android 11.
No further action is required from the developer side after installing the patched version.
Availability in Zenodo
This release contains no code changes. It just publishes the software artifact to Zenodo.
Fix need for BLE aar install
This release contains no breaking changes
Fixes the need to include the BLE aar to run an app with this plugin.
Updating from 4.1.0 is highly recommended.
Full Changelog: v4.1.0...v4.1.1
Wi-Fi & BLE scanning
This release does not introduce any breaking changes
Instead, it comes with two new big features:
- Nearby Wi-Fi AP scanning (i.e., Wi-Fi fingerprinting)
- Nearby BLE devices scanning
Using the new features is completely optional and should not affect any existing apps. Please, carefully read the updated install instructions in case you want to incorporate this features to new or existing apps.
What's Changed
- Support for Wi-Fi scanning (a.k.a. Wi-Fi fingerprinting) by @agonper in #36
- Support for BLE scanning by @agonper in #37
Full Changelog: v4.0.0...v4.1.0
Optional activity recognition permission
What's Changed
Full Changelog: v3.0.1...v4.0.0
v3.0.1
What has changed
This version includes a fix to the recognizer start status detection, for devices running Android M+. Different flags were being used to consider if a PendingIntent was previously created (and in use) or not.
Full Changelog: v3.0.0...v3.0.1
NativeScript 8 Support + Android 12
This release includes full support for NativeScript 8 and Android 12.
Warning: This release contains breaking changes
To be more specific:
- Migration to the latest version of the scoped nativescript-geolocation plugin. This means that you'll have to update your
AndroidManifest.xml
inside theApp_resources
folder to include the permissions needed by your app (check the README for more). - Migration to the latest version of the scoped nativescript-couchbase plugin, which under the hood uses CouchBase Lite 2.8. This means that you'll have to increase your min SDK number to 22 (Android Lollipop 5.1). If you need to work with older Android versions, you must stick with the v2 of this plugin, which still works with NS8 although it does not benefit from its latest optimizations.
- Migration to RxJS 7. In case you are developing an NS NG app using the latest version of Angular, this is good news for you! Bear in mind that RxJS 7 is not fully compatible with RxJS 6. So you'll need to upgrade the RxJS version too.
This release also includes many security fixes and makes the plugin ready for building apps with targetSdk 31, by including the required mutability flags to the PendingIntents.
NativeScript 7 Support
This release introduces support for NativeScript 7.
It is not backwards compatible with NativeScript 6.
However, it does not introduce any API breaking changes. Bumping version to v2 after NS7 migration is the only thing that is needed.
Migration to Couchbase Lite
Warning! This release no longer supports Android 4.3 Jelly Bean and bellow. The min SDK has been bumped to 19 (Android 4.4 - KitKat)
This release is aimed to fix certain integration problems of our plugin with other libraries and apps.
We were using NanoSQL to persist the state of our plugin. NanoSQL uses a global singleton object to interact with the underlying databases, but it can only interact with one at once. This does not scale well when the application uses multiple SQLite databases managed by NanoSQL, leading to crossed calls between databases.
That is why we have decided to replace the NanoSQL dependency with a Couchbase Lite plugin.
What does this means for you? When updating to this version of the plugin, your production apps will lose their state momentarily. This only affects human activity recognisers, that will loose track of the latest activity. The plugin will operate as usual once the user changes the activity, keep this in mind to control possible duplicate events that could arise at the moment of the migration.
Fix Android recognizer erratic behavior
This release does not introduce any breaking changes
Bug fixes:
- Android system sometimes reports that a pending intent is still registered, while it is not. Because this kind of behavior cannot be trusted, on start listening, every recognizer will stop itself first if Android reports that is up. This fixes the problem and renews the pending intent each time the application starts.
Enhancements:
- Successive calls to human activity recognizer
startListening()
method with different start options will lead to the last one being picked as the current one. This allows to easily change recognizer settings (e.g. the recognition interval).