Changelog

1.2.9 - 2019-10-28

  • Changed: GraphQl caching age is controlled by backend

1.2.8 - 2019-10-24

  • Changed: Updated to latest blue-id SDK
  • Changed: Improve blue-id time-sync
  • Fixed: Blue-id battery status handling

1.2.7 - 2019-10-02

  • Changed: Improved logout process, avoid leaked objects
  • Changed: Improved devices removal from nearby list
  • Changed: Preset GraphQL cache expiration

1.2.6 - 2019-09-24

  • Added: BookableParameters to IotUnits
  • Removed: Deprecated NfcHandler. There are no gateways with NFC tags anymore.

1.2.5 - 2019-09-18

  • Added: GraphQl interface
  • Added: Caching layer to GraphQl queries

1.2.4.1 - 2019-09-23

  • Fixed: NullPointerException handling bad formatted NFC data-packs

1.2.4 - 2019-09-11

  • Changed: Update and organization of internal dependencies

1.2.3 - 2019-08-30

  • Fixed: Timber crash when network connection fail

1.2.2 - 2019-08-30

  • Fixed: Change password error message, when operation fail

1.2.1 - 2019-08-29

  • Fixed: GraphQl pooling logic

1.2.0 - 2019-08-23

  • Changed: Updated to Koin 2.0
  • Added: Support for IotDevices
  • Added: Locker cluster

1.1.8 - 2019-08-02

  • Fixed: Rare crash on backend response parser
  • Fixed: Uninitialized unit controller status

1.1.7 - 2019-06-20

  • Added: GraphQl Apollo support
  • Fixed: Threading issue on bluetooth connection

1.1.6 - 2019-05-23

  • Changed: Lower Timber.e to Timber.w for catched exceptions

1.1.5 - 2019-05-21

  • Fixed: rare crash on statistics calculation

1.1.4 - 2019-05-16

  • Added: IotUnit debug screen
  • Added: Detekt checks and fixes
  • Fixed: Login process was not changing status to Initializing

1.1.3 - 2019-05-03 (internal release)

  • Fixed: Proguard rules

1.1.2 - 2019-05-02 (internal release)

  • Added: Improved handling of Actuator request and Statistics post.
  • Changed: Updated Gradle Plugin to 3.4.0 and Gradle to 5.1.1
  • Fixed: On rare cases opening process stuck.
  • Fixed: On rare cases backend does not receive actuator request

1.1.1 - 2019-04-18

  • Fixed: Dealing properly when backend sends same actuator in different units

1.1.0 - 2019-04-17

  • Added: NfcActivity, see docs for implementation
  • Added: backendUnitType field to IotUnit class
  • Added: DebugActivity
  • Removed: AbstractNfcActivity
  • Changed: Improved logout handling
  • Changed: Improved NFC handling

1.0.5 - 2019-04-09

  • Fixed: SDK initialize forever when no connection.
  • Changed: Make IotUnit unitId and actuatorId public

1.0.4 - 2019-04-08

  • Fixed: Case when UnitController not scaning for devices, would report as ready, even if bluetooth or location was off.
  • Fixed: Different booking requests and parsing for lockers and doors.
  • Changed: Improved blue-id scan detection on debugGetBlueIdDetails
  • Fixed: Blue-id battery -1 on debugGetBlueIdDetails

1.0.3 - 2019-04-02

  • Fixed: Unit Controller would get stuck on busy when ble fail on a ble-only unit.
  • Fixed: availableNow not properly processed.

1.0.2 - 2019-03-26

  • Changed: calls to unitController.open() do not throw Exception anymore if the controller is not ready. It will return a Response.fail with an IllegalStateException parameter

1.0.1 - 2019-03-21

  • Fixed: ProGuard rules with new smartspaces package.

1.0.0 - 2019-03-20

  • Changed: renamed from smartworkspace to smartspaces.
    This change affects the maven artifacts, package and class names.

0.11.6 - 2019-03-19

  • Fixed: Executing state of getSchedules() not reporting properly.

0.11.5 - 2019-03-15

  • Fixed: A few different rare crash events.

0.11.4 - 2019-03-13

  • Changed: clean-up, removing unused IotUnit.Types

0.11.3 - 2019-03-13

  • Changed: improve usage of cached data
  • Fixed: IotUnit matching on schedules call

0.11.2 - 2019-03-12

  • Changed: extracted CancellationSignal to its own class

0.11.1 - 2019-03-11

  • Fixed: Backend endpoint changes
  • Changed: refresh() can receive multiple parameters.

0.11.0 - 2019-03-11

  • Changed: API changes on the SDK interface.
  • Added: Added TapController and UserManager
  • Changed: UnitController.open now receives an optional CancellationSignal and returns a normal LiveData with the execution status.
  • Changed: refresh() method accepts optional Refresh enum to include what’s to be refreshed.
  • Changed: Test implementation now is on a separate maven artifact.

0.10.1 - 2019-03-06

  • Changed: Changed to WorkManager 1.0.0.

0.10.0 - 2019-02-28

  • Changed: Moved the whole project to JetPack (androidx) package naming.
  • Fixed: All the internal calls on the SDK now goes through background threads.

0.9.2 - 2019-02-26

  • Fixed: Bluetooth scanning crash when enabling/disabling bluetooth radio

0.9.1 - 2019-02-18

  • Fixed: Bookings id matching

0.9.0 - 2019-01-24

  • Added: Get blue-id details method. This call also fixes blue-id clock if needed
  • Fixed: Crash during logout.
  • Changed: Better handling of encryptiong failure
  • Changed: getUnits() Proximity have been removed in favour of Sorting. Sorting.None is the same as Proximity.All. Sorting.Distance orders the units from closest to furthers, including all the out-of-range IotUnits. The call IotUnit.isNearby() should be used to check if unit is in range or not.

0.8.0 - 2018-12-18

  • Changed: Simplified SDK status. This is a breaking API change. Check the documentation
  • Changed: Updated to Kotlin 1.3.11, Android Gradle Plugin 3.2.1 and Gradle 4.10.3
  • Fixed: Automatic logout when encryption fails
  • Fixed: Failing decryption when Android auto-backup previous data
    • Moved encryptor and preferences to no-backup folder (file-preferences library)
  • Fixed: Unit bookings without actuator-id not getting mapped
  • Changed: moved API calls to /mobile-sdk/ backend endpoints
  • Changed: Improved some Exception messages
  • Fixed: Checks to bluetooth radio status before starting scan