1// Signature format: 2.0 2package android.health.connect { 3 4 public final class AggregateRecordsGroupedByDurationResponse<T> { 5 method @Nullable public T get(@NonNull android.health.connect.datatypes.AggregationType<T>); 6 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOrigins(@NonNull android.health.connect.datatypes.AggregationType<T>); 7 method @NonNull public java.time.Instant getEndTime(); 8 method @NonNull public java.time.Instant getStartTime(); 9 method @Nullable public java.time.ZoneOffset getZoneOffset(@NonNull android.health.connect.datatypes.AggregationType<T>); 10 } 11 12 public final class AggregateRecordsGroupedByPeriodResponse<T> { 13 method @Nullable public T get(@NonNull android.health.connect.datatypes.AggregationType<T>); 14 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOrigins(@NonNull android.health.connect.datatypes.AggregationType<T>); 15 method @NonNull public java.time.LocalDateTime getEndTime(); 16 method @NonNull public java.time.LocalDateTime getStartTime(); 17 method @Nullable public java.time.ZoneOffset getZoneOffset(@NonNull android.health.connect.datatypes.AggregationType<T>); 18 } 19 20 public final class AggregateRecordsRequest<T> { 21 method @NonNull public java.util.Set<android.health.connect.datatypes.AggregationType<T>> getAggregationTypes(); 22 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOriginsFilters(); 23 method @NonNull public android.health.connect.TimeRangeFilter getTimeRangeFilter(); 24 } 25 26 public static final class AggregateRecordsRequest.Builder<T> { 27 ctor public AggregateRecordsRequest.Builder(@NonNull android.health.connect.TimeRangeFilter); 28 method @NonNull public android.health.connect.AggregateRecordsRequest.Builder<T> addAggregationType(@NonNull android.health.connect.datatypes.AggregationType<T>); 29 method @NonNull public android.health.connect.AggregateRecordsRequest.Builder<T> addDataOriginsFilter(@NonNull android.health.connect.datatypes.DataOrigin); 30 method @NonNull public android.health.connect.AggregateRecordsRequest<T> build(); 31 } 32 33 public final class AggregateRecordsResponse<T> { 34 method @Nullable public T get(@NonNull android.health.connect.datatypes.AggregationType<T>); 35 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOrigins(@NonNull android.health.connect.datatypes.AggregationType<T>); 36 method @Nullable public java.time.ZoneOffset getZoneOffset(@NonNull android.health.connect.datatypes.AggregationType<T>); 37 } 38 39 public class HealthConnectException extends java.lang.RuntimeException { 40 method public int getErrorCode(); 41 field public static final int ERROR_DATA_SYNC_IN_PROGRESS = 8; // 0x8 42 field public static final int ERROR_INTERNAL = 2; // 0x2 43 field public static final int ERROR_INVALID_ARGUMENT = 3; // 0x3 44 field public static final int ERROR_IO = 4; // 0x4 45 field public static final int ERROR_RATE_LIMIT_EXCEEDED = 7; // 0x7 46 field public static final int ERROR_REMOTE = 6; // 0x6 47 field public static final int ERROR_SECURITY = 5; // 0x5 48 field public static final int ERROR_UNKNOWN = 1; // 0x1 49 field public static final int ERROR_UNSUPPORTED_OPERATION = 9; // 0x9 50 } 51 52 public class HealthConnectManager { 53 method @NonNull public <T> void aggregate(@NonNull android.health.connect.AggregateRecordsRequest<T>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.AggregateRecordsResponse<T>,android.health.connect.HealthConnectException>); 54 method public <T> void aggregateGroupByDuration(@NonNull android.health.connect.AggregateRecordsRequest<T>, @NonNull java.time.Duration, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.health.connect.AggregateRecordsGroupedByDurationResponse<T>>,android.health.connect.HealthConnectException>); 55 method public <T> void aggregateGroupByPeriod(@NonNull android.health.connect.AggregateRecordsRequest<T>, @NonNull java.time.Period, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.health.connect.AggregateRecordsGroupedByPeriodResponse<T>>,android.health.connect.HealthConnectException>); 56 method public void deleteRecords(@NonNull java.util.List<android.health.connect.RecordIdFilter>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 57 method public void deleteRecords(@NonNull Class<? extends android.health.connect.datatypes.Record>, @NonNull android.health.connect.TimeRangeFilter, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 58 method public void getChangeLogToken(@NonNull android.health.connect.changelog.ChangeLogTokenRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.changelog.ChangeLogTokenResponse,android.health.connect.HealthConnectException>); 59 method public void getChangeLogs(@NonNull android.health.connect.changelog.ChangeLogsRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.changelog.ChangeLogsResponse,android.health.connect.HealthConnectException>); 60 method public void insertRecords(@NonNull java.util.List<android.health.connect.datatypes.Record>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.InsertRecordsResponse,android.health.connect.HealthConnectException>); 61 method public <T extends android.health.connect.datatypes.Record> void readRecords(@NonNull android.health.connect.ReadRecordsRequest<T>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.ReadRecordsResponse<T>,android.health.connect.HealthConnectException>); 62 method public void updateRecords(@NonNull java.util.List<android.health.connect.datatypes.Record>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 63 field public static final String ACTION_MANAGE_HEALTH_PERMISSIONS = "android.health.connect.action.MANAGE_HEALTH_PERMISSIONS"; 64 field public static final String ACTION_REQUEST_EXERCISE_ROUTE = "android.health.connect.action.REQUEST_EXERCISE_ROUTE"; 65 field public static final String CATEGORY_HEALTH_PERMISSIONS = "android.intent.category.HEALTH_PERMISSIONS"; 66 field public static final String EXTRA_EXERCISE_ROUTE = "android.health.connect.extra.EXERCISE_ROUTE"; 67 field public static final String EXTRA_SESSION_ID = "android.health.connect.extra.SESSION_ID"; 68 } 69 70 public final class HealthPermissions { 71 field public static final String READ_ACTIVE_CALORIES_BURNED = "android.permission.health.READ_ACTIVE_CALORIES_BURNED"; 72 field public static final String READ_BASAL_BODY_TEMPERATURE = "android.permission.health.READ_BASAL_BODY_TEMPERATURE"; 73 field public static final String READ_BASAL_METABOLIC_RATE = "android.permission.health.READ_BASAL_METABOLIC_RATE"; 74 field public static final String READ_BLOOD_GLUCOSE = "android.permission.health.READ_BLOOD_GLUCOSE"; 75 field public static final String READ_BLOOD_PRESSURE = "android.permission.health.READ_BLOOD_PRESSURE"; 76 field public static final String READ_BODY_FAT = "android.permission.health.READ_BODY_FAT"; 77 field public static final String READ_BODY_TEMPERATURE = "android.permission.health.READ_BODY_TEMPERATURE"; 78 field public static final String READ_BODY_WATER_MASS = "android.permission.health.READ_BODY_WATER_MASS"; 79 field public static final String READ_BONE_MASS = "android.permission.health.READ_BONE_MASS"; 80 field public static final String READ_CERVICAL_MUCUS = "android.permission.health.READ_CERVICAL_MUCUS"; 81 field public static final String READ_DISTANCE = "android.permission.health.READ_DISTANCE"; 82 field public static final String READ_ELEVATION_GAINED = "android.permission.health.READ_ELEVATION_GAINED"; 83 field public static final String READ_EXERCISE = "android.permission.health.READ_EXERCISE"; 84 field public static final String READ_EXERCISE_ROUTES = "android.permission.health.READ_EXERCISE_ROUTES"; 85 field public static final String READ_FLOORS_CLIMBED = "android.permission.health.READ_FLOORS_CLIMBED"; 86 field public static final String READ_HEART_RATE = "android.permission.health.READ_HEART_RATE"; 87 field public static final String READ_HEART_RATE_VARIABILITY = "android.permission.health.READ_HEART_RATE_VARIABILITY"; 88 field public static final String READ_HEIGHT = "android.permission.health.READ_HEIGHT"; 89 field public static final String READ_HYDRATION = "android.permission.health.READ_HYDRATION"; 90 field public static final String READ_INTERMENSTRUAL_BLEEDING = "android.permission.health.READ_INTERMENSTRUAL_BLEEDING"; 91 field public static final String READ_LEAN_BODY_MASS = "android.permission.health.READ_LEAN_BODY_MASS"; 92 field public static final String READ_MENSTRUATION = "android.permission.health.READ_MENSTRUATION"; 93 field public static final String READ_NUTRITION = "android.permission.health.READ_NUTRITION"; 94 field public static final String READ_OVULATION_TEST = "android.permission.health.READ_OVULATION_TEST"; 95 field public static final String READ_OXYGEN_SATURATION = "android.permission.health.READ_OXYGEN_SATURATION"; 96 field public static final String READ_POWER = "android.permission.health.READ_POWER"; 97 field public static final String READ_RESPIRATORY_RATE = "android.permission.health.READ_RESPIRATORY_RATE"; 98 field public static final String READ_RESTING_HEART_RATE = "android.permission.health.READ_RESTING_HEART_RATE"; 99 field public static final String READ_SEXUAL_ACTIVITY = "android.permission.health.READ_SEXUAL_ACTIVITY"; 100 field public static final String READ_SLEEP = "android.permission.health.READ_SLEEP"; 101 field public static final String READ_SPEED = "android.permission.health.READ_SPEED"; 102 field public static final String READ_STEPS = "android.permission.health.READ_STEPS"; 103 field public static final String READ_TOTAL_CALORIES_BURNED = "android.permission.health.READ_TOTAL_CALORIES_BURNED"; 104 field public static final String READ_VO2_MAX = "android.permission.health.READ_VO2_MAX"; 105 field public static final String READ_WEIGHT = "android.permission.health.READ_WEIGHT"; 106 field public static final String READ_WHEELCHAIR_PUSHES = "android.permission.health.READ_WHEELCHAIR_PUSHES"; 107 field public static final String WRITE_ACTIVE_CALORIES_BURNED = "android.permission.health.WRITE_ACTIVE_CALORIES_BURNED"; 108 field public static final String WRITE_BASAL_BODY_TEMPERATURE = "android.permission.health.WRITE_BASAL_BODY_TEMPERATURE"; 109 field public static final String WRITE_BASAL_METABOLIC_RATE = "android.permission.health.WRITE_BASAL_METABOLIC_RATE"; 110 field public static final String WRITE_BLOOD_GLUCOSE = "android.permission.health.WRITE_BLOOD_GLUCOSE"; 111 field public static final String WRITE_BLOOD_PRESSURE = "android.permission.health.WRITE_BLOOD_PRESSURE"; 112 field public static final String WRITE_BODY_FAT = "android.permission.health.WRITE_BODY_FAT"; 113 field public static final String WRITE_BODY_TEMPERATURE = "android.permission.health.WRITE_BODY_TEMPERATURE"; 114 field public static final String WRITE_BODY_WATER_MASS = "android.permission.health.WRITE_BODY_WATER_MASS"; 115 field public static final String WRITE_BONE_MASS = "android.permission.health.WRITE_BONE_MASS"; 116 field public static final String WRITE_CERVICAL_MUCUS = "android.permission.health.WRITE_CERVICAL_MUCUS"; 117 field public static final String WRITE_DISTANCE = "android.permission.health.WRITE_DISTANCE"; 118 field public static final String WRITE_ELEVATION_GAINED = "android.permission.health.WRITE_ELEVATION_GAINED"; 119 field public static final String WRITE_EXERCISE = "android.permission.health.WRITE_EXERCISE"; 120 field public static final String WRITE_EXERCISE_ROUTE = "android.permission.health.WRITE_EXERCISE_ROUTE"; 121 field public static final String WRITE_FLOORS_CLIMBED = "android.permission.health.WRITE_FLOORS_CLIMBED"; 122 field public static final String WRITE_HEART_RATE = "android.permission.health.WRITE_HEART_RATE"; 123 field public static final String WRITE_HEART_RATE_VARIABILITY = "android.permission.health.WRITE_HEART_RATE_VARIABILITY"; 124 field public static final String WRITE_HEIGHT = "android.permission.health.WRITE_HEIGHT"; 125 field public static final String WRITE_HYDRATION = "android.permission.health.WRITE_HYDRATION"; 126 field public static final String WRITE_INTERMENSTRUAL_BLEEDING = "android.permission.health.WRITE_INTERMENSTRUAL_BLEEDING"; 127 field public static final String WRITE_LEAN_BODY_MASS = "android.permission.health.WRITE_LEAN_BODY_MASS"; 128 field public static final String WRITE_MENSTRUATION = "android.permission.health.WRITE_MENSTRUATION"; 129 field public static final String WRITE_NUTRITION = "android.permission.health.WRITE_NUTRITION"; 130 field public static final String WRITE_OVULATION_TEST = "android.permission.health.WRITE_OVULATION_TEST"; 131 field public static final String WRITE_OXYGEN_SATURATION = "android.permission.health.WRITE_OXYGEN_SATURATION"; 132 field public static final String WRITE_POWER = "android.permission.health.WRITE_POWER"; 133 field public static final String WRITE_RESPIRATORY_RATE = "android.permission.health.WRITE_RESPIRATORY_RATE"; 134 field public static final String WRITE_RESTING_HEART_RATE = "android.permission.health.WRITE_RESTING_HEART_RATE"; 135 field public static final String WRITE_SEXUAL_ACTIVITY = "android.permission.health.WRITE_SEXUAL_ACTIVITY"; 136 field public static final String WRITE_SLEEP = "android.permission.health.WRITE_SLEEP"; 137 field public static final String WRITE_SPEED = "android.permission.health.WRITE_SPEED"; 138 field public static final String WRITE_STEPS = "android.permission.health.WRITE_STEPS"; 139 field public static final String WRITE_TOTAL_CALORIES_BURNED = "android.permission.health.WRITE_TOTAL_CALORIES_BURNED"; 140 field public static final String WRITE_VO2_MAX = "android.permission.health.WRITE_VO2_MAX"; 141 field public static final String WRITE_WEIGHT = "android.permission.health.WRITE_WEIGHT"; 142 field public static final String WRITE_WHEELCHAIR_PUSHES = "android.permission.health.WRITE_WHEELCHAIR_PUSHES"; 143 } 144 145 public class InsertRecordsResponse { 146 method @NonNull public java.util.List<android.health.connect.datatypes.Record> getRecords(); 147 } 148 149 public final class LocalTimeRangeFilter implements android.health.connect.TimeRangeFilter { 150 method @Nullable public java.time.LocalDateTime getEndTime(); 151 method @Nullable public java.time.LocalDateTime getStartTime(); 152 method @NonNull public boolean isBounded(); 153 } 154 155 public static final class LocalTimeRangeFilter.Builder { 156 ctor public LocalTimeRangeFilter.Builder(); 157 method @NonNull public android.health.connect.LocalTimeRangeFilter build(); 158 method @NonNull public android.health.connect.LocalTimeRangeFilter.Builder setEndTime(@Nullable java.time.LocalDateTime); 159 method @NonNull public android.health.connect.LocalTimeRangeFilter.Builder setStartTime(@Nullable java.time.LocalDateTime); 160 } 161 162 public abstract class ReadRecordsRequest<T extends android.health.connect.datatypes.Record> { 163 method @NonNull public Class<T> getRecordType(); 164 } 165 166 public final class ReadRecordsRequestUsingFilters<T extends android.health.connect.datatypes.Record> extends android.health.connect.ReadRecordsRequest<T> { 167 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOrigins(); 168 method @IntRange(from=1, to=5000) public int getPageSize(); 169 method public long getPageToken(); 170 method @Nullable public android.health.connect.TimeRangeFilter getTimeRangeFilter(); 171 method public boolean isAscending(); 172 } 173 174 public static final class ReadRecordsRequestUsingFilters.Builder<T extends android.health.connect.datatypes.Record> { 175 ctor public ReadRecordsRequestUsingFilters.Builder(@NonNull Class<T>); 176 method @NonNull public android.health.connect.ReadRecordsRequestUsingFilters.Builder<T> addDataOrigins(@NonNull android.health.connect.datatypes.DataOrigin); 177 method @NonNull public android.health.connect.ReadRecordsRequestUsingFilters<T> build(); 178 method @NonNull public android.health.connect.ReadRecordsRequestUsingFilters.Builder<T> setAscending(boolean); 179 method @NonNull public android.health.connect.ReadRecordsRequestUsingFilters.Builder<T> setPageSize(@IntRange(from=1, to=5000) int); 180 method @NonNull public android.health.connect.ReadRecordsRequestUsingFilters.Builder<T> setPageToken(long); 181 method @NonNull public android.health.connect.ReadRecordsRequestUsingFilters.Builder<T> setTimeRangeFilter(@Nullable android.health.connect.TimeRangeFilter); 182 } 183 184 public final class ReadRecordsRequestUsingIds<T extends android.health.connect.datatypes.Record> extends android.health.connect.ReadRecordsRequest<T> { 185 method @NonNull public java.util.List<android.health.connect.RecordIdFilter> getRecordIdFilters(); 186 } 187 188 public static final class ReadRecordsRequestUsingIds.Builder<T extends android.health.connect.datatypes.Record> { 189 ctor public ReadRecordsRequestUsingIds.Builder(@NonNull Class<T>); 190 method @NonNull public android.health.connect.ReadRecordsRequestUsingIds.Builder<T> addClientRecordId(@NonNull String); 191 method @NonNull public android.health.connect.ReadRecordsRequestUsingIds.Builder<T> addId(@NonNull String); 192 method @NonNull public android.health.connect.ReadRecordsRequestUsingIds<T> build(); 193 } 194 195 public class ReadRecordsResponse<T extends android.health.connect.datatypes.Record> { 196 method public long getNextPageToken(); 197 method @NonNull public java.util.List<T> getRecords(); 198 } 199 200 public class RecordIdFilter { 201 method @NonNull public static android.health.connect.RecordIdFilter fromClientRecordId(@NonNull Class<? extends android.health.connect.datatypes.Record>, @NonNull String); 202 method @NonNull public static android.health.connect.RecordIdFilter fromId(@NonNull Class<? extends android.health.connect.datatypes.Record>, @NonNull String); 203 method @Nullable public String getClientRecordId(); 204 method @Nullable public String getId(); 205 method @NonNull public Class<? extends android.health.connect.datatypes.Record> getRecordType(); 206 } 207 208 public final class TimeInstantRangeFilter implements android.health.connect.TimeRangeFilter { 209 method @Nullable public java.time.Instant getEndTime(); 210 method @Nullable public java.time.Instant getStartTime(); 211 method @NonNull public boolean isBounded(); 212 } 213 214 public static final class TimeInstantRangeFilter.Builder { 215 ctor public TimeInstantRangeFilter.Builder(); 216 method @NonNull public android.health.connect.TimeInstantRangeFilter build(); 217 method @NonNull public android.health.connect.TimeInstantRangeFilter.Builder setEndTime(@Nullable java.time.Instant); 218 method @NonNull public android.health.connect.TimeInstantRangeFilter.Builder setStartTime(@Nullable java.time.Instant); 219 } 220 221 public interface TimeRangeFilter { 222 } 223 224} 225 226package android.health.connect.changelog { 227 228 public final class ChangeLogTokenRequest implements android.os.Parcelable { 229 method public int describeContents(); 230 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOriginFilters(); 231 method @NonNull public java.util.Set<java.lang.Class<? extends android.health.connect.datatypes.Record>> getRecordTypes(); 232 method public void writeToParcel(@NonNull android.os.Parcel, int); 233 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.changelog.ChangeLogTokenRequest> CREATOR; 234 } 235 236 public static final class ChangeLogTokenRequest.Builder { 237 ctor public ChangeLogTokenRequest.Builder(); 238 method @NonNull public android.health.connect.changelog.ChangeLogTokenRequest.Builder addDataOriginFilter(@NonNull android.health.connect.datatypes.DataOrigin); 239 method @NonNull public android.health.connect.changelog.ChangeLogTokenRequest.Builder addRecordType(@NonNull Class<? extends android.health.connect.datatypes.Record>); 240 method @NonNull public android.health.connect.changelog.ChangeLogTokenRequest build(); 241 } 242 243 public final class ChangeLogTokenResponse implements android.os.Parcelable { 244 method public int describeContents(); 245 method @NonNull public String getToken(); 246 method public void writeToParcel(@NonNull android.os.Parcel, int); 247 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.changelog.ChangeLogTokenResponse> CREATOR; 248 } 249 250 public final class ChangeLogsRequest implements android.os.Parcelable { 251 method public int describeContents(); 252 method @IntRange(from=1, to=5000) public int getPageSize(); 253 method @NonNull public String getToken(); 254 method public void writeToParcel(@NonNull android.os.Parcel, int); 255 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.changelog.ChangeLogsRequest> CREATOR; 256 } 257 258 public static final class ChangeLogsRequest.Builder { 259 ctor public ChangeLogsRequest.Builder(@NonNull String); 260 method @NonNull public android.health.connect.changelog.ChangeLogsRequest build(); 261 method @NonNull public android.health.connect.changelog.ChangeLogsRequest.Builder setPageSize(@IntRange(from=1, to=5000) int); 262 } 263 264 public final class ChangeLogsResponse implements android.os.Parcelable { 265 method public int describeContents(); 266 method @NonNull public java.util.List<android.health.connect.changelog.ChangeLogsResponse.DeletedLog> getDeletedLogs(); 267 method @NonNull public String getNextChangesToken(); 268 method @NonNull public java.util.List<android.health.connect.datatypes.Record> getUpsertedRecords(); 269 method public boolean hasMorePages(); 270 method public void writeToParcel(@NonNull android.os.Parcel, int); 271 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.changelog.ChangeLogsResponse> CREATOR; 272 } 273 274 public static final class ChangeLogsResponse.DeletedLog { 275 ctor public ChangeLogsResponse.DeletedLog(@NonNull String, long); 276 method @NonNull public String getDeletedRecordId(); 277 method @NonNull public java.time.Instant getDeletedTime(); 278 } 279 280} 281 282package android.health.connect.datatypes { 283 284 public final class ActiveCaloriesBurnedRecord extends android.health.connect.datatypes.IntervalRecord { 285 method @NonNull public android.health.connect.datatypes.units.Energy getEnergy(); 286 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Energy> ACTIVE_CALORIES_TOTAL; 287 } 288 289 public static final class ActiveCaloriesBurnedRecord.Builder { 290 ctor public ActiveCaloriesBurnedRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Energy); 291 method @NonNull public android.health.connect.datatypes.ActiveCaloriesBurnedRecord build(); 292 method @NonNull public android.health.connect.datatypes.ActiveCaloriesBurnedRecord.Builder clearEndZoneOffset(); 293 method @NonNull public android.health.connect.datatypes.ActiveCaloriesBurnedRecord.Builder clearStartZoneOffset(); 294 method @NonNull public android.health.connect.datatypes.ActiveCaloriesBurnedRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 295 method @NonNull public android.health.connect.datatypes.ActiveCaloriesBurnedRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 296 } 297 298 public final class AggregationType<T> { 299 } 300 301 public final class AppInfo { 302 method @Nullable public android.graphics.Bitmap getIcon(); 303 method @Nullable public String getName(); 304 method @NonNull public String getPackageName(); 305 } 306 307 public final class BasalBodyTemperatureRecord extends android.health.connect.datatypes.InstantRecord { 308 method public int getMeasurementLocation(); 309 method @NonNull public android.health.connect.datatypes.units.Temperature getTemperature(); 310 } 311 312 public static final class BasalBodyTemperatureRecord.Builder { 313 ctor public BasalBodyTemperatureRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int, @NonNull android.health.connect.datatypes.units.Temperature); 314 method @NonNull public android.health.connect.datatypes.BasalBodyTemperatureRecord build(); 315 method @NonNull public android.health.connect.datatypes.BasalBodyTemperatureRecord.Builder clearZoneOffset(); 316 method @NonNull public android.health.connect.datatypes.BasalBodyTemperatureRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 317 } 318 319 public final class BasalMetabolicRateRecord extends android.health.connect.datatypes.InstantRecord { 320 method @NonNull public android.health.connect.datatypes.units.Power getBasalMetabolicRate(); 321 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Energy> BASAL_CALORIES_TOTAL; 322 } 323 324 public static final class BasalMetabolicRateRecord.Builder { 325 ctor public BasalMetabolicRateRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Power); 326 method @NonNull public android.health.connect.datatypes.BasalMetabolicRateRecord build(); 327 method @NonNull public android.health.connect.datatypes.BasalMetabolicRateRecord.Builder clearZoneOffset(); 328 method @NonNull public android.health.connect.datatypes.BasalMetabolicRateRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 329 } 330 331 public final class BloodGlucoseRecord extends android.health.connect.datatypes.InstantRecord { 332 method @NonNull public android.health.connect.datatypes.units.BloodGlucose getLevel(); 333 method public int getMealType(); 334 method public int getRelationToMeal(); 335 method public int getSpecimenSource(); 336 } 337 338 public static final class BloodGlucoseRecord.Builder { 339 ctor public BloodGlucoseRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int, @NonNull android.health.connect.datatypes.units.BloodGlucose, int, int); 340 method @NonNull public android.health.connect.datatypes.BloodGlucoseRecord build(); 341 method @NonNull public android.health.connect.datatypes.BloodGlucoseRecord.Builder clearZoneOffset(); 342 method @NonNull public android.health.connect.datatypes.BloodGlucoseRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 343 } 344 345 public static final class BloodGlucoseRecord.RelationToMealType { 346 field public static final int RELATION_TO_MEAL_AFTER_MEAL = 4; // 0x4 347 field public static final int RELATION_TO_MEAL_BEFORE_MEAL = 3; // 0x3 348 field public static final int RELATION_TO_MEAL_FASTING = 2; // 0x2 349 field public static final int RELATION_TO_MEAL_GENERAL = 1; // 0x1 350 field public static final int RELATION_TO_MEAL_UNKNOWN = 0; // 0x0 351 } 352 353 public static final class BloodGlucoseRecord.SpecimenSource { 354 field public static final int SPECIMEN_SOURCE_CAPILLARY_BLOOD = 2; // 0x2 355 field public static final int SPECIMEN_SOURCE_INTERSTITIAL_FLUID = 1; // 0x1 356 field public static final int SPECIMEN_SOURCE_PLASMA = 3; // 0x3 357 field public static final int SPECIMEN_SOURCE_SERUM = 4; // 0x4 358 field public static final int SPECIMEN_SOURCE_TEARS = 5; // 0x5 359 field public static final int SPECIMEN_SOURCE_UNKNOWN = 0; // 0x0 360 field public static final int SPECIMEN_SOURCE_WHOLE_BLOOD = 6; // 0x6 361 } 362 363 public final class BloodPressureRecord extends android.health.connect.datatypes.InstantRecord { 364 method public int getBodyPosition(); 365 method @NonNull public android.health.connect.datatypes.units.Pressure getDiastolic(); 366 method public int getMeasurementLocation(); 367 method @NonNull public android.health.connect.datatypes.units.Pressure getSystolic(); 368 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Pressure> DIASTOLIC_AVG; 369 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Pressure> DIASTOLIC_MAX; 370 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Pressure> DIASTOLIC_MIN; 371 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Pressure> SYSTOLIC_AVG; 372 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Pressure> SYSTOLIC_MAX; 373 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Pressure> SYSTOLIC_MIN; 374 } 375 376 public static final class BloodPressureRecord.BloodPressureMeasurementLocation { 377 field public static final int BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_UPPER_ARM = 3; // 0x3 378 field public static final int BLOOD_PRESSURE_MEASUREMENT_LOCATION_LEFT_WRIST = 1; // 0x1 379 field public static final int BLOOD_PRESSURE_MEASUREMENT_LOCATION_RIGHT_UPPER_ARM = 4; // 0x4 380 field public static final int BLOOD_PRESSURE_MEASUREMENT_LOCATION_RIGHT_WRIST = 2; // 0x2 381 field public static final int BLOOD_PRESSURE_MEASUREMENT_LOCATION_UNKNOWN = 0; // 0x0 382 } 383 384 public static final class BloodPressureRecord.BodyPosition { 385 field public static final int BODY_POSITION_LYING_DOWN = 3; // 0x3 386 field public static final int BODY_POSITION_RECLINING = 4; // 0x4 387 field public static final int BODY_POSITION_SITTING_DOWN = 2; // 0x2 388 field public static final int BODY_POSITION_STANDING_UP = 1; // 0x1 389 field public static final int BODY_POSITION_UNKNOWN = 0; // 0x0 390 } 391 392 public static final class BloodPressureRecord.Builder { 393 ctor public BloodPressureRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int, @NonNull android.health.connect.datatypes.units.Pressure, @NonNull android.health.connect.datatypes.units.Pressure, int); 394 method @NonNull public android.health.connect.datatypes.BloodPressureRecord build(); 395 method @NonNull public android.health.connect.datatypes.BloodPressureRecord.Builder clearZoneOffset(); 396 method @NonNull public android.health.connect.datatypes.BloodPressureRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 397 } 398 399 public final class BodyFatRecord extends android.health.connect.datatypes.InstantRecord { 400 method @NonNull public android.health.connect.datatypes.units.Percentage getPercentage(); 401 } 402 403 public static final class BodyFatRecord.Builder { 404 ctor public BodyFatRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Percentage); 405 method @NonNull public android.health.connect.datatypes.BodyFatRecord build(); 406 method @NonNull public android.health.connect.datatypes.BodyFatRecord.Builder clearZoneOffset(); 407 method @NonNull public android.health.connect.datatypes.BodyFatRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 408 } 409 410 public final class BodyTemperatureMeasurementLocation { 411 field public static final int MEASUREMENT_LOCATION_ARMPIT = 1; // 0x1 412 field public static final int MEASUREMENT_LOCATION_EAR = 8; // 0x8 413 field public static final int MEASUREMENT_LOCATION_FINGER = 2; // 0x2 414 field public static final int MEASUREMENT_LOCATION_FOREHEAD = 3; // 0x3 415 field public static final int MEASUREMENT_LOCATION_MOUTH = 4; // 0x4 416 field public static final int MEASUREMENT_LOCATION_RECTUM = 5; // 0x5 417 field public static final int MEASUREMENT_LOCATION_TEMPORAL_ARTERY = 6; // 0x6 418 field public static final int MEASUREMENT_LOCATION_TOE = 7; // 0x7 419 field public static final int MEASUREMENT_LOCATION_UNKNOWN = 0; // 0x0 420 field public static final int MEASUREMENT_LOCATION_VAGINA = 10; // 0xa 421 field public static final int MEASUREMENT_LOCATION_WRIST = 9; // 0x9 422 } 423 424 public final class BodyTemperatureRecord extends android.health.connect.datatypes.InstantRecord { 425 method public int getMeasurementLocation(); 426 method @NonNull public android.health.connect.datatypes.units.Temperature getTemperature(); 427 } 428 429 public static final class BodyTemperatureRecord.Builder { 430 ctor public BodyTemperatureRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int, @NonNull android.health.connect.datatypes.units.Temperature); 431 method @NonNull public android.health.connect.datatypes.BodyTemperatureRecord build(); 432 method @NonNull public android.health.connect.datatypes.BodyTemperatureRecord.Builder clearZoneOffset(); 433 method @NonNull public android.health.connect.datatypes.BodyTemperatureRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 434 } 435 436 public final class BodyWaterMassRecord extends android.health.connect.datatypes.InstantRecord { 437 method @NonNull public android.health.connect.datatypes.units.Mass getBodyWaterMass(); 438 } 439 440 public static final class BodyWaterMassRecord.Builder { 441 ctor public BodyWaterMassRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Mass); 442 method @NonNull public android.health.connect.datatypes.BodyWaterMassRecord build(); 443 method @NonNull public android.health.connect.datatypes.BodyWaterMassRecord.Builder clearZoneOffset(); 444 method @NonNull public android.health.connect.datatypes.BodyWaterMassRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 445 } 446 447 public final class BoneMassRecord extends android.health.connect.datatypes.InstantRecord { 448 method @NonNull public android.health.connect.datatypes.units.Mass getMass(); 449 } 450 451 public static final class BoneMassRecord.Builder { 452 ctor public BoneMassRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Mass); 453 method @NonNull public android.health.connect.datatypes.BoneMassRecord build(); 454 method @NonNull public android.health.connect.datatypes.BoneMassRecord.Builder clearZoneOffset(); 455 method @NonNull public android.health.connect.datatypes.BoneMassRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 456 } 457 458 public final class CervicalMucusRecord extends android.health.connect.datatypes.InstantRecord { 459 method public int getAppearance(); 460 method public int getSensation(); 461 } 462 463 public static final class CervicalMucusRecord.Builder { 464 ctor public CervicalMucusRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int, int); 465 method @NonNull public android.health.connect.datatypes.CervicalMucusRecord build(); 466 method @NonNull public android.health.connect.datatypes.CervicalMucusRecord.Builder clearZoneOffset(); 467 method @NonNull public android.health.connect.datatypes.CervicalMucusRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 468 } 469 470 public static final class CervicalMucusRecord.CervicalMucusAppearance { 471 field public static final int APPEARANCE_CREAMY = 3; // 0x3 472 field public static final int APPEARANCE_DRY = 1; // 0x1 473 field public static final int APPEARANCE_EGG_WHITE = 5; // 0x5 474 field public static final int APPEARANCE_STICKY = 2; // 0x2 475 field public static final int APPEARANCE_UNKNOWN = 0; // 0x0 476 field public static final int APPEARANCE_UNUSUAL = 6; // 0x6 477 field public static final int APPEARANCE_WATERY = 4; // 0x4 478 } 479 480 public static final class CervicalMucusRecord.CervicalMucusSensation { 481 field public static final int SENSATION_HEAVY = 3; // 0x3 482 field public static final int SENSATION_LIGHT = 1; // 0x1 483 field public static final int SENSATION_MEDIUM = 2; // 0x2 484 field public static final int SENSATION_UNKNOWN = 0; // 0x0 485 } 486 487 public final class CyclingPedalingCadenceRecord extends android.health.connect.datatypes.IntervalRecord { 488 method @NonNull public java.util.List<android.health.connect.datatypes.CyclingPedalingCadenceRecord.CyclingPedalingCadenceRecordSample> getSamples(); 489 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> RPM_AVG; 490 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> RPM_MAX; 491 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> RPM_MIN; 492 } 493 494 public static final class CyclingPedalingCadenceRecord.Builder { 495 ctor public CyclingPedalingCadenceRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull java.util.List<android.health.connect.datatypes.CyclingPedalingCadenceRecord.CyclingPedalingCadenceRecordSample>); 496 method @NonNull public android.health.connect.datatypes.CyclingPedalingCadenceRecord build(); 497 method @NonNull public android.health.connect.datatypes.CyclingPedalingCadenceRecord.Builder clearEndZoneOffset(); 498 method @NonNull public android.health.connect.datatypes.CyclingPedalingCadenceRecord.Builder clearStartZoneOffset(); 499 method @NonNull public android.health.connect.datatypes.CyclingPedalingCadenceRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 500 method @NonNull public android.health.connect.datatypes.CyclingPedalingCadenceRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 501 } 502 503 public static final class CyclingPedalingCadenceRecord.CyclingPedalingCadenceRecordSample { 504 ctor public CyclingPedalingCadenceRecord.CyclingPedalingCadenceRecordSample(double, @NonNull java.time.Instant); 505 method public double getRevolutionsPerMinute(); 506 method @NonNull public java.time.Instant getTime(); 507 } 508 509 public final class DataOrigin { 510 method @NonNull public String getPackageName(); 511 } 512 513 public static final class DataOrigin.Builder { 514 ctor public DataOrigin.Builder(); 515 method @NonNull public android.health.connect.datatypes.DataOrigin build(); 516 method @NonNull public android.health.connect.datatypes.DataOrigin.Builder setPackageName(@NonNull String); 517 } 518 519 public final class Device { 520 method @Nullable public String getManufacturer(); 521 method @Nullable public String getModel(); 522 method public int getType(); 523 field public static final int DEVICE_TYPE_CHEST_STRAP = 7; // 0x7 524 field public static final int DEVICE_TYPE_FITNESS_BAND = 6; // 0x6 525 field public static final int DEVICE_TYPE_HEAD_MOUNTED = 5; // 0x5 526 field public static final int DEVICE_TYPE_PHONE = 2; // 0x2 527 field public static final int DEVICE_TYPE_RING = 4; // 0x4 528 field public static final int DEVICE_TYPE_SCALE = 3; // 0x3 529 field public static final int DEVICE_TYPE_SMART_DISPLAY = 8; // 0x8 530 field public static final int DEVICE_TYPE_UNKNOWN = 0; // 0x0 531 field public static final int DEVICE_TYPE_WATCH = 1; // 0x1 532 } 533 534 public static final class Device.Builder { 535 ctor public Device.Builder(); 536 method @NonNull public android.health.connect.datatypes.Device build(); 537 method @NonNull public android.health.connect.datatypes.Device.Builder setManufacturer(@Nullable String); 538 method @NonNull public android.health.connect.datatypes.Device.Builder setModel(@Nullable String); 539 method @NonNull public android.health.connect.datatypes.Device.Builder setType(int); 540 } 541 542 public final class DistanceRecord extends android.health.connect.datatypes.IntervalRecord { 543 method @NonNull public android.health.connect.datatypes.units.Length getDistance(); 544 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Length> DISTANCE_TOTAL; 545 } 546 547 public static final class DistanceRecord.Builder { 548 ctor public DistanceRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Length); 549 method @NonNull public android.health.connect.datatypes.DistanceRecord build(); 550 method @NonNull public android.health.connect.datatypes.DistanceRecord.Builder clearEndZoneOffset(); 551 method @NonNull public android.health.connect.datatypes.DistanceRecord.Builder clearStartZoneOffset(); 552 method @NonNull public android.health.connect.datatypes.DistanceRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 553 method @NonNull public android.health.connect.datatypes.DistanceRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 554 } 555 556 public final class ElevationGainedRecord extends android.health.connect.datatypes.IntervalRecord { 557 method @NonNull public android.health.connect.datatypes.units.Length getElevation(); 558 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Length> ELEVATION_GAINED_TOTAL; 559 } 560 561 public static final class ElevationGainedRecord.Builder { 562 ctor public ElevationGainedRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Length); 563 method @NonNull public android.health.connect.datatypes.ElevationGainedRecord build(); 564 method @NonNull public android.health.connect.datatypes.ElevationGainedRecord.Builder clearEndZoneOffset(); 565 method @NonNull public android.health.connect.datatypes.ElevationGainedRecord.Builder clearStartZoneOffset(); 566 method @NonNull public android.health.connect.datatypes.ElevationGainedRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 567 method @NonNull public android.health.connect.datatypes.ElevationGainedRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 568 } 569 570 public final class ExerciseLap { 571 method @NonNull public java.time.Instant getEndTime(); 572 method @Nullable public android.health.connect.datatypes.units.Length getLength(); 573 method @NonNull public java.time.Instant getStartTime(); 574 } 575 576 public static final class ExerciseLap.Builder { 577 ctor public ExerciseLap.Builder(@NonNull java.time.Instant, @NonNull java.time.Instant); 578 method @NonNull public android.health.connect.datatypes.ExerciseLap build(); 579 method @NonNull public android.health.connect.datatypes.ExerciseLap.Builder setLength(@NonNull android.health.connect.datatypes.units.Length); 580 } 581 582 public final class ExerciseRoute implements android.os.Parcelable { 583 ctor public ExerciseRoute(@NonNull java.util.List<android.health.connect.datatypes.ExerciseRoute.Location>); 584 method public int describeContents(); 585 method @NonNull public java.util.List<android.health.connect.datatypes.ExerciseRoute.Location> getRouteLocations(); 586 method public void writeToParcel(@NonNull android.os.Parcel, int); 587 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.datatypes.ExerciseRoute> CREATOR; 588 } 589 590 public static final class ExerciseRoute.Location implements android.os.Parcelable { 591 method public int describeContents(); 592 method @Nullable public android.health.connect.datatypes.units.Length getAltitude(); 593 method @Nullable public android.health.connect.datatypes.units.Length getHorizontalAccuracy(); 594 method @FloatRange(from=-90.0, to=90.0) public double getLatitude(); 595 method @FloatRange(from=-180.0, to=180.0) public double getLongitude(); 596 method @NonNull public java.time.Instant getTime(); 597 method @Nullable public android.health.connect.datatypes.units.Length getVerticalAccuracy(); 598 method public void writeToParcel(@NonNull android.os.Parcel, int); 599 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.datatypes.ExerciseRoute.Location> CREATOR; 600 } 601 602 public static final class ExerciseRoute.Location.Builder { 603 ctor public ExerciseRoute.Location.Builder(@NonNull java.time.Instant, @FloatRange(from=-90.0, to=90.0) double, @FloatRange(from=-180.0, to=180.0) double); 604 method @NonNull public android.health.connect.datatypes.ExerciseRoute.Location build(); 605 method @NonNull public android.health.connect.datatypes.ExerciseRoute.Location.Builder setAltitude(@NonNull android.health.connect.datatypes.units.Length); 606 method @NonNull public android.health.connect.datatypes.ExerciseRoute.Location.Builder setHorizontalAccuracy(@NonNull android.health.connect.datatypes.units.Length); 607 method @NonNull public android.health.connect.datatypes.ExerciseRoute.Location.Builder setVerticalAccuracy(@NonNull android.health.connect.datatypes.units.Length); 608 } 609 610 public final class ExerciseSegment { 611 method @NonNull public java.time.Instant getEndTime(); 612 method @IntRange(from=0) public int getRepetitionsCount(); 613 method public int getSegmentType(); 614 method @NonNull public java.time.Instant getStartTime(); 615 } 616 617 public static final class ExerciseSegment.Builder { 618 ctor public ExerciseSegment.Builder(@NonNull java.time.Instant, @NonNull java.time.Instant, int); 619 method @NonNull public android.health.connect.datatypes.ExerciseSegment build(); 620 method @NonNull public android.health.connect.datatypes.ExerciseSegment.Builder setRepetitionsCount(@IntRange(from=0) int); 621 } 622 623 public final class ExerciseSegmentType { 624 field public static final int EXERCISE_SEGMENT_TYPE_ARM_CURL = 26; // 0x1a 625 field public static final int EXERCISE_SEGMENT_TYPE_BACK_EXTENSION = 27; // 0x1b 626 field public static final int EXERCISE_SEGMENT_TYPE_BALL_SLAM = 28; // 0x1c 627 field public static final int EXERCISE_SEGMENT_TYPE_BARBELL_SHOULDER_PRESS = 1; // 0x1 628 field public static final int EXERCISE_SEGMENT_TYPE_BENCH_PRESS = 29; // 0x1d 629 field public static final int EXERCISE_SEGMENT_TYPE_BENCH_SIT_UP = 2; // 0x2 630 field public static final int EXERCISE_SEGMENT_TYPE_BIKING = 3; // 0x3 631 field public static final int EXERCISE_SEGMENT_TYPE_BIKING_STATIONARY = 4; // 0x4 632 field public static final int EXERCISE_SEGMENT_TYPE_BURPEE = 30; // 0x1e 633 field public static final int EXERCISE_SEGMENT_TYPE_CRUNCH = 31; // 0x1f 634 field public static final int EXERCISE_SEGMENT_TYPE_DEADLIFT = 32; // 0x20 635 field public static final int EXERCISE_SEGMENT_TYPE_DOUBLE_ARM_TRICEPS_EXTENSION = 33; // 0x21 636 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_CURL_LEFT_ARM = 5; // 0x5 637 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_CURL_RIGHT_ARM = 6; // 0x6 638 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_FRONT_RAISE = 7; // 0x7 639 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_LATERAL_RAISE = 8; // 0x8 640 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_ROW = 34; // 0x22 641 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_TRICEPS_EXTENSION_LEFT_ARM = 9; // 0x9 642 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_TRICEPS_EXTENSION_RIGHT_ARM = 10; // 0xa 643 field public static final int EXERCISE_SEGMENT_TYPE_DUMBBELL_TRICEPS_EXTENSION_TWO_ARM = 11; // 0xb 644 field public static final int EXERCISE_SEGMENT_TYPE_ELLIPTICAL = 12; // 0xc 645 field public static final int EXERCISE_SEGMENT_TYPE_FORWARD_TWIST = 13; // 0xd 646 field public static final int EXERCISE_SEGMENT_TYPE_FRONT_RAISE = 35; // 0x23 647 field public static final int EXERCISE_SEGMENT_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING = 62; // 0x3e 648 field public static final int EXERCISE_SEGMENT_TYPE_HIP_THRUST = 36; // 0x24 649 field public static final int EXERCISE_SEGMENT_TYPE_HULA_HOOP = 37; // 0x25 650 field public static final int EXERCISE_SEGMENT_TYPE_JUMPING_JACK = 38; // 0x26 651 field public static final int EXERCISE_SEGMENT_TYPE_JUMP_ROPE = 39; // 0x27 652 field public static final int EXERCISE_SEGMENT_TYPE_KETTLEBELL_SWING = 40; // 0x28 653 field public static final int EXERCISE_SEGMENT_TYPE_LATERAL_RAISE = 41; // 0x29 654 field public static final int EXERCISE_SEGMENT_TYPE_LAT_PULL_DOWN = 42; // 0x2a 655 field public static final int EXERCISE_SEGMENT_TYPE_LEG_CURL = 43; // 0x2b 656 field public static final int EXERCISE_SEGMENT_TYPE_LEG_EXTENSION = 44; // 0x2c 657 field public static final int EXERCISE_SEGMENT_TYPE_LEG_PRESS = 45; // 0x2d 658 field public static final int EXERCISE_SEGMENT_TYPE_LEG_RAISE = 46; // 0x2e 659 field public static final int EXERCISE_SEGMENT_TYPE_LUNGE = 47; // 0x2f 660 field public static final int EXERCISE_SEGMENT_TYPE_MOUNTAIN_CLIMBER = 48; // 0x30 661 field public static final int EXERCISE_SEGMENT_TYPE_OTHER_WORKOUT = 64; // 0x40 662 field public static final int EXERCISE_SEGMENT_TYPE_PAUSE = 67; // 0x43 663 field public static final int EXERCISE_SEGMENT_TYPE_PILATES = 14; // 0xe 664 field public static final int EXERCISE_SEGMENT_TYPE_PLANK = 49; // 0x31 665 field public static final int EXERCISE_SEGMENT_TYPE_PULL_UP = 50; // 0x32 666 field public static final int EXERCISE_SEGMENT_TYPE_PUNCH = 51; // 0x33 667 field public static final int EXERCISE_SEGMENT_TYPE_REST = 66; // 0x42 668 field public static final int EXERCISE_SEGMENT_TYPE_ROWING_MACHINE = 15; // 0xf 669 field public static final int EXERCISE_SEGMENT_TYPE_RUNNING = 16; // 0x10 670 field public static final int EXERCISE_SEGMENT_TYPE_RUNNING_TREADMILL = 17; // 0x11 671 field public static final int EXERCISE_SEGMENT_TYPE_SHOULDER_PRESS = 52; // 0x34 672 field public static final int EXERCISE_SEGMENT_TYPE_SINGLE_ARM_TRICEPS_EXTENSION = 53; // 0x35 673 field public static final int EXERCISE_SEGMENT_TYPE_SIT_UP = 54; // 0x36 674 field public static final int EXERCISE_SEGMENT_TYPE_SQUAT = 55; // 0x37 675 field public static final int EXERCISE_SEGMENT_TYPE_STAIR_CLIMBING = 18; // 0x12 676 field public static final int EXERCISE_SEGMENT_TYPE_STAIR_CLIMBING_MACHINE = 19; // 0x13 677 field public static final int EXERCISE_SEGMENT_TYPE_STRETCHING = 20; // 0x14 678 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_BACKSTROKE = 57; // 0x39 679 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_BREASTSTROKE = 58; // 0x3a 680 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_BUTTERFLY = 59; // 0x3b 681 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_FREESTYLE = 56; // 0x38 682 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_MIXED = 60; // 0x3c 683 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_OPEN_WATER = 21; // 0x15 684 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_OTHER = 61; // 0x3d 685 field public static final int EXERCISE_SEGMENT_TYPE_SWIMMING_POOL = 22; // 0x16 686 field public static final int EXERCISE_SEGMENT_TYPE_UNKNOWN = 0; // 0x0 687 field public static final int EXERCISE_SEGMENT_TYPE_UPPER_TWIST = 23; // 0x17 688 field public static final int EXERCISE_SEGMENT_TYPE_WALKING = 24; // 0x18 689 field public static final int EXERCISE_SEGMENT_TYPE_WEIGHTLIFTING = 63; // 0x3f 690 field public static final int EXERCISE_SEGMENT_TYPE_WHEELCHAIR = 25; // 0x19 691 field public static final int EXERCISE_SEGMENT_TYPE_YOGA = 65; // 0x41 692 } 693 694 public final class ExerciseSessionRecord extends android.health.connect.datatypes.IntervalRecord { 695 method public int getExerciseType(); 696 method @NonNull public java.util.List<android.health.connect.datatypes.ExerciseLap> getLaps(); 697 method @Nullable public CharSequence getNotes(); 698 method @Nullable public android.health.connect.datatypes.ExerciseRoute getRoute(); 699 method @NonNull public java.util.List<android.health.connect.datatypes.ExerciseSegment> getSegments(); 700 method @Nullable public CharSequence getTitle(); 701 method @NonNull public boolean hasRoute(); 702 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> EXERCISE_DURATION_TOTAL; 703 } 704 705 public static final class ExerciseSessionRecord.Builder { 706 ctor public ExerciseSessionRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, int); 707 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord build(); 708 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder clearEndZoneOffset(); 709 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder clearStartZoneOffset(); 710 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 711 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setLaps(@NonNull java.util.List<android.health.connect.datatypes.ExerciseLap>); 712 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setNotes(@Nullable CharSequence); 713 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setRoute(@Nullable android.health.connect.datatypes.ExerciseRoute); 714 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setSegments(@NonNull java.util.List<android.health.connect.datatypes.ExerciseSegment>); 715 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 716 method @NonNull public android.health.connect.datatypes.ExerciseSessionRecord.Builder setTitle(@Nullable CharSequence); 717 } 718 719 public final class ExerciseSessionType { 720 field public static final int EXERCISE_SESSION_TYPE_BADMINTON = 1; // 0x1 721 field public static final int EXERCISE_SESSION_TYPE_BASEBALL = 2; // 0x2 722 field public static final int EXERCISE_SESSION_TYPE_BASKETBALL = 3; // 0x3 723 field public static final int EXERCISE_SESSION_TYPE_BIKING = 4; // 0x4 724 field public static final int EXERCISE_SESSION_TYPE_BIKING_STATIONARY = 5; // 0x5 725 field public static final int EXERCISE_SESSION_TYPE_BOOT_CAMP = 6; // 0x6 726 field public static final int EXERCISE_SESSION_TYPE_BOXING = 7; // 0x7 727 field public static final int EXERCISE_SESSION_TYPE_CALISTHENICS = 8; // 0x8 728 field public static final int EXERCISE_SESSION_TYPE_CRICKET = 9; // 0x9 729 field public static final int EXERCISE_SESSION_TYPE_DANCING = 10; // 0xa 730 field public static final int EXERCISE_SESSION_TYPE_ELLIPTICAL = 60; // 0x3c 731 field public static final int EXERCISE_SESSION_TYPE_EXERCISE_CLASS = 11; // 0xb 732 field public static final int EXERCISE_SESSION_TYPE_FENCING = 12; // 0xc 733 field public static final int EXERCISE_SESSION_TYPE_FOOTBALL_AMERICAN = 13; // 0xd 734 field public static final int EXERCISE_SESSION_TYPE_FOOTBALL_AUSTRALIAN = 14; // 0xe 735 field public static final int EXERCISE_SESSION_TYPE_FRISBEE_DISC = 15; // 0xf 736 field public static final int EXERCISE_SESSION_TYPE_GOLF = 16; // 0x10 737 field public static final int EXERCISE_SESSION_TYPE_GUIDED_BREATHING = 17; // 0x11 738 field public static final int EXERCISE_SESSION_TYPE_GYMNASTICS = 18; // 0x12 739 field public static final int EXERCISE_SESSION_TYPE_HANDBALL = 19; // 0x13 740 field public static final int EXERCISE_SESSION_TYPE_HIGH_INTENSITY_INTERVAL_TRAINING = 20; // 0x14 741 field public static final int EXERCISE_SESSION_TYPE_HIKING = 21; // 0x15 742 field public static final int EXERCISE_SESSION_TYPE_ICE_HOCKEY = 22; // 0x16 743 field public static final int EXERCISE_SESSION_TYPE_ICE_SKATING = 23; // 0x17 744 field public static final int EXERCISE_SESSION_TYPE_MARTIAL_ARTS = 24; // 0x18 745 field public static final int EXERCISE_SESSION_TYPE_OTHER_WORKOUT = 58; // 0x3a 746 field public static final int EXERCISE_SESSION_TYPE_PADDLING = 25; // 0x19 747 field public static final int EXERCISE_SESSION_TYPE_PARAGLIDING = 26; // 0x1a 748 field public static final int EXERCISE_SESSION_TYPE_PILATES = 27; // 0x1b 749 field public static final int EXERCISE_SESSION_TYPE_RACQUETBALL = 28; // 0x1c 750 field public static final int EXERCISE_SESSION_TYPE_ROCK_CLIMBING = 29; // 0x1d 751 field public static final int EXERCISE_SESSION_TYPE_ROLLER_HOCKEY = 30; // 0x1e 752 field public static final int EXERCISE_SESSION_TYPE_ROWING = 31; // 0x1f 753 field public static final int EXERCISE_SESSION_TYPE_ROWING_MACHINE = 61; // 0x3d 754 field public static final int EXERCISE_SESSION_TYPE_RUGBY = 32; // 0x20 755 field public static final int EXERCISE_SESSION_TYPE_RUNNING = 33; // 0x21 756 field public static final int EXERCISE_SESSION_TYPE_RUNNING_TREADMILL = 34; // 0x22 757 field public static final int EXERCISE_SESSION_TYPE_SAILING = 35; // 0x23 758 field public static final int EXERCISE_SESSION_TYPE_SCUBA_DIVING = 36; // 0x24 759 field public static final int EXERCISE_SESSION_TYPE_SKATING = 37; // 0x25 760 field public static final int EXERCISE_SESSION_TYPE_SKIING = 38; // 0x26 761 field public static final int EXERCISE_SESSION_TYPE_SNOWBOARDING = 39; // 0x27 762 field public static final int EXERCISE_SESSION_TYPE_SNOWSHOEING = 40; // 0x28 763 field public static final int EXERCISE_SESSION_TYPE_SOCCER = 41; // 0x29 764 field public static final int EXERCISE_SESSION_TYPE_SOFTBALL = 42; // 0x2a 765 field public static final int EXERCISE_SESSION_TYPE_SQUASH = 43; // 0x2b 766 field public static final int EXERCISE_SESSION_TYPE_STAIR_CLIMBING = 44; // 0x2c 767 field public static final int EXERCISE_SESSION_TYPE_STAIR_CLIMBING_MACHINE = 59; // 0x3b 768 field public static final int EXERCISE_SESSION_TYPE_STRENGTH_TRAINING = 45; // 0x2d 769 field public static final int EXERCISE_SESSION_TYPE_STRETCHING = 46; // 0x2e 770 field public static final int EXERCISE_SESSION_TYPE_SURFING = 47; // 0x2f 771 field public static final int EXERCISE_SESSION_TYPE_SWIMMING_OPEN_WATER = 48; // 0x30 772 field public static final int EXERCISE_SESSION_TYPE_SWIMMING_POOL = 49; // 0x31 773 field public static final int EXERCISE_SESSION_TYPE_TABLE_TENNIS = 50; // 0x32 774 field public static final int EXERCISE_SESSION_TYPE_TENNIS = 51; // 0x33 775 field public static final int EXERCISE_SESSION_TYPE_UNKNOWN = 0; // 0x0 776 field public static final int EXERCISE_SESSION_TYPE_VOLLEYBALL = 52; // 0x34 777 field public static final int EXERCISE_SESSION_TYPE_WALKING = 53; // 0x35 778 field public static final int EXERCISE_SESSION_TYPE_WATER_POLO = 54; // 0x36 779 field public static final int EXERCISE_SESSION_TYPE_WEIGHTLIFTING = 55; // 0x37 780 field public static final int EXERCISE_SESSION_TYPE_WHEELCHAIR = 56; // 0x38 781 field public static final int EXERCISE_SESSION_TYPE_YOGA = 57; // 0x39 782 } 783 784 public final class FloorsClimbedRecord extends android.health.connect.datatypes.IntervalRecord { 785 method @FloatRange(from=0.0f, to=1000000.0f) public double getFloors(); 786 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> FLOORS_CLIMBED_TOTAL; 787 } 788 789 public static final class FloorsClimbedRecord.Builder { 790 ctor public FloorsClimbedRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, double); 791 method @NonNull public android.health.connect.datatypes.FloorsClimbedRecord build(); 792 method @NonNull public android.health.connect.datatypes.FloorsClimbedRecord.Builder clearEndZoneOffset(); 793 method @NonNull public android.health.connect.datatypes.FloorsClimbedRecord.Builder clearStartZoneOffset(); 794 method @NonNull public android.health.connect.datatypes.FloorsClimbedRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 795 method @NonNull public android.health.connect.datatypes.FloorsClimbedRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 796 } 797 798 public final class HeartRateRecord extends android.health.connect.datatypes.IntervalRecord { 799 method @NonNull public java.util.List<android.health.connect.datatypes.HeartRateRecord.HeartRateSample> getSamples(); 800 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> BPM_AVG; 801 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> BPM_MAX; 802 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> BPM_MIN; 803 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> HEART_MEASUREMENTS_COUNT; 804 } 805 806 public static final class HeartRateRecord.Builder { 807 ctor public HeartRateRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull java.util.List<android.health.connect.datatypes.HeartRateRecord.HeartRateSample>); 808 method @NonNull public android.health.connect.datatypes.HeartRateRecord build(); 809 method @NonNull public android.health.connect.datatypes.HeartRateRecord.Builder clearEndZoneOffset(); 810 method @NonNull public android.health.connect.datatypes.HeartRateRecord.Builder clearStartZoneOffset(); 811 method @NonNull public android.health.connect.datatypes.HeartRateRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 812 method @NonNull public android.health.connect.datatypes.HeartRateRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 813 } 814 815 public static final class HeartRateRecord.HeartRateSample { 816 ctor public HeartRateRecord.HeartRateSample(long, @NonNull java.time.Instant); 817 method public long getBeatsPerMinute(); 818 method @NonNull public java.time.Instant getTime(); 819 } 820 821 public final class HeartRateVariabilityRmssdRecord extends android.health.connect.datatypes.InstantRecord { 822 method public double getHeartRateVariabilityMillis(); 823 } 824 825 public static final class HeartRateVariabilityRmssdRecord.Builder { 826 ctor public HeartRateVariabilityRmssdRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, double); 827 method @NonNull public android.health.connect.datatypes.HeartRateVariabilityRmssdRecord build(); 828 method @NonNull public android.health.connect.datatypes.HeartRateVariabilityRmssdRecord.Builder clearZoneOffset(); 829 method @NonNull public android.health.connect.datatypes.HeartRateVariabilityRmssdRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 830 } 831 832 public final class HeightRecord extends android.health.connect.datatypes.InstantRecord { 833 method @NonNull public android.health.connect.datatypes.units.Length getHeight(); 834 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Length> HEIGHT_AVG; 835 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Length> HEIGHT_MAX; 836 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Length> HEIGHT_MIN; 837 } 838 839 public static final class HeightRecord.Builder { 840 ctor public HeightRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Length); 841 method @NonNull public android.health.connect.datatypes.HeightRecord build(); 842 method @NonNull public android.health.connect.datatypes.HeightRecord.Builder clearZoneOffset(); 843 method @NonNull public android.health.connect.datatypes.HeightRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 844 } 845 846 public final class HydrationRecord extends android.health.connect.datatypes.IntervalRecord { 847 method @NonNull public android.health.connect.datatypes.units.Volume getVolume(); 848 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Volume> VOLUME_TOTAL; 849 } 850 851 public static final class HydrationRecord.Builder { 852 ctor public HydrationRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Volume); 853 method @NonNull public android.health.connect.datatypes.HydrationRecord build(); 854 method @NonNull public android.health.connect.datatypes.HydrationRecord.Builder clearEndZoneOffset(); 855 method @NonNull public android.health.connect.datatypes.HydrationRecord.Builder clearStartZoneOffset(); 856 method @NonNull public android.health.connect.datatypes.HydrationRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 857 method @NonNull public android.health.connect.datatypes.HydrationRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 858 } 859 860 public abstract class InstantRecord extends android.health.connect.datatypes.Record { 861 method @NonNull public java.time.Instant getTime(); 862 method @NonNull public java.time.ZoneOffset getZoneOffset(); 863 } 864 865 public final class IntermenstrualBleedingRecord extends android.health.connect.datatypes.InstantRecord { 866 } 867 868 public static final class IntermenstrualBleedingRecord.Builder { 869 ctor public IntermenstrualBleedingRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant); 870 method @NonNull public android.health.connect.datatypes.IntermenstrualBleedingRecord build(); 871 method @NonNull public android.health.connect.datatypes.IntermenstrualBleedingRecord.Builder clearZoneOffset(); 872 method @NonNull public android.health.connect.datatypes.IntermenstrualBleedingRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 873 } 874 875 public abstract class IntervalRecord extends android.health.connect.datatypes.Record { 876 method @NonNull public java.time.Instant getEndTime(); 877 method @NonNull public java.time.ZoneOffset getEndZoneOffset(); 878 method @NonNull public java.time.Instant getStartTime(); 879 method @NonNull public java.time.ZoneOffset getStartZoneOffset(); 880 } 881 882 public final class LeanBodyMassRecord extends android.health.connect.datatypes.InstantRecord { 883 method @NonNull public android.health.connect.datatypes.units.Mass getMass(); 884 } 885 886 public static final class LeanBodyMassRecord.Builder { 887 ctor public LeanBodyMassRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Mass); 888 method @NonNull public android.health.connect.datatypes.LeanBodyMassRecord build(); 889 method @NonNull public android.health.connect.datatypes.LeanBodyMassRecord.Builder clearZoneOffset(); 890 method @NonNull public android.health.connect.datatypes.LeanBodyMassRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 891 } 892 893 public final class MealType { 894 field public static final int MEAL_TYPE_BREAKFAST = 1; // 0x1 895 field public static final int MEAL_TYPE_DINNER = 3; // 0x3 896 field public static final int MEAL_TYPE_LUNCH = 2; // 0x2 897 field public static final int MEAL_TYPE_SNACK = 4; // 0x4 898 field public static final int MEAL_TYPE_UNKNOWN = 0; // 0x0 899 } 900 901 public final class MenstruationFlowRecord extends android.health.connect.datatypes.InstantRecord { 902 method public int getFlow(); 903 } 904 905 public static final class MenstruationFlowRecord.Builder { 906 ctor public MenstruationFlowRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int); 907 method @NonNull public android.health.connect.datatypes.MenstruationFlowRecord build(); 908 method @NonNull public android.health.connect.datatypes.MenstruationFlowRecord.Builder clearZoneOffset(); 909 method @NonNull public android.health.connect.datatypes.MenstruationFlowRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 910 } 911 912 public static final class MenstruationFlowRecord.MenstruationFlowType { 913 field public static final int FLOW_HEAVY = 3; // 0x3 914 field public static final int FLOW_LIGHT = 1; // 0x1 915 field public static final int FLOW_MEDIUM = 2; // 0x2 916 field public static final int FLOW_UNKNOWN = 0; // 0x0 917 } 918 919 public final class MenstruationPeriodRecord extends android.health.connect.datatypes.IntervalRecord { 920 } 921 922 public static final class MenstruationPeriodRecord.Builder { 923 ctor public MenstruationPeriodRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant); 924 method @NonNull public android.health.connect.datatypes.MenstruationPeriodRecord build(); 925 method @NonNull public android.health.connect.datatypes.MenstruationPeriodRecord.Builder clearEndZoneOffset(); 926 method @NonNull public android.health.connect.datatypes.MenstruationPeriodRecord.Builder clearStartZoneOffset(); 927 method @NonNull public android.health.connect.datatypes.MenstruationPeriodRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 928 method @NonNull public android.health.connect.datatypes.MenstruationPeriodRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 929 } 930 931 public final class Metadata { 932 method @Nullable public String getClientRecordId(); 933 method public long getClientRecordVersion(); 934 method @NonNull public android.health.connect.datatypes.DataOrigin getDataOrigin(); 935 method @NonNull public android.health.connect.datatypes.Device getDevice(); 936 method @NonNull public String getId(); 937 method @NonNull public java.time.Instant getLastModifiedTime(); 938 method public int getRecordingMethod(); 939 field public static final int RECORDING_METHOD_ACTIVELY_RECORDED = 1; // 0x1 940 field public static final int RECORDING_METHOD_AUTOMATICALLY_RECORDED = 2; // 0x2 941 field public static final int RECORDING_METHOD_MANUAL_ENTRY = 3; // 0x3 942 field public static final int RECORDING_METHOD_UNKNOWN = 0; // 0x0 943 } 944 945 public static final class Metadata.Builder { 946 ctor public Metadata.Builder(); 947 method @NonNull public android.health.connect.datatypes.Metadata build(); 948 method @NonNull public android.health.connect.datatypes.Metadata.Builder setClientRecordId(@Nullable String); 949 method @NonNull public android.health.connect.datatypes.Metadata.Builder setClientRecordVersion(long); 950 method @NonNull public android.health.connect.datatypes.Metadata.Builder setDataOrigin(@NonNull android.health.connect.datatypes.DataOrigin); 951 method @NonNull public android.health.connect.datatypes.Metadata.Builder setDevice(@NonNull android.health.connect.datatypes.Device); 952 method @NonNull public android.health.connect.datatypes.Metadata.Builder setId(@NonNull String); 953 method @NonNull public android.health.connect.datatypes.Metadata.Builder setLastModifiedTime(@NonNull java.time.Instant); 954 method @NonNull public android.health.connect.datatypes.Metadata.Builder setRecordingMethod(int); 955 } 956 957 public final class NutritionRecord extends android.health.connect.datatypes.IntervalRecord { 958 method @Nullable public android.health.connect.datatypes.units.Mass getBiotin(); 959 method @Nullable public android.health.connect.datatypes.units.Mass getCaffeine(); 960 method @Nullable public android.health.connect.datatypes.units.Mass getCalcium(); 961 method @Nullable public android.health.connect.datatypes.units.Mass getChloride(); 962 method @Nullable public android.health.connect.datatypes.units.Mass getCholesterol(); 963 method @Nullable public android.health.connect.datatypes.units.Mass getChromium(); 964 method @Nullable public android.health.connect.datatypes.units.Mass getCopper(); 965 method @Nullable public android.health.connect.datatypes.units.Mass getDietaryFiber(); 966 method @Nullable public android.health.connect.datatypes.units.Energy getEnergy(); 967 method @Nullable public android.health.connect.datatypes.units.Energy getEnergyFromFat(); 968 method @Nullable public android.health.connect.datatypes.units.Mass getFolate(); 969 method @Nullable public android.health.connect.datatypes.units.Mass getFolicAcid(); 970 method @Nullable public android.health.connect.datatypes.units.Mass getIodine(); 971 method @Nullable public android.health.connect.datatypes.units.Mass getIron(); 972 method @Nullable public android.health.connect.datatypes.units.Mass getMagnesium(); 973 method @Nullable public android.health.connect.datatypes.units.Mass getManganese(); 974 method @Nullable public String getMealName(); 975 method public int getMealType(); 976 method @Nullable public android.health.connect.datatypes.units.Mass getMolybdenum(); 977 method @Nullable public android.health.connect.datatypes.units.Mass getMonounsaturatedFat(); 978 method @Nullable public android.health.connect.datatypes.units.Mass getNiacin(); 979 method @Nullable public android.health.connect.datatypes.units.Mass getPantothenicAcid(); 980 method @Nullable public android.health.connect.datatypes.units.Mass getPhosphorus(); 981 method @Nullable public android.health.connect.datatypes.units.Mass getPolyunsaturatedFat(); 982 method @Nullable public android.health.connect.datatypes.units.Mass getPotassium(); 983 method @Nullable public android.health.connect.datatypes.units.Mass getProtein(); 984 method @Nullable public android.health.connect.datatypes.units.Mass getRiboflavin(); 985 method @Nullable public android.health.connect.datatypes.units.Mass getSaturatedFat(); 986 method @Nullable public android.health.connect.datatypes.units.Mass getSelenium(); 987 method @Nullable public android.health.connect.datatypes.units.Mass getSodium(); 988 method @Nullable public android.health.connect.datatypes.units.Mass getSugar(); 989 method @Nullable public android.health.connect.datatypes.units.Mass getThiamin(); 990 method @Nullable public android.health.connect.datatypes.units.Mass getTotalCarbohydrate(); 991 method @Nullable public android.health.connect.datatypes.units.Mass getTotalFat(); 992 method @Nullable public android.health.connect.datatypes.units.Mass getTransFat(); 993 method @Nullable public android.health.connect.datatypes.units.Mass getUnsaturatedFat(); 994 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminA(); 995 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminB12(); 996 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminB6(); 997 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminC(); 998 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminD(); 999 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminE(); 1000 method @Nullable public android.health.connect.datatypes.units.Mass getVitaminK(); 1001 method @Nullable public android.health.connect.datatypes.units.Mass getZinc(); 1002 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> BIOTIN_TOTAL; 1003 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> CAFFEINE_TOTAL; 1004 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> CALCIUM_TOTAL; 1005 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> CHLORIDE_TOTAL; 1006 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> CHOLESTEROL_TOTAL; 1007 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> CHROMIUM_TOTAL; 1008 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> COPPER_TOTAL; 1009 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> DIETARY_FIBER_TOTAL; 1010 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Energy> ENERGY_FROM_FAT_TOTAL; 1011 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Energy> ENERGY_TOTAL; 1012 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> FOLATE_TOTAL; 1013 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> FOLIC_ACID_TOTAL; 1014 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> IODINE_TOTAL; 1015 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> IRON_TOTAL; 1016 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> MAGNESIUM_TOTAL; 1017 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> MANGANESE_TOTAL; 1018 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> MOLYBDENUM_TOTAL; 1019 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> MONOUNSATURATED_FAT_TOTAL; 1020 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> NIACIN_TOTAL; 1021 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> PANTOTHENIC_ACID_TOTAL; 1022 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> PHOSPHORUS_TOTAL; 1023 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> POLYUNSATURATED_FAT_TOTAL; 1024 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> POTASSIUM_TOTAL; 1025 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> PROTEIN_TOTAL; 1026 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> RIBOFLAVIN_TOTAL; 1027 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> SATURATED_FAT_TOTAL; 1028 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> SELENIUM_TOTAL; 1029 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> SODIUM_TOTAL; 1030 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> SUGAR_TOTAL; 1031 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> THIAMIN_TOTAL; 1032 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> TOTAL_CARBOHYDRATE_TOTAL; 1033 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> TOTAL_FAT_TOTAL; 1034 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> TRANS_FAT_TOTAL; 1035 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> UNSATURATED_FAT_TOTAL; 1036 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_A_TOTAL; 1037 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_B12_TOTAL; 1038 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_B6_TOTAL; 1039 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_C_TOTAL; 1040 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_D_TOTAL; 1041 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_E_TOTAL; 1042 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> VITAMIN_K_TOTAL; 1043 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> ZINC_TOTAL; 1044 } 1045 1046 public static final class NutritionRecord.Builder { 1047 ctor public NutritionRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant); 1048 method @NonNull public android.health.connect.datatypes.NutritionRecord build(); 1049 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder clearEndZoneOffset(); 1050 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder clearStartZoneOffset(); 1051 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setBiotin(@Nullable android.health.connect.datatypes.units.Mass); 1052 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setCaffeine(@Nullable android.health.connect.datatypes.units.Mass); 1053 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setCalcium(@Nullable android.health.connect.datatypes.units.Mass); 1054 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setChloride(@Nullable android.health.connect.datatypes.units.Mass); 1055 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setCholesterol(@Nullable android.health.connect.datatypes.units.Mass); 1056 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setChromium(@Nullable android.health.connect.datatypes.units.Mass); 1057 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setCopper(@Nullable android.health.connect.datatypes.units.Mass); 1058 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setDietaryFiber(@Nullable android.health.connect.datatypes.units.Mass); 1059 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1060 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setEnergy(@Nullable android.health.connect.datatypes.units.Energy); 1061 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setEnergyFromFat(@Nullable android.health.connect.datatypes.units.Energy); 1062 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setFolate(@Nullable android.health.connect.datatypes.units.Mass); 1063 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setFolicAcid(@Nullable android.health.connect.datatypes.units.Mass); 1064 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setIodine(@Nullable android.health.connect.datatypes.units.Mass); 1065 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setIron(@Nullable android.health.connect.datatypes.units.Mass); 1066 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setMagnesium(@Nullable android.health.connect.datatypes.units.Mass); 1067 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setManganese(@Nullable android.health.connect.datatypes.units.Mass); 1068 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setMealName(@NonNull String); 1069 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setMealType(int); 1070 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setMolybdenum(@Nullable android.health.connect.datatypes.units.Mass); 1071 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setMonounsaturatedFat(@Nullable android.health.connect.datatypes.units.Mass); 1072 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setNiacin(@Nullable android.health.connect.datatypes.units.Mass); 1073 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setPantothenicAcid(@Nullable android.health.connect.datatypes.units.Mass); 1074 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setPhosphorus(@Nullable android.health.connect.datatypes.units.Mass); 1075 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setPolyunsaturatedFat(@Nullable android.health.connect.datatypes.units.Mass); 1076 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setPotassium(@Nullable android.health.connect.datatypes.units.Mass); 1077 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setProtein(@Nullable android.health.connect.datatypes.units.Mass); 1078 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setRiboflavin(@Nullable android.health.connect.datatypes.units.Mass); 1079 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setSaturatedFat(@Nullable android.health.connect.datatypes.units.Mass); 1080 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setSelenium(@Nullable android.health.connect.datatypes.units.Mass); 1081 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setSodium(@Nullable android.health.connect.datatypes.units.Mass); 1082 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1083 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setSugar(@Nullable android.health.connect.datatypes.units.Mass); 1084 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setThiamin(@Nullable android.health.connect.datatypes.units.Mass); 1085 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setTotalCarbohydrate(@Nullable android.health.connect.datatypes.units.Mass); 1086 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setTotalFat(@Nullable android.health.connect.datatypes.units.Mass); 1087 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setTransFat(@Nullable android.health.connect.datatypes.units.Mass); 1088 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setUnsaturatedFat(@Nullable android.health.connect.datatypes.units.Mass); 1089 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminA(@Nullable android.health.connect.datatypes.units.Mass); 1090 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminB12(@Nullable android.health.connect.datatypes.units.Mass); 1091 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminB6(@Nullable android.health.connect.datatypes.units.Mass); 1092 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminC(@Nullable android.health.connect.datatypes.units.Mass); 1093 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminD(@Nullable android.health.connect.datatypes.units.Mass); 1094 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminE(@Nullable android.health.connect.datatypes.units.Mass); 1095 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setVitaminK(@Nullable android.health.connect.datatypes.units.Mass); 1096 method @NonNull public android.health.connect.datatypes.NutritionRecord.Builder setZinc(@Nullable android.health.connect.datatypes.units.Mass); 1097 } 1098 1099 public final class OvulationTestRecord extends android.health.connect.datatypes.InstantRecord { 1100 method public int getResult(); 1101 } 1102 1103 public static final class OvulationTestRecord.Builder { 1104 ctor public OvulationTestRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int); 1105 method @NonNull public android.health.connect.datatypes.OvulationTestRecord build(); 1106 method @NonNull public android.health.connect.datatypes.OvulationTestRecord.Builder clearZoneOffset(); 1107 method @NonNull public android.health.connect.datatypes.OvulationTestRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1108 } 1109 1110 public static final class OvulationTestRecord.OvulationTestResult { 1111 field public static final int RESULT_HIGH = 2; // 0x2 1112 field public static final int RESULT_INCONCLUSIVE = 0; // 0x0 1113 field public static final int RESULT_NEGATIVE = 3; // 0x3 1114 field public static final int RESULT_POSITIVE = 1; // 0x1 1115 } 1116 1117 public final class OxygenSaturationRecord extends android.health.connect.datatypes.InstantRecord { 1118 method @NonNull public android.health.connect.datatypes.units.Percentage getPercentage(); 1119 } 1120 1121 public static final class OxygenSaturationRecord.Builder { 1122 ctor public OxygenSaturationRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Percentage); 1123 method @NonNull public android.health.connect.datatypes.OxygenSaturationRecord build(); 1124 method @NonNull public android.health.connect.datatypes.OxygenSaturationRecord.Builder clearZoneOffset(); 1125 method @NonNull public android.health.connect.datatypes.OxygenSaturationRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1126 } 1127 1128 public final class PowerRecord extends android.health.connect.datatypes.IntervalRecord { 1129 method @NonNull public java.util.List<android.health.connect.datatypes.PowerRecord.PowerRecordSample> getSamples(); 1130 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Power> POWER_AVG; 1131 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Power> POWER_MAX; 1132 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Power> POWER_MIN; 1133 } 1134 1135 public static final class PowerRecord.Builder { 1136 ctor public PowerRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull java.util.List<android.health.connect.datatypes.PowerRecord.PowerRecordSample>); 1137 method @NonNull public android.health.connect.datatypes.PowerRecord build(); 1138 method @NonNull public android.health.connect.datatypes.PowerRecord.Builder clearEndZoneOffset(); 1139 method @NonNull public android.health.connect.datatypes.PowerRecord.Builder clearStartZoneOffset(); 1140 method @NonNull public android.health.connect.datatypes.PowerRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1141 method @NonNull public android.health.connect.datatypes.PowerRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1142 } 1143 1144 public static final class PowerRecord.PowerRecordSample { 1145 ctor public PowerRecord.PowerRecordSample(@NonNull android.health.connect.datatypes.units.Power, @NonNull java.time.Instant); 1146 method @NonNull public android.health.connect.datatypes.units.Power getPower(); 1147 method @NonNull public java.time.Instant getTime(); 1148 } 1149 1150 public abstract class Record { 1151 method @NonNull public android.health.connect.datatypes.Metadata getMetadata(); 1152 } 1153 1154 public final class RespiratoryRateRecord extends android.health.connect.datatypes.InstantRecord { 1155 method public double getRate(); 1156 } 1157 1158 public static final class RespiratoryRateRecord.Builder { 1159 ctor public RespiratoryRateRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @FloatRange(from=0, to=1000) double); 1160 method @NonNull public android.health.connect.datatypes.RespiratoryRateRecord build(); 1161 method @NonNull public android.health.connect.datatypes.RespiratoryRateRecord.Builder clearZoneOffset(); 1162 method @NonNull public android.health.connect.datatypes.RespiratoryRateRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1163 } 1164 1165 public final class RestingHeartRateRecord extends android.health.connect.datatypes.InstantRecord { 1166 method public long getBeatsPerMinute(); 1167 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> BPM_AVG; 1168 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> BPM_MAX; 1169 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> BPM_MIN; 1170 } 1171 1172 public static final class RestingHeartRateRecord.Builder { 1173 ctor public RestingHeartRateRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @IntRange(from=1, to=300) long); 1174 method @NonNull public android.health.connect.datatypes.RestingHeartRateRecord build(); 1175 method @NonNull public android.health.connect.datatypes.RestingHeartRateRecord.Builder clearZoneOffset(); 1176 method @NonNull public android.health.connect.datatypes.RestingHeartRateRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1177 } 1178 1179 public final class SexualActivityRecord extends android.health.connect.datatypes.InstantRecord { 1180 method public int getProtectionUsed(); 1181 } 1182 1183 public static final class SexualActivityRecord.Builder { 1184 ctor public SexualActivityRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int); 1185 method @NonNull public android.health.connect.datatypes.SexualActivityRecord build(); 1186 method @NonNull public android.health.connect.datatypes.SexualActivityRecord.Builder clearZoneOffset(); 1187 method @NonNull public android.health.connect.datatypes.SexualActivityRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1188 } 1189 1190 public static final class SexualActivityRecord.SexualActivityProtectionUsed { 1191 field public static final int PROTECTION_USED_PROTECTED = 1; // 0x1 1192 field public static final int PROTECTION_USED_UNKNOWN = 0; // 0x0 1193 field public static final int PROTECTION_USED_UNPROTECTED = 2; // 0x2 1194 } 1195 1196 public final class SleepSessionRecord extends android.health.connect.datatypes.IntervalRecord { 1197 method @Nullable public CharSequence getNotes(); 1198 method @NonNull public java.util.List<android.health.connect.datatypes.SleepSessionRecord.Stage> getStages(); 1199 method @Nullable public CharSequence getTitle(); 1200 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> SLEEP_DURATION_TOTAL; 1201 } 1202 1203 public static final class SleepSessionRecord.Builder { 1204 ctor public SleepSessionRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant); 1205 method @NonNull public android.health.connect.datatypes.SleepSessionRecord build(); 1206 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder clearEndZoneOffset(); 1207 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder clearStartZoneOffset(); 1208 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1209 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder setNotes(@Nullable CharSequence); 1210 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder setStages(@NonNull java.util.List<android.health.connect.datatypes.SleepSessionRecord.Stage>); 1211 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1212 method @NonNull public android.health.connect.datatypes.SleepSessionRecord.Builder setTitle(@Nullable CharSequence); 1213 } 1214 1215 public static class SleepSessionRecord.Stage { 1216 ctor public SleepSessionRecord.Stage(@NonNull java.time.Instant, @NonNull java.time.Instant, int); 1217 method @NonNull public java.time.Instant getEndTime(); 1218 method @NonNull public java.time.Instant getStartTime(); 1219 method public int getType(); 1220 } 1221 1222 public static final class SleepSessionRecord.StageType { 1223 field public static final int STAGE_TYPE_AWAKE = 1; // 0x1 1224 field public static final int STAGE_TYPE_AWAKE_IN_BED = 7; // 0x7 1225 field public static final int STAGE_TYPE_AWAKE_OUT_OF_BED = 3; // 0x3 1226 field public static final int STAGE_TYPE_SLEEPING = 2; // 0x2 1227 field public static final int STAGE_TYPE_SLEEPING_DEEP = 5; // 0x5 1228 field public static final int STAGE_TYPE_SLEEPING_LIGHT = 4; // 0x4 1229 field public static final int STAGE_TYPE_SLEEPING_REM = 6; // 0x6 1230 field public static final int STAGE_TYPE_UNKNOWN = 0; // 0x0 1231 } 1232 1233 public final class SpeedRecord extends android.health.connect.datatypes.IntervalRecord { 1234 method @NonNull public java.util.List<android.health.connect.datatypes.SpeedRecord.SpeedRecordSample> getSamples(); 1235 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Velocity> SPEED_AVG; 1236 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Velocity> SPEED_MAX; 1237 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Velocity> SPEED_MIN; 1238 } 1239 1240 public static final class SpeedRecord.Builder { 1241 ctor public SpeedRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull java.util.List<android.health.connect.datatypes.SpeedRecord.SpeedRecordSample>); 1242 method @NonNull public android.health.connect.datatypes.SpeedRecord build(); 1243 method @NonNull public android.health.connect.datatypes.SpeedRecord.Builder clearEndZoneOffset(); 1244 method @NonNull public android.health.connect.datatypes.SpeedRecord.Builder clearStartZoneOffset(); 1245 method @NonNull public android.health.connect.datatypes.SpeedRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1246 method @NonNull public android.health.connect.datatypes.SpeedRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1247 } 1248 1249 public static final class SpeedRecord.SpeedRecordSample { 1250 ctor public SpeedRecord.SpeedRecordSample(@NonNull android.health.connect.datatypes.units.Velocity, @NonNull java.time.Instant); 1251 method @NonNull public android.health.connect.datatypes.units.Velocity getSpeed(); 1252 method @NonNull public java.time.Instant getTime(); 1253 } 1254 1255 public final class StepsCadenceRecord extends android.health.connect.datatypes.IntervalRecord { 1256 method @NonNull public java.util.List<android.health.connect.datatypes.StepsCadenceRecord.StepsCadenceRecordSample> getSamples(); 1257 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> STEPS_CADENCE_RATE_AVG; 1258 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> STEPS_CADENCE_RATE_MAX; 1259 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Double> STEPS_CADENCE_RATE_MIN; 1260 } 1261 1262 public static final class StepsCadenceRecord.Builder { 1263 ctor public StepsCadenceRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull java.util.List<android.health.connect.datatypes.StepsCadenceRecord.StepsCadenceRecordSample>); 1264 method @NonNull public android.health.connect.datatypes.StepsCadenceRecord build(); 1265 method @NonNull public android.health.connect.datatypes.StepsCadenceRecord.Builder clearEndZoneOffset(); 1266 method @NonNull public android.health.connect.datatypes.StepsCadenceRecord.Builder clearStartZoneOffset(); 1267 method @NonNull public android.health.connect.datatypes.StepsCadenceRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1268 method @NonNull public android.health.connect.datatypes.StepsCadenceRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1269 } 1270 1271 public static final class StepsCadenceRecord.StepsCadenceRecordSample { 1272 ctor public StepsCadenceRecord.StepsCadenceRecordSample(double, @NonNull java.time.Instant); 1273 method public double getRate(); 1274 method @NonNull public java.time.Instant getTime(); 1275 } 1276 1277 public final class StepsRecord extends android.health.connect.datatypes.IntervalRecord { 1278 method public long getCount(); 1279 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> STEPS_COUNT_TOTAL; 1280 } 1281 1282 public static final class StepsRecord.Builder { 1283 ctor public StepsRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, long); 1284 method @NonNull public android.health.connect.datatypes.StepsRecord build(); 1285 method @NonNull public android.health.connect.datatypes.StepsRecord.Builder clearEndZoneOffset(); 1286 method @NonNull public android.health.connect.datatypes.StepsRecord.Builder clearStartZoneOffset(); 1287 method @NonNull public android.health.connect.datatypes.StepsRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1288 method @NonNull public android.health.connect.datatypes.StepsRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1289 } 1290 1291 public final class TotalCaloriesBurnedRecord extends android.health.connect.datatypes.IntervalRecord { 1292 method @NonNull public android.health.connect.datatypes.units.Energy getEnergy(); 1293 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Energy> ENERGY_TOTAL; 1294 } 1295 1296 public static final class TotalCaloriesBurnedRecord.Builder { 1297 ctor public TotalCaloriesBurnedRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Energy); 1298 method @NonNull public android.health.connect.datatypes.TotalCaloriesBurnedRecord build(); 1299 method @NonNull public android.health.connect.datatypes.TotalCaloriesBurnedRecord.Builder clearEndZoneOffset(); 1300 method @NonNull public android.health.connect.datatypes.TotalCaloriesBurnedRecord.Builder clearStartZoneOffset(); 1301 method @NonNull public android.health.connect.datatypes.TotalCaloriesBurnedRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1302 method @NonNull public android.health.connect.datatypes.TotalCaloriesBurnedRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1303 } 1304 1305 public final class Vo2MaxRecord extends android.health.connect.datatypes.InstantRecord { 1306 method public int getMeasurementMethod(); 1307 method public double getVo2MillilitersPerMinuteKilogram(); 1308 } 1309 1310 public static final class Vo2MaxRecord.Builder { 1311 ctor public Vo2MaxRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, int, @FloatRange(from=0, to=100) double); 1312 method @NonNull public android.health.connect.datatypes.Vo2MaxRecord build(); 1313 method @NonNull public android.health.connect.datatypes.Vo2MaxRecord.Builder clearZoneOffset(); 1314 method @NonNull public android.health.connect.datatypes.Vo2MaxRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1315 } 1316 1317 public static final class Vo2MaxRecord.Vo2MaxMeasurementMethod { 1318 field public static final int MEASUREMENT_METHOD_COOPER_TEST = 3; // 0x3 1319 field public static final int MEASUREMENT_METHOD_HEART_RATE_RATIO = 2; // 0x2 1320 field public static final int MEASUREMENT_METHOD_METABOLIC_CART = 1; // 0x1 1321 field public static final int MEASUREMENT_METHOD_MULTISTAGE_FITNESS_TEST = 4; // 0x4 1322 field public static final int MEASUREMENT_METHOD_OTHER = 0; // 0x0 1323 field public static final int MEASUREMENT_METHOD_ROCKPORT_FITNESS_TEST = 5; // 0x5 1324 } 1325 1326 public final class WeightRecord extends android.health.connect.datatypes.InstantRecord { 1327 method @NonNull public android.health.connect.datatypes.units.Mass getWeight(); 1328 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> WEIGHT_AVG; 1329 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> WEIGHT_MAX; 1330 field @NonNull public static final android.health.connect.datatypes.AggregationType<android.health.connect.datatypes.units.Mass> WEIGHT_MIN; 1331 } 1332 1333 public static final class WeightRecord.Builder { 1334 ctor public WeightRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull android.health.connect.datatypes.units.Mass); 1335 method @NonNull public android.health.connect.datatypes.WeightRecord build(); 1336 method @NonNull public android.health.connect.datatypes.WeightRecord.Builder clearZoneOffset(); 1337 method @NonNull public android.health.connect.datatypes.WeightRecord.Builder setZoneOffset(@NonNull java.time.ZoneOffset); 1338 } 1339 1340 public final class WheelchairPushesRecord extends android.health.connect.datatypes.IntervalRecord { 1341 method public long getCount(); 1342 field @NonNull public static final android.health.connect.datatypes.AggregationType<java.lang.Long> WHEEL_CHAIR_PUSHES_COUNT_TOTAL; 1343 } 1344 1345 public static final class WheelchairPushesRecord.Builder { 1346 ctor public WheelchairPushesRecord.Builder(@NonNull android.health.connect.datatypes.Metadata, @NonNull java.time.Instant, @NonNull java.time.Instant, @IntRange(from=1, to=1000000) long); 1347 method @NonNull public android.health.connect.datatypes.WheelchairPushesRecord build(); 1348 method @NonNull public android.health.connect.datatypes.WheelchairPushesRecord.Builder clearEndZoneOffset(); 1349 method @NonNull public android.health.connect.datatypes.WheelchairPushesRecord.Builder clearStartZoneOffset(); 1350 method @NonNull public android.health.connect.datatypes.WheelchairPushesRecord.Builder setEndZoneOffset(@NonNull java.time.ZoneOffset); 1351 method @NonNull public android.health.connect.datatypes.WheelchairPushesRecord.Builder setStartZoneOffset(@NonNull java.time.ZoneOffset); 1352 } 1353 1354} 1355 1356package android.health.connect.datatypes.units { 1357 1358 public final class BloodGlucose implements java.lang.Comparable<android.health.connect.datatypes.units.BloodGlucose> { 1359 method public int compareTo(@NonNull android.health.connect.datatypes.units.BloodGlucose); 1360 method @NonNull public static android.health.connect.datatypes.units.BloodGlucose fromMillimolesPerLiter(double); 1361 method public double getInMillimolesPerLiter(); 1362 } 1363 1364 public final class Energy implements java.lang.Comparable<android.health.connect.datatypes.units.Energy> { 1365 method public int compareTo(@NonNull android.health.connect.datatypes.units.Energy); 1366 method @NonNull public static android.health.connect.datatypes.units.Energy fromCalories(double); 1367 method public double getInCalories(); 1368 } 1369 1370 public final class Length implements java.lang.Comparable<android.health.connect.datatypes.units.Length> { 1371 method public int compareTo(@NonNull android.health.connect.datatypes.units.Length); 1372 method @NonNull public static android.health.connect.datatypes.units.Length fromMeters(double); 1373 method public double getInMeters(); 1374 } 1375 1376 public final class Mass implements java.lang.Comparable<android.health.connect.datatypes.units.Mass> { 1377 method public int compareTo(@NonNull android.health.connect.datatypes.units.Mass); 1378 method @NonNull public static android.health.connect.datatypes.units.Mass fromGrams(double); 1379 method public double getInGrams(); 1380 } 1381 1382 public final class Percentage implements java.lang.Comparable<android.health.connect.datatypes.units.Percentage> { 1383 method public int compareTo(@NonNull android.health.connect.datatypes.units.Percentage); 1384 method @NonNull public static android.health.connect.datatypes.units.Percentage fromValue(double); 1385 method public double getValue(); 1386 } 1387 1388 public final class Power implements java.lang.Comparable<android.health.connect.datatypes.units.Power> { 1389 method public int compareTo(@NonNull android.health.connect.datatypes.units.Power); 1390 method @NonNull public static android.health.connect.datatypes.units.Power fromWatts(double); 1391 method public double getInWatts(); 1392 } 1393 1394 public final class Pressure implements java.lang.Comparable<android.health.connect.datatypes.units.Pressure> { 1395 method public int compareTo(@NonNull android.health.connect.datatypes.units.Pressure); 1396 method @NonNull public static android.health.connect.datatypes.units.Pressure fromMillimetersOfMercury(double); 1397 method public double getInMillimetersOfMercury(); 1398 } 1399 1400 public final class Temperature implements java.lang.Comparable<android.health.connect.datatypes.units.Temperature> { 1401 method public int compareTo(@NonNull android.health.connect.datatypes.units.Temperature); 1402 method @NonNull public static android.health.connect.datatypes.units.Temperature fromCelsius(double); 1403 method public double getInCelsius(); 1404 } 1405 1406 public final class Velocity implements java.lang.Comparable<android.health.connect.datatypes.units.Velocity> { 1407 method public int compareTo(@NonNull android.health.connect.datatypes.units.Velocity); 1408 method @NonNull public static android.health.connect.datatypes.units.Velocity fromMetersPerSecond(double); 1409 method public double getInMetersPerSecond(); 1410 } 1411 1412 public final class Volume implements java.lang.Comparable<android.health.connect.datatypes.units.Volume> { 1413 method public int compareTo(@NonNull android.health.connect.datatypes.units.Volume); 1414 method @NonNull public static android.health.connect.datatypes.units.Volume fromLiters(double); 1415 method public double getInLiters(); 1416 } 1417 1418} 1419 1420