Release Date:
Nov 3, 2020
Release Contents
Service Package removal From Samsung Health v6.15, the Service package doesn't work. The Data library is not changed.
Data 1.5.0 [Changes] Data library The data library is provided with 'aar' from 1.5.0. Compatible Samsung Health version Samsung Health 6.12 or above works with the Data package 1.5.0. Data Types "com.samsung.shealth.step_daily_trend" is defined with a new interface. Use HealthConstants.StepDailyTrend instead of it. The new interface doesn't affect to existing apps that use "com.samsung.shealth.step_daily_trend". VO2_MAX is added to HealthConstants.Exercise. Data Viewer Tool Removing Electrocardiogram and HealthDocument from a data type list. [Deprecation] HealthConstants.Electrocardiogram is deprecated.
HealthConstants.StepDailyTrend
HealthConstants.Electrocardiogram
[Changes] Developer Mode From Samsung Health 6.11, the developer mode needs a dev access key. See developer mode guide. Data Viewer Tool DataViewer is updated with reading data only. StepDiary sample app It is provided with Kotlin.
Service package - Deprecated The Service package is deprecated. Do not use this feature any more.
Service 1.4.0 [Android 10 support] In Samsung Health 6.8, TrackerManager.startActivity() is updated for Android 10 to work well even Samsung Health is on the background. [Deprecation] The following trackers are deprecated in TrackerManager.TrackerId. SPO2 THERMO_HYGROMETER UV
TrackerManager.startActivity()
Data 1.4.0 [Important Notice] Data 1.4.0 library includes important changes. All partner app must use this version until July 2019. Otherwise, your app will do not work with Samsung Health properly. It supports security enhancements in Android 8.0. Applications that target Android 9 or higher cannot share data with other applications using socket. It works with Samsung Health 6.2 or above. HealthConnectionErrorResult.OLD_VERSION_PLATFORM must be handled to install the latest Samsung Health. Update your app by applying all changes below to make a seamless service. [New] HealthConstants.Nutrition A Nutrition data type is added. Replace HealthConstants.FoodInfo & HealthConstants.FoodIntake to HealthConstants.Nutrition. They will be removed in the next release. [Deprecation & Behavior Changes] HealthDataService is deprecated. Call just HealthDataStore.connectService() without after calling HealthDataService.initialize(). Remove sdk-v1.0.0.jar. HealthUserProfile’s some APIs are deprecated and have a behavior change. getUserId() is not valid anymore. Its behavior is changed to return an empty string for privacy policy enhancement. It will be removed in the next release. getImage() is not valid anymore. Its behavior is changed to return null for privacy policy enhancement. It will be removed in the next release. HealthDataResolver's inserting and updating data APIs have a behavior change: `HealthDataResolver.insert()` <br> `HealthDataResolver.update()` <br> `HealthDataResolver.insertWithPermission()` - `IllegalArgumentException` is returned only if the request contains invalid instance type. - Check the result with `getStatus()` of `HealthResultHolder.BaseResult`. A data validation error is received as `STATUS_INVALID_INPUT_DATA` in `HealthResultHolder.ResultListener.onResult()`. The data validation includes missing mandatory fields, wrong field type, out of the data value range and oversized BLOB. - See its [example](https://img-developer.samsung.com/onlinedocs/health/android/data/com/samsung/android/sdk/healthdata/HealthDataResolver.InsertRequest.html). [Sample & Tool Update] Sample apps FoodNote is updated as replacing HealthConstants. HealthConstants.FoodInfo and HealthConstants.FoodIntake to HealthConstants.Nutrition. StepDiary's typo is fixed. DataViewer A data type list is updated with HealthConstants.Nutrition. HealthConstants.FoodInfo and HealthConstants.FoodIntake is dropped out.
HealthConnectionErrorResult.OLD_VERSION_PLATFORM
HealthConstants.Nutrition
HealthDataStore.connectService()
HealthDataResolver
`HealthDataResolver.insert()` <br> `HealthDataResolver.update()` <br> `HealthDataResolver.insertWithPermission()`
- `IllegalArgumentException` is returned only if the request contains invalid instance type. - Check the result with `getStatus()` of `HealthResultHolder.BaseResult`. A data validation error is received as `STATUS_INVALID_INPUT_DATA` in `HealthResultHolder.ResultListener.onResult()`. The data validation includes missing mandatory fields, wrong field type, out of the data value range and oversized BLOB. - See its [example](https://img-developer.samsung.com/onlinedocs/health/android/data/com/samsung/android/sdk/healthdata/HealthDataResolver.InsertRequest.html).
Service 1.3.1 TrackerManager.Destination REWARD destination is deprecated. It goes to an error page from Samsung Health 6.0. TrackerTile Setting date and content color in a tracker tile is not available from Samsung Health 6.0. setDate() is deprecated. setContentColor() is deprecated. Tracker Design Guide is updated.
TrackerManager.Destination
TrackerTile
Data 1.3.0 Daily Step Count Trend ("com.samsung.shealth.step_daily_trend") "1" and "2" source type values that indicate wearable and activity trackers are deprecated. See deprecated info here. The data library is same.
"com.samsung.shealth.step_daily_trend"
"1"
"2"
Data 1.3.0 HealthConstants.FoodInfo Deprecated as he data library is same. Do not use it any more. It will be removed. HealthConstants.FoodIntake FOOD_INFO_ID is deprecated.
Service 1.3.0 TrackerManager.TrackerId added. The existing fields for Samsung Health's trackers are deprecated. Use the new class fields. Jumping to a tracker's specific destination like TRENDS is available. TrackerManager.Destination added. A new startActivity() API that has a destination param is added to TrackerManager. Sample app is updated to SampleService. For more detailed information, refer to here.
TrackerManager.TrackerId
startActivity()
The SDK name became "Samsung Health Android SDK".
DataViewer tool is updated. A minor defect is patched.
Data 1.3.0 New data types Supported data types are added including floors climbed and health document. Instant permission Instant permission APIs to handle health document are added. Some properties are added: HealthConstants.Common: CUSTOM HealthConstants.Exercise: ADDITIONAL, MAX_RPM HealthConstants.HeartRate: MIN, MAX, BINNING_DATA HealthConstants.Weight: BODY_FAT_MASS, FAT_FREE, FAT_FREE_MASS, SKELETAL_MUSCLE_MASS, TOTAL_BODY_WATER HealthData APIs to handle InputStream are added. setLocalTimeRange() is added to handle the local time zone change easily. HealthDataResolver.AggregateRequest.Builder HealthDataResolver.ReadRequest.Builder iterator() and close() are added to HealthDataResolver.AggregateResult. More health data units are added. HealthDataUtil class is added. A new sample app StepDiary is added. The DataViewer tool is updated. More supported data types are added. The user interfaces are improved. For more detailed information, refer to here.
HealthConstants.Common
CUSTOM
HealthConstants.Exercise
ADDITIONAL
MAX_RPM
HealthConstants.HeartRate
MIN
MAX
BINNING_DATA
HealthConstants.Weight
BODY_FAT_MASS
FAT_FREE
FAT_FREE_MASS
SKELETAL_MUSCLE_MASS
TOTAL_BODY_WATER
HealthData
setLocalTimeRange()
HealthDataResolver.AggregateRequest.Builder
HealthDataResolver.ReadRequest.Builder
iterator()
close()
HealthDataResolver.AggregateResult
HealthDataUtil
Some terms are changed: "S Health" app name is rebranded to "Samsung Health". "Samsung Health SDK" is used for the SDK’s name instead of "Samsung Digital Health SDK". Only the library names are changed according to the SDK naming. You don’t need to update your app. Sample apps are updated by the changed terms. Related documents are updated by the changed terms.
Service 1.2.0 APIs for the feature availability check are added in the Shealth class. FEATURE_TRACKER_LAUNCH FEATURE_TRACKER_TILE isFeatureEnabled(int...) Shealth.isFeatureEnabled(int) was the default implementation and didn't work. It is updated to check the feature availability. To launch the S Health’s specific tracker with TrackerInfo and TrackerManager, S Health 4.8 or above is needed.
FEATURE_TRACKER_LAUNCH
FEATURE_TRACKER_TILE
isFeatureEnabled(int...)
Shealth.isFeatureEnabled(int)
TrackerInfo
TrackerManager
Data 1.2.1 A new meal type, MEAL_TYPE_BEFORE_SLEEP is added to HealthConstants.BloodGlucose. MEAN_RPM is added to HealthConstants.Exercise. In 1.2.0, HealthConnectionErrorResult.UNKNOWN had been retrieved when S Health prior to 4.6 is installed on the device. In this release, a bug for the wrong error value is fixed to give HealthConnectionErrorResult.OLD_VERSION_PLATFORM. You can solve the error situation by calling HealthConnectionErrorResult.resolve(). The following APIs are deprecated: HealthResultHolder.cancel() HealthResultHolder.BaseResult.STATUS_CANCELED
MEAL_TYPE_BEFORE_SLEEP
HealthConstants.BloodGlucose
MEAN_RPM
HealthConnectionErrorResult.resolve()
Data 1.2.0 HealthDevApp is removed. Use DataViewer to test your application. "com.samsung.android.health.platform_type" in manifest to use HealthDevApp is not required. To make a clear operation after the Permission UI is popped up, the existing PermissionManager.requestPermissions() is deprecated. Use new API with the activity parameter instead of it. connectService() with the timeout parameter is added to HealthDataStore. HealthConstants.SleepStage to present detailed sleep data is added. Body fat, skeletal muscle, muscle mass, and basal metabolic rate properties are added to HealthConstants.Weight. The minimum heart rate property is added to HealthConstants.Exercise. The user name and user’s picture image can be retrieved through HealthUserProfile. For more detailed information, refer to here. Service 1.1.0 S Health Simulator is removed from the SDK tool because S Health’s available devices had been expanded. Shealth.initialize() doesn’t throw SsdkUnsupportedException and SecurityException. com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY permission is not required. The title of tile design guidelines is changed to Tracker Design Guidelines.
Data 1.1.0 Sample application projects are updated to import them on Android Studio. HealthConnectionErrorResult The device that supports S Health 4.x can be checked with hasResolution(). hasResolution() and resolve() require the android.permission.INTERNET permission. HealthConstants.BloodGlucose MEAL_TYPE BEFORE_MEAL and MEAL_TYPE GENERAL are added. MEAL_TYPE_AFTER_BEDTIME is deprecated. "Treadmill" and "Elliptical trainer" are added to the predefined type of HealthConstants.Exercise. putNull() to set a value of data property as null is added to HealthData. Available ranges or operations of some APIs are changed. For more detailed information, refer to here.
Data 1.0.0 HealthConnectionErrorResult.resolve()'s operation is changed without a dialog. Some constants for unit are added and descriptions of HealthConstants interfaces are changed. If the handler parameter of the HealthDataObserver’s constructor is null, the looper of the current thread will be used for the callback. A permissible range of medical data for countries is expanded. For more detailed information, refer to here. Service 1.0.0 Guide for TrackerEventListener is supplemented. Check your application after referring to the API Reference and Programming Guide. Description of Tile Design Guideline for Tracker is supplemented. The icon size of TRACKER_TILE_TYPE_1 is changed to 60.
Handles the service connection.
Inserts, reads, updates and deletes health data.