spike_flutter_sdk 4.3.34
spike_flutter_sdk: ^4.3.34 copied to clipboard
Spike Health data reader for Android and iOS platforms.
4.3.24 #
- Updated native iOS SDK Version to
4.3.31
- Improve how statistics are read from HealthKit
- New metric types:
- bodyFat
- bodyFatMax
- bodyFatMin
- bodyBoneMass
- bodyMassIndex
- bloodPressureSystolic
- bloodPressureSystolicMax
- bloodPressureSystolicMin
- bloodPressureDiastolic
- bloodPressureDiastolicMax
- bloodPressureDiastolicMin
- New fields in
UserProperties
:- bodyBoneMass
- bodyFat
- bodyMassIndex
- Updated
getIntegrationInitUrl
. Now it acceptsIntegrationInitConfig
config object where you can pass:redirectUri
: will override the one set in admin consolestate
: when the authorization server redirects back to the client, it includes thestate
value originally sentproviderUserIdentifier
: at the moment used (and required) only when integrating with ultrahuman
- New provider:
ultrahuman
When integrating with Ultrahuman, you have to provide ultrahuman user email inIntegrationInitConfig.providerUserIdentifier
. Example:spikeConnection.getIntegrationInitUrl(provider: .ultrahuman, config: IntegrationInitConfig(providerUserIdentifier: "user@mail.com"))
- Improved transport protocol for background delivery
- Updated native Android SDK Version to
4.2.72
- New
MetricType
s added:- BODY_FAT
- BODY_FAT_MAX
- BODY_FAT_MIN
- BODY_BONE_MASS
- BODY_MASS_INDEX
- BLOOD_PRESSURE_SYSTOLIC
- BLOOD_PRESSURE_SYSTOLIC_MIN
- BLOOD_PRESSURE_SYSTOLIC_MAX
- BLOOD_PRESSURE_DIASTOLIC
- BLOOD_PRESSURE_DIASTOLIC_MIN
- BLOOD_PRESSURE_DIASTOLIC_MAX
- New fields in
UserProperties
: - BODY_FAT
- BODY_BONE_MASS
- BODY_MASS_INDEX
- Updated
getIntegrationInitUrl
. Now it acceptsIntegrationInitConfig
config object where you can pass:redirectUri
: will override the one set in admin consolestate
: when the authorization server redirects back to the client, it includes thestate
value originally sentproviderUserIdentifier
: at the moment used (and required) only when integrating with ultrahuman
- New provider:
ultrahuman
When integrating with Ultrahuman, you have to provide Ultrahuman user email inIntegrationInitConfig.providerUserIdentifier
. Example:spikeConnection.getIntegrationInitUrl(provider = Provider.ULTRAHUMAN, config = IntegrationInitConfig(providerUserIdentifier = "user@mail.com"))
- New
4.3.14 #
- Updated native iOS SDK Version to
4.3.11
- Improved transport protocol for even faster requests to Spike API
- New statistics: heartrate, heartrateMax, heartrateMin, heartrateResting
- Updated native Android SDK Version to
4.2.62
- New statistics:
- HEARTRATE_RESTING
- SLEEP_DURATION_TOTAL
- New statistics (only from non-HealthConnect providers):
- HEARTRATE
- HEARTRATE_MIN
- HEARTRATE_MAX
- Metric types updates
- Better proguard settings for uniqueness of generated class names
- Fix for statistics in different time zones
- Added consumer proguard rules
- New statistics:
4.2.74 #
- Removed outdated example. For examples, please follow official documentation.
4.2.64 #
- Updated readme file
4.2.54 #
- Updated native iOS SDK Version to iOS 4.2.41
- Fix date format in json push
4.2.44 #
- Fix user info response json parsing
4.2.34 #
- New metrics:
- spo2
- bodyTemperature
- skinTemperature (available only on getSleep())
- sleepBreathingRate (available only on getSleep())
- sleepBreathingRateMin (available only on getSleep())
- sleepBreathingRateMax (available only on getSleep())
- sleepBreathingRateAvg (available only on getSleep())
- Updated native iOS SDK Version to iOS 4.2.31
- Updated native Android SDK Version to 4.2.42
- Added sleepScore property in Record type
4.2.24 #
- New metric:
VO2MAX
available ingetRecords
andgetActivities
- Changed hrv metric names:
hrvRmssd
,hrvSdnn
- New statistic:
sleepScore
- Updated native iOS SDK Version to iOS 4.2.21
- New
getUserProperties
method for reading: weight, height, timezone, birth date, gender
- New
- Updated native Android SDK Version to 4.2.32
- New
getUserProperties
method for reading: weight, height, timezone from Health Connect - New
getUserProperties
method for reading: birth date, gender from other providers
- New
4.2.14 #
- Updated native Android SDK Version to 4.2.12
- Updated native iOS SDK Version to 4.2.11
🔴 Breaking Change: Update to SpikeSDKV3.createConnection
#
The method Spike.createConnectionAPIv3({appId:, authToken:, customerEndUserId:})
has been updated to:
SpikeSDKV3.createConnection(applicationId:, signature:, endUserId:)
Key Changes:
- The
applicationId
parameter must now be provided as anint
. - The
signature
parameter now requires anHMAC-SHA256
signed user ID. - ⚠️ Security Notice:
- Do not store your HMAC signing key within the application itself, as this poses a security risk.
- Instead, generate and provide the signature from your backend.
Legacy Support:
For development purposes only, the previous connection flow remains available under the renamed method:
SpikeSDKV3.createConnectionLegacy(appId:, authToken:, customerEndUserId:)
4.1.14 #
- Background delivery for both iOS and Android
- Added triathlon activity type
- Better error messages in iOS SpikeSDK wrapper
- Updated native Android SDK Version to 4.1.12
- Add background delivery (see documentation for more information)
- Health Connect library updated to 1.1.0-alpha11
- Compile SDK and target SDK updated to 35
- Updated kotlin version to 1.9.25
- Updated other dependencies
- Updated gradle to 8.8.0
- Updated native iOS SDK Version to 4.1.11
- Add background delivery
- Send more sleep data
4.0.14 #
- Completely new SDK! Please see our official documentation for more details and usage instructions
- Updated native Android SDK Version to 4.0.22
- Updated native iOS SDK Version to 4.0.12
- Added getIntegrationInitUrl method to SpikeConnectionV3: generates integration url for the given provider
1.3.3 #
- Android: Fixed build issue on AGP8+
1.3.2 #
- Updated native Android SDK Version to 3.1.4
- Add more raw data to calories request
1.3.1 #
- Updated native iOS SDK Version to 2.4.2:
- Add customer user id validation
- Updated native Android SDK Version to 3.1.1:
- Better way to authenticate with API
- Add saved session validation before connection is established
- Add customer user id validation
1.3.0 #
- Added ECG handling in iOS.
- Added empty results when ECG is asked for on Android device.
- Made connections array in iOS thread-safe.
- Updated structure of
SpikeSource
data model. - README updated with ECG data type.
- Updated native iOS SDK Version to 2.4.1:
- Fix timezone in case it changes while the app is running.
- Better way to authenticate with API.
- ECG support.
- Add trigger property to extractAndPostData request.
- Add cycling parameters to Activities stream data request.
1.2.10 #
- Updated native Android SDK Version.
- Updated native iOS SDK Version.
- README updated.
1.2.9 #
- Updated native iOS SDK Version.
1.2.8 #
- Updated native Android SDK Version.
- Updated native iOS SDK Version.
- PROD/DEV environments separation added.
- Background delivery handling documented for the iOS.
- Method to disable background delivery introduced.
- setEnvironment method removed as environment must be set when creating the connection.
1.2.7 #
- Updated native Android SDK Version.
- Updated native iOS SDK Version.
1.2.6 #
- Updated native Android SDK Version.
- Updated native iOS SDK Version.
1.2.5 #
- SpikeStepData class name renamed into SpikeStepsData to keep aligned with Dart coding conventions.
- Intraday steps data introduced.
1.2.4 #
- Updated native Android SDK Version.
1.2.3 #
- Updated native Android SDK Version.
1.2.2 #
- Updated native Android SDK Version.
1.2.1 #
- Updated native Android SDK Version.
1.2.0 #
- Updated README with Android 14 set-up guide.
- Ensured permissions are checked and requested when user tries to extract the data.
- Introduced ensurePermissionsAreGrantedV2 method, so it would become possible to get more information about what happened when requesting for permissions which might be useful for Flutter Android apps.
- Improved processing of the Health Connect permissions when user cancels giving permissions, gives them partially, or performs some other unexpected behavior.
- Updated native iOS SDK Version.
1.1.1 #
- Android Native SDK version updated.
1.1.0 #
- iOS Native SDK version updated.
- Android Native SDK version updated.
- Android Native SDK permissions handling recreated.
1.0.27 #
- iOS Native SDK version updated.
1.0.26 #
- iOS Native SDK version updated.
1.0.25 #
- iOS Native SDK version updated.
- Android Native SDK version updated.
- Method 'isPackageInstalled' added to Android.
1.0.24 #
- iOS Native SDK version updated.
1.0.23 #
- iOS Native SDK version updated.
- Android Native SDK version updated.
- Added more information on exceptions thrown in the README.
1.0.22 #
- iOS Native SDK version updated.
1.0.21 #
- iOS Native SDK version updated.
1.0.20 #
- Native Android SDK version usage updated.
- Made possible to set the environment when using Android SDK.
1.0.19 #
- Method 'getSpikeEndUserId' added into the SpikeConnection.
1.0.18 #
- Android SDK integration changed.
1.0.17 #
- pack, unpack removed, since it is clients who need to manage their state.
- Web hook connections integrated into SpikeConnection.
- Minimum SDK version reduced to 28.
- Compile SDK version reduced to 33.
- Examples updated.
- README updated.
- Integration with Android SDK changed completely.
1.0.16 #
- Return boolean after requesting permissions.
1.0.15 #
- Native wrapping with native Android SDK release build issues resolved.
- Requesting permissions issues resolved using native Android SDK.
- README changed.
- Example code changed.
1.0.14 #
- Native wrapping with native Android SDK finalized.
1.0.13 #
- Native wrapping with native Android SDK introduced.
- Native wrapping with native iOS SDK introduced.
1.0.12 #
- Min iOS version reduced for the sleep data.
1.0.11 #
- README updated.
- Example updated.
1.0.10 #
- README updated.
- Ensured dart doc is working.
1.0.9 #
- README updated.
- Made sure that casting when using connection.extractData(<...>) is no longer needed.
1.0.8 #
- README improved.
- Data keys expectations changed per changed backend.
1.0.7 #
- iOS workouts reading problems resolved.
- Made sure floors are added from the iOS data.
- Added functionality that allows configuration of the background delivery tasks.
- Added debouncing for the background delivery tasks of five seconds, so they would not trigger unnecessary sending to the backend.
- Fixed an issue of reading sleep data. Ensured user is requested for additional permissions that are required in order to collect the statistics needed regarding sleep.
- Made sure that in sleep statistics zeroes would be changed into null when no data is read.
- Updated README with the background delivery example information.
1.0.6 #
- Breathinng data issues resolved.
- Workouts reading issues resolved.
- README updated.
- SpikeSDK changed, so SpikeSDK.initialize() would not be needed as per documentation.
1.0.5 #
- Better background delivery configuration into SpikeSDK added.
1.0.4 #
- Logging improvements.
- Sending data to backend improvements.
- Android Health Connect Core recreated using direct API for the Health Connect due to failure of Flutter package to properly convert data under the release mode.
1.0.3 #
- More logging added.
- IDs usage fixed.
1.0.2 #
- Better logging.
1.0.1 #
- Complete rewrite of the communication with backend.
- Reading the body data introduced.
- Calculating time improved.
- More logging added.
1.0.0 #
- Complete rewrite of the library to follow the Spike standards required.
0.0.10 #
- Sleep data reading and sending support introduced.
0.0.9 #
- Activity groups support introduced.
0.0.8 #
- Removed some data for summary.
- Workouts data times rounding added, so conversions would not fail.
0.0.7 #
- Example updated.
- Summary data reading improved even further.
- Added the way to send separate identifier data.
- README updated.
0.0.6 #
- Workout data reading introduced.
- Summary data reading improved, and now all of the summary data can be read.
0.0.5 #
- Background delivery now takes last three days for the data to be sent.
- calories removed, and basal energy burned introduced instead.
0.0.4 #
- Background delivery support introduced.
- Better code organization regarding storing some configured data in the storage.
- Background delivery interval support introduced.
- Improvements regarding date and time resolution when resolving or sending the data.
0.0.3 #
- Made sure background tasks would take correct intervals to send the data.
- Added more information to logging.
- Made sure events logged would be sorted by the date in an ascending order.
0.0.2 #
- Improved handling of the background tasks registration.
- Support to set custom task ID introduced to check if background tasks actually work.
- Support for event tracking introduced. Tracking can be enabled or disabled.
0.0.1 #
- Apple HealthKit data reading functionality with ability to send this data to the server of your choice.