Enum SleepStage
- All Implemented Interfaces:
Comparable<SleepStage>
One stage within a SleepSample. The values mirror Health Connect's
eight stage constants; the iOS mapping is noted per value.
Not every source reports stages. Check
SleepSample.hasStageDetail() before drawing a hypnogram -- a session
recorded by a phone rather than a watch will only say "asleep".
-
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionAsleep, with no stage breakdown available.Awake during the sleep session.Awake but in bed, before or after sleeping.Apple's "core" sleep, from HealthKitasleepCore(iOS 16+).Deep sleep.Light sleep, as Health Connect classifies it -- the N1 and N2 stages.Out of bed during the session.REM sleep.The source did not classify this span. -
Method Summary
Modifier and TypeMethodDescriptionstatic SleepStageReturns the enum constant of this type with the specified name.static SleepStage[]values()Returns an array containing the constants of this enum type, in the order they are declared.Methods inherited from class Enum
clone, compareTo, equals, getDeclaringClass, getEnumValues, hashCode, name, ordinal, setEnumValues, toString, valueOf
-
Enum Constant Details
-
UNKNOWN
The source did not classify this span. -
AWAKE
Awake during the sleep session. HealthKitawake. -
AWAKE_IN_BED
Awake but in bed, before or after sleeping. HealthKitinBed. -
OUT_OF_BED
Out of bed during the session. Android only -- HealthKit has no equivalent and never reports it. -
ASLEEP_UNSPECIFIED
Asleep, with no stage breakdown available. HealthKitasleepUnspecified, and the only asleep value iOS reported before iOS 16. -
LIGHT
Light sleep, as Health Connect classifies it -- the N1 and N2 stages.
HealthKit does not report this. Its nearest value is
asleepCore, which arrives asCORErather than being folded in here. -
CORE
Apple's "core" sleep, from HealthKit
asleepCore(iOS 16+).Its own value rather than a synonym for
LIGHT. This used to be mapped there with the approximation written into the javadoc, and a documented approximation is still a value the caller cannot tell from a real one: an app drawing a hypnogram, or comparing a night on iOS with a night on Android, was handed Apple's classification labelled as the clinical one.Apple's core is a vendor classification and is not clinically identical to N1+N2. If your reading of the two is the same, treat them the same; the API will not do it for you.
-
DEEP
Deep sleep. HealthKitasleepDeep, iOS 16+. -
REM
REM sleep. HealthKitasleepREM, iOS 16+.
-
-
Method Details
-
values
Returns an array containing the constants of this enum type, in the order they are declared.- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum type has no constant with the specified nameNullPointerException- if the argument is null
-