A query that returns changes to the HealthKit store, including a snapshot of new changes and continuous monitoring as a long-running query.


class HKAnchoredObjectQuery : HKQuery


Anchored object queries provide an easy way to search for new data in the HealthKit store. An HKAnchoredObjectQuery returns an anchor value that corresponds to the last sample or deleted object received by that query. Subsequent queries can use this anchor to restrict their results to only newer saved or deleted objects.

Anchored object queries are mostly immutable. You can assign the query’s updateHandler property after instantiating the object, but you must set all other properties when you instantiate the object. You can’t change them.

Combine Snapshots and Updates

The anchored object query can combine the abilities of a regular query with a long-running query.

  • It grabs a snapshot of the data currently stored in the HealthKit store (like an HKSampleQuery).

  • It can also perform a long-running query that responds to updates (like an HKObserverQuery).

Often, it’s more efficient to set up and run a single anchored object query than to run separate sample and observer queries. As a result, you may want to use anchored object queries, even when you aren’t using anchors to limit the results. In this case, set the anchor parameter to nil.


Tracking Anchors

class HKQueryAnchor

An object used to identify all the samples previously returned by an anchored object query.

Tracking Deleted Objects

class HKDeletedObject

An object that represents a sample that has been deleted from the HealthKit store.


Inherits From

Conforms To

See Also

Common Query Types

class HKSampleQuery

A general query that returns a snapshot of all the matching samples currently saved in the HealthKit store.

class HKQuantitySeriesSampleQuery

A query that accesses the series data associated with a quantity sample.

class HKObserverQuery

A long-running query that monitors the HealthKit store and updates your app when the HealthKit store saves or deletes a matching sample.

class HKCorrelationQuery

A query that performs complex searches based on the correlation’s contents, and returns a snapshot of all matching samples.

class HKDocumentQuery

A query that returns a snapshot of all matching documents currently saved in the HealthKit store.

class HKHeartbeatSeriesQuery

A query that returns the heartbeat data contained in a heartbeat series sample.

class HKQuery

An abstract class for all the query classes in HealthKit.