(Release to pre-production on 10/18/2022. Release to production on 10/25/2022
New features and updates
EHR integrated customers
Replaced ehr_fhir_id with provider_fhir_id
Program/Panel View performance improvements
Visual updates to Alerts table on Summary Dashboard
Resolved defects
Resolved issue with provider name saving on updates to goals
Resolved issue causing an error on event/action page during enrollment
Resolved issue where the count of users on the Summary Dashboard was not immediately updating after an unenrollment
Android (Build 967)
Improved bluetooth pairing experience
Bug fixes and performance improvements
iOS (version 1.8.2)
Added loading animation when connecting a cloud source
Bug fixes and performance improvements
Android Native Libraries Released - October 11, 2022
Android Full Library v1.14.5
Android Aggregator Library v1.14.5
Android LifeScan OneTouch Library v1.14.5
Android Native Changes
Google Fit
The SDK now reads only the Summary/Routine data from
DataTypes
that the user has granted permission to.Google Fit Mini App updated to fetch 30 days of historical step data after requesting permissions for the first time.
Also, review the changes from Android v1.14.4, which include Android 13 support.
React Native Wrappers Released - October 11, 2022
React Native Android/iOS Aggregator Wrapper v1.4.1
React Native Changes
General
Bundled native SDKs upgraded to:
iOS v1.14.1
Android 1.14.5
Module libraries built with XCode 14 and the iOS 16 SDK and tested against an iPhone running iOS 16
Healthkit
React Native wrapper now supports iOS 15 and up
Added support for HealthKit workout types added in iOS 13 - 16.
Google Fit
Now only reads Summary/Routine data from
DataTypes
that have been granted permission
Samsung Health
Switched to using static ID for Android SHealth notification channel name to avoid multiple channels showing up in notification settings
Cordova Wrappers Released - October 11, 2022
Cordova Android/iOS Full Wrapper v1.14.1
Cordova Android/iOS Aggregator Wrapper v1.14.1
Cordova Changes
General
Bundled native SDKs upgraded to:
iOS v1.14.1
Android 1.14.5
Rename iOS dictionary key from "recordType" to "record_type"
Core
VLDUser credentials (validicUserID, organizationID, accessToken) must now be non-empty strings. If an empty string (or nil) is used for any of those properties,
-startSessionWithUser:
will throw an exception. You must initialize the SDK with a valid user session in order for the following functions to work: Apple Health, Google Fit, and Samsung Health reads and passive Bluetooth reads.Implemented user validation against the Validic API. User credentials are checked when
-startSessionWithUser:
is called, and any user session started with invalid or unknown credentials will trigger a call to[[VLDSession sharedSession] endSession]
.Any 401 Unauthorized response from the Validic API will automatically trigger a call to
[[VLDSession sharedSession] endSession]
.Added a default user session. Accessible via
[VLDUser defaultUser]
, this user session can be initialized to perform foreground Bluetooth and VitalSnap reads only while the app is offline. This feature is intended to be used with the Full SDK package when valid Validic user session credentials are unavailable/unknown.If your app always has access to a valid set of user credentials and always initializes the SDK with a valid set of user credentials, then no changes are needed.
The recommended SDK implementation is to always provision users on the Validic server then initialize the SDK with valid session credentials for the user. Therefore, use of the default user is not common and its use should be limited to instances where you are unable to retrieve valid session credentials and you need to perform a foreground operation (Bluetooth pair, Bluetooth foreground read, or VitalSnap read).
Some operations will not function with the default user. SDK operations that require a server-side user will not function while the SDK is initialized with the default user. You must initialize the SDK with a valid user session in order for the following functions to work: Apple Health, Google Fit, and Samsung Health reads and passive Bluetooth reads.
If you need assistance adjusting your implementation of the SDK to account for these changes, please reach out to the Validic support team at support@validic.com.
Deprecated the
VLDLogging
class log property used for masking debug log output. Please uselogMask
instead.Set timeout for requests to 10 seconds.
Bluetooth
Added generic support for pulse oximeters that follow the Bluetooth standard for Spot Check measurements.
Added support for ChoiceMMed pulse oximeter MD300CI218 (peripheral 45).
Added
InvalidUserException
as thecause
for aValidicBluetoothException
when attempting to execute an operation with anull
user or a user with credentials that cannot be used when performing an API request.BluetoothPeripheral
properties returned fromgetPeripheral
are nowcamelCase
instead ofPascalCase
OCR
OCRPeripheral
properties returned fromgetPeripheral
are nowcamelCase
instead ofPascalCase
Healthkit
Cordova wrapper now supports iOS 15 and up
Added support for HealthKit workout types added in iOS 13 - 16.
Google Fit
Now only reads Summary/Routine data from
DataTypes
that have been granted permission
Samsung Health
Switched to using static ID for Android SHealth notification channel name to avoid multiple channels showing up in notification settings
Xamarin.iOS Wrappers Released - October 11, 2022
Xamarin iOS Full Wrapper v1.14.1
Xamarin iOS Aggregator Wrapper v1.14.1
Xamarin.iOS Changes
General
Bundled native SDKs upgraded to:
iOS v1.14.1
Rename iOS dictionary key from "recordType" to "record_type"
Core
VLDUser credentials (validicUserID, organizationID, accessToken) must now be non-empty strings. If an empty string (or nil) is used for any of those properties,
-startSessionWithUser:
will throw an exception. You must initialize the SDK with a valid user session in order for the following functions to work: Apple Health, Google Fit, and Samsung Health reads and passive Bluetooth reads.Implemented user validation against the Validic API. User credentials are checked when
-startSessionWithUser:
is called, and any user session started with invalid or unknown credentials will trigger a call to[[VLDSession sharedSession] endSession]
.Any 401 Unauthorized response from the Validic API will automatically trigger a call to
[[VLDSession sharedSession] endSession]
.Added a default user session. Accessible via
[VLDUser defaultUser]
, this user session can be initialized to perform foreground Bluetooth and VitalSnap reads only while the app is offline. This feature is intended to be used with the Full SDK package when valid Validic user session credentials are unavailable/unknown.If your app always has access to a valid set of user credentials and always initializes the SDK with a valid set of user credentials, then no changes are needed.
The recommended SDK implementation is to always provision users on the Validic server then initialize the SDK with valid session credentials for the user. Therefore, use of the default user is not common and its use should be limited to instances where you are unable to retrieve valid session credentials and you need to perform a foreground operation (Bluetooth pair, Bluetooth foreground read, or VitalSnap read).
Some operations will not function with the default user. SDK operations that require a server-side user will not function while the SDK is initialized with the default user. You must initialize the SDK with a valid user session in order for the following functions to work: Apple Health, Google Fit, and Samsung Health reads and passive Bluetooth reads.
If you need assistance adjusting your implementation of the SDK to account for these changes, please reach out to the Validic support team at support@validic.com.
Deprecated the
VLDLogging
class log property used for masking debug log output. Please uselogMask
instead.Set timeout for requests to 10 seconds.
Bluetooth
Added generic support for pulse oximeters that follow the Bluetooth standard for Spot Check measurements.
Added support for ChoiceMMed pulse oximeter MD300CI218 (peripheral 45).
BluetoothPeripheral
properties returned fromgetPeripheral
are nowcamelCase
instead ofPascalCase
OCR
OCRPeripheral
properties returned fromgetPeripheral
are nowcamelCase
instead ofPascalCase
Healthkit
Xamarin iOS wrapper now supports iOS 15 and up
Added support for HealthKit workout types added in iOS 13 - 16.
Xamarin.Android Wrappers Released - October 11, 2022
Xamarin Android Full Wrapper v1.14.5
Xamarin Android Aggregator Wrapper v1.14.5
Xamarin.Android Changes
General
Bundled native SDKs upgraded to:
Android 1.14.5
Shared
User credentials (validicUserID, organizationID, accessToken) must now be non-empty strings. If an empty string (or nil) is used for any of those properties,
Session.startSessionWithUser
will throw an exception. You must initialize the SDK with a valid user session in order for the following functions to work: Apple Health, Google Fit and Samsung Health reads; passive Bluetooth reads.Implemented user validation against the Validic API. User credentials are checked when
Session.startSessionWithUser
is called, and any user session started with invalid or unknown credentials will trigger a call toSessionConnectionListener.onSessionEnded(User, unsentRecords)
.Any 401 Unauthorized response from the Validic API will automatically trigger a call to
SessionConnectionListener.onSessionEnded(User, unsentRecords)
.Added a default user session. Accessible via
User.DEFAULT_USER
, this user session can be initialized to perform foreground Bluetooth and VitalSnap reads only while the app is offline. This feature is intended to be used with the Full SDK package when valid Validic user session credentials are unavailable/unknown.If your app always has access to a valid set of user credentials and always initializes the SDK with a valid set of user credentials, then no changes are needed.
The recommended SDK implementation is to always provision users on the Validic server then initialize the SDK with valid session credentials for the user. Therefore, use of the default user is not common and its use should be limited to instances where you are unable to retrieve valid session credentials and you need to perform a foreground operation (Bluetooth pair, Bluetooth foreground read, or VitalSnap read).
Some operations will not function with the default user. SDK operations that require a server-side user will not function while the SDK is initialized with the default user. You must initialize the SDK with a valid user session in order for the following functions to work: Apple Health, Google Fit, and Samsung Health reads and passive Bluetooth reads.
If you need assistance adjusting your implementation of the SDK to account for these changes, please reach out to the Validic support team at support@validic.com.
Bluetooth
Added generic support for pulse oximeters that follow the Bluetooth standard for Spot Check measurements.
Added support for ChoiceMMed pulse oximeter MD300CI218 (peripheral 45).
Added
InvalidUserException
as thecause
for aValidicBluetoothException
when attempting to execute an operation with anull
user or a user with credentials that cannot be used when performing an API request.BluetoothPeripheral
properties returned fromgetPeripheral
are nowcamelCase
instead ofPascalCase
Bond with OS before connecting to peripherals
Fix updating time on Omron devices
OCR
OCRPeripheral
properties returned fromgetPeripheral
are nowcamelCase
instead ofPascalCase
Google Fit
Now only reads Summary/Routine data from
DataTypes
that have been granted permission
Samsung Health
Switched to using static ID for Android SHealth notification channel name to avoid multiple channels showing up in notification settings
Release completed October 12, 2022