Class

HKQuantitySample

A sample that represents the quantity (both the value and units) of a single measurement.

Overview

Each quantity sample represent a piece of data with a single numeric value and the value’s associated units. For example, you can use a quantity sample to record the user’s height, the user’s current heart rate, or the number of calories in a hamburger. HealthKit provides a wide range of quantity types, letting you track a number of different health and fitness features.

The HKQuantitySample class is a concrete subclass of the HKSample class. Quantity samples are immutable: You set the sample’s properties when you create it, and they cannot change.

Using Quantity Samples

Like many HealthKit classes, the HKQuantitySample class should not be subclassed.

You may extend the HKQuantitySample class by adding metadata with custom keys as appropriate for your app. For more information, see init(type:quantity:start:end:metadata:).

Topics

Creating Quantity Samples

init(type: HKQuantityType, quantity: HKQuantity, start: Date, end: Date)

Returns a sample containing a numeric measurement.

init(type: HKQuantityType, quantity: HKQuantity, start: Date, end: Date, metadata: [String : Any]?)

Returns a sample containing a numeric measurement with the provided metadata.

init(type: HKQuantityType, quantity: HKQuantity, start: Date, end: Date, device: HKDevice?, metadata: [String : Any]?)

Returns a sample containing a numeric measurement with the provided device and metadata.

Getting Property Data

var quantity: HKQuantity

The quantity for this sample.

var quantityType: HKQuantityType

The quantity type for this sample.

Predicate Key Paths

let HKPredicateKeyPathQuantity: String

The key path to the sample’s quantity.

Relationships

Inherits From

Conforms To

See Also

First Steps

Saving Data to HealthKit

Create and share HealthKit samples.

class HKCategorySample

A sample whose values are selected from a short list of possible values.

class HKCorrelation

A sample that groups multiple related samples into a single entry.

Units and Quantities

Objects used to specify a quantity for a given unit (for example, 175 lbs), and to convert between units (79.4 kg).

Metadata Keys

Constants used to add metadata to objects stored in HealthKit.