Health Connect supports more than 50 different data types that give users the ability to measure everything from their cycling speeds to their body temperature, and more.
For a full list of available data types, please refer to the Jetpack reference.
The data types Health Connect supports are based on common usage and to provide as much variety as possible. Health Connect aims to offer a comprehensive view and storage of health and fitness data. Before referring to the Jetpack reference, remember that Health Connect's data types fall into the following categories:
- Activity: This captures any activity that a user does. It can include health and fitness activities like running or swimming, meditation, and sleep.
- Body Measurement: This captures common data related to the body. It includes capturing a user's weight, or a user's basal metabolic rate, among other data types.
- Cycle Tracking: This captures menstrual cycles and related data points, such as the binary result of an ovulation test.
- Nutrition: This captures hydration and nutrition data types. The former represents how much water a user drank in a single drink. The latter includes many optional fields, from calories to sugar and magnesium that record which nutrients the user consumed.
- Sleep: This captures interval data related to a user's length and type of sleep.
- Vitals: This captures essential information about the user's general health. It includes everything from blood glucose to body temperature and blood oxygen saturation.
Additional data attributes
Data in the Health Connect API also includes optional attributes described in the following list:
- Health Connect ID: Each point of data is assigned a unique identifier/UUID reference. This is useful for standard CRUD operations, like deletions.
- DataOrigin/Device: Health Connect stores information about the device the data came from. For example, it tells you the device’s manufacturer and model.
- Client ID: To help with conflict resolution and to make syncing easier, Health Connect provides Client IDs so that client applications can refer to data using their own IDs.
Unique Identifier (UID)
Health Connect assigns unique identifiers to newly inserted data objects. This makes it possible to identify data objects and distinguish them from others, especially when used in read, update, or delete requests. UIDs are not identical to Client IDs. Client IDs are assigned by the Client Application and UIDs are assigned exclusively by Health Connect.
Keep in mind
It's important to remember the following additional information when working with UIDs in Health Connect:
- Sessions have a single UID but data within sessions have their own UIDs.
- UIDs are not tied to or related to timestamps.
- Some use cases may require storing a specific UID during a workflow. For example, retrieving the data entry that the user just logged to display it back to them.
Time in Health Connect
All data written to Health Connect should specify Zone Offset information. Specifying Zone Offset enables applications reading the data to represent it in civil time. Civil time is the time that is local to and relevant to the user, not necessarily in Coordinated Universal Time (UTC).
In some rare circumstances, Zone Offset may not be available. When this occurs, it is possible to write to Health Connect without specifying Zone Offset information. This should be avoided where possible.
Setting Time and Zone
Specifying Zone Offset information while writing data (as mentioned previously) provides time zone information when reading data in Health Connect. However, it may fail to do so in certain situations, such as when the Zone Offset is not provided by the writer. Your application should be prepared to deal with both kinds of data, in a way that makes sense for your specific circumstances.