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