1// Signature format: 2.0 2package android.health.connect { 3 4 public class ApplicationInfoResponse { 5 method @NonNull public java.util.List<android.health.connect.datatypes.AppInfo> getApplicationInfoList(); 6 } 7 8 public final class DeleteUsingFiltersRequest { 9 method @NonNull public java.util.Set<android.health.connect.datatypes.DataOrigin> getDataOrigins(); 10 method @NonNull public java.util.Set<java.lang.Class<? extends android.health.connect.datatypes.Record>> getRecordTypes(); 11 method @Nullable public android.health.connect.TimeRangeFilter getTimeRangeFilter(); 12 } 13 14 public static final class DeleteUsingFiltersRequest.Builder { 15 ctor public DeleteUsingFiltersRequest.Builder(); 16 method @NonNull public android.health.connect.DeleteUsingFiltersRequest.Builder addDataOrigin(@NonNull android.health.connect.datatypes.DataOrigin); 17 method @NonNull public android.health.connect.DeleteUsingFiltersRequest.Builder addRecordType(@NonNull Class<? extends android.health.connect.datatypes.Record>); 18 method @NonNull public android.health.connect.DeleteUsingFiltersRequest build(); 19 method @NonNull public android.health.connect.DeleteUsingFiltersRequest.Builder clearDataOrigins(); 20 method @NonNull public android.health.connect.DeleteUsingFiltersRequest.Builder clearRecordTypes(); 21 method @NonNull public android.health.connect.DeleteUsingFiltersRequest.Builder setTimeRangeFilter(@Nullable android.health.connect.TimeRangeFilter); 22 } 23 24 public final class FetchDataOriginsPriorityOrderResponse { 25 method @NonNull public java.util.List<android.health.connect.datatypes.DataOrigin> getDataOriginsPriorityOrder(); 26 } 27 28 public final class HealthConnectDataState implements android.os.Parcelable { 29 method public int describeContents(); 30 method public int getDataMigrationState(); 31 method public int getDataRestoreError(); 32 method public int getDataRestoreState(); 33 method public void writeToParcel(@NonNull android.os.Parcel, int); 34 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.HealthConnectDataState> CREATOR; 35 field public static final int MIGRATION_STATE_ALLOWED = 4; // 0x4 36 field public static final int MIGRATION_STATE_APP_UPGRADE_REQUIRED = 1; // 0x1 37 field public static final int MIGRATION_STATE_COMPLETE = 5; // 0x5 38 field public static final int MIGRATION_STATE_IDLE = 0; // 0x0 39 field public static final int MIGRATION_STATE_IN_PROGRESS = 3; // 0x3 40 field public static final int MIGRATION_STATE_MODULE_UPGRADE_REQUIRED = 2; // 0x2 41 field public static final int RESTORE_ERROR_FETCHING_DATA = 2; // 0x2 42 field public static final int RESTORE_ERROR_NONE = 0; // 0x0 43 field public static final int RESTORE_ERROR_UNKNOWN = 1; // 0x1 44 field public static final int RESTORE_ERROR_VERSION_DIFF = 3; // 0x3 45 field public static final int RESTORE_STATE_IDLE = 0; // 0x0 46 field public static final int RESTORE_STATE_IN_PROGRESS = 2; // 0x2 47 field public static final int RESTORE_STATE_PENDING = 1; // 0x1 48 } 49 50 public class HealthConnectManager { 51 method @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") @RequiresPermission(android.Manifest.permission.RESTORE_HEALTH_CONNECT_DATA_AND_SETTINGS) public void canRestore(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Boolean,android.health.connect.HealthConnectException>); 52 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_PERMISSIONS) public void deleteRecords(@NonNull android.health.connect.DeleteUsingFiltersRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 53 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void fetchDataOriginsPriorityOrder(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.FetchDataOriginsPriorityOrderResponse,android.health.connect.HealthConnectException>); 54 method @RequiresPermission(android.Manifest.permission.MIGRATE_HEALTH_CONNECT_DATA) public void finishMigration(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.migration.MigrationException>); 55 method @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") @RequiresPermission(android.Manifest.permission.BACKUP_HEALTH_CONNECT_DATA_AND_SETTINGS) public void getChangesForBackup(@Nullable String, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.backuprestore.GetChangesForBackupResponse,android.health.connect.HealthConnectException>); 56 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void getContributorApplicationsInfo(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.ApplicationInfoResponse,android.health.connect.HealthConnectException>); 57 method @RequiresPermission(anyOf={android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION, android.Manifest.permission.MIGRATE_HEALTH_CONNECT_DATA}) public void getHealthConnectDataState(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.HealthConnectDataState,android.health.connect.HealthConnectException>); 58 method @NonNull public static java.util.Set<java.lang.String> getHealthPermissions(@NonNull android.content.Context); 59 method @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") @RequiresPermission(android.Manifest.permission.BACKUP_HEALTH_CONNECT_DATA_AND_SETTINGS) public void getLatestMetadataForBackup(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<android.health.connect.backuprestore.GetLatestMetadataForBackupResponse,android.health.connect.HealthConnectException>); 60 method @IntRange(from=0, to=7300) @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public int getRecordRetentionPeriodInDays(); 61 method @RequiresPermission(android.Manifest.permission.MIGRATE_HEALTH_CONNECT_DATA) public void insertMinDataMigrationSdkExtensionVersion(int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.migration.MigrationException>); 62 method public static boolean isHealthPermission(@NonNull android.content.Context, @NonNull String); 63 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void queryAccessLogs(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.health.connect.accesslog.AccessLog>,android.health.connect.HealthConnectException>); 64 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void queryActivityDates(@NonNull java.util.List<java.lang.Class<? extends android.health.connect.datatypes.Record>>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<java.time.LocalDate>,android.health.connect.HealthConnectException>); 65 method @FlaggedApi("com.android.healthfitness.flags.personal_health_record") @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void queryAllMedicalResourceTypeInfos(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.List<android.health.connect.MedicalResourceTypeInfo>,android.health.connect.HealthConnectException>); 66 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void queryAllRecordTypesInfo(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.util.Map<java.lang.Class<? extends android.health.connect.datatypes.Record>,android.health.connect.RecordTypeInfoResponse>,android.health.connect.HealthConnectException>); 67 method @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") @RequiresPermission(android.Manifest.permission.RESTORE_HEALTH_CONNECT_DATA_AND_SETTINGS) public void restoreChanges(@NonNull java.util.List<android.health.connect.backuprestore.RestoreChange>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 68 method @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") @RequiresPermission(android.Manifest.permission.RESTORE_HEALTH_CONNECT_DATA_AND_SETTINGS) public void restoreLatestMetadata(@NonNull android.health.connect.backuprestore.BackupMetadata, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 69 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void setRecordRetentionPeriodInDays(@IntRange(from=0, to=7300) int, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 70 method @RequiresPermission(android.Manifest.permission.STAGE_HEALTH_CONNECT_REMOTE_DATA) public void stageAllHealthConnectRemoteData(@NonNull java.util.Map<java.lang.String,android.os.ParcelFileDescriptor>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.restore.StageRemoteDataException>) throws java.lang.NullPointerException; 71 method @RequiresPermission(android.Manifest.permission.MIGRATE_HEALTH_CONNECT_DATA) public void startMigration(@NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.migration.MigrationException>); 72 method @RequiresPermission(android.Manifest.permission.STAGE_HEALTH_CONNECT_REMOTE_DATA) public void updateDataDownloadState(int); 73 method @RequiresPermission(android.health.connect.HealthPermissions.MANAGE_HEALTH_DATA_PERMISSION) public void updateDataOriginPriorityOrder(@NonNull android.health.connect.UpdateDataOriginPriorityOrderRequest, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.HealthConnectException>); 74 method @RequiresPermission(android.Manifest.permission.MIGRATE_HEALTH_CONNECT_DATA) public void writeMigrationData(@NonNull java.util.List<android.health.connect.migration.MigrationEntity>, @NonNull java.util.concurrent.Executor, @NonNull android.os.OutcomeReceiver<java.lang.Void,android.health.connect.migration.MigrationException>); 75 field public static final String ACTION_HEALTH_CONNECT_MIGRATION_READY = "android.health.connect.action.HEALTH_CONNECT_MIGRATION_READY"; 76 field public static final String ACTION_HEALTH_HOME_SETTINGS = "android.health.connect.action.HEALTH_HOME_SETTINGS"; 77 field public static final String ACTION_MANAGE_HEALTH_DATA = "android.health.connect.action.MANAGE_HEALTH_DATA"; 78 field public static final String ACTION_REQUEST_HEALTH_PERMISSIONS = "android.health.connect.action.REQUEST_HEALTH_PERMISSIONS"; 79 field public static final String ACTION_SHOW_MIGRATION_INFO = "android.health.connect.action.SHOW_MIGRATION_INFO"; 80 field public static final int DATA_DOWNLOAD_COMPLETE = 4; // 0x4 81 field public static final int DATA_DOWNLOAD_FAILED = 3; // 0x3 82 field public static final int DATA_DOWNLOAD_RETRY = 2; // 0x2 83 field public static final int DATA_DOWNLOAD_STARTED = 1; // 0x1 84 field public static final int DATA_DOWNLOAD_STATE_UNKNOWN = 0; // 0x0 85 } 86 87 public class HealthDataCategory { 88 field public static final int ACTIVITY = 1; // 0x1 89 field public static final int BODY_MEASUREMENTS = 2; // 0x2 90 field public static final int CYCLE_TRACKING = 3; // 0x3 91 field public static final int NUTRITION = 4; // 0x4 92 field public static final int SLEEP = 5; // 0x5 93 field public static final int UNKNOWN = 0; // 0x0 94 field public static final int VITALS = 6; // 0x6 95 field @FlaggedApi("com.android.healthfitness.flags.mindfulness") public static final int WELLNESS = 7; // 0x7 96 } 97 98 public class HealthPermissionCategory { 99 field public static final int ACTIVE_CALORIES_BURNED = 1; // 0x1 100 field @FlaggedApi("com.android.healthfitness.flags.activity_intensity") public static final int ACTIVITY_INTENSITY = 42; // 0x2a 101 field public static final int BASAL_BODY_TEMPERATURE = 33; // 0x21 102 field public static final int BASAL_METABOLIC_RATE = 9; // 0x9 103 field public static final int BLOOD_GLUCOSE = 26; // 0x1a 104 field public static final int BLOOD_PRESSURE = 27; // 0x1b 105 field public static final int BODY_FAT = 10; // 0xa 106 field public static final int BODY_TEMPERATURE = 28; // 0x1c 107 field public static final int BODY_WATER_MASS = 11; // 0xb 108 field public static final int BONE_MASS = 12; // 0xc 109 field public static final int CERVICAL_MUCUS = 18; // 0x12 110 field public static final int DISTANCE = 2; // 0x2 111 field public static final int ELEVATION_GAINED = 3; // 0x3 112 field public static final int EXERCISE = 4; // 0x4 113 field public static final int FLOORS_CLIMBED = 5; // 0x5 114 field public static final int HEART_RATE = 29; // 0x1d 115 field public static final int HEART_RATE_VARIABILITY = 30; // 0x1e 116 field public static final int HEIGHT = 13; // 0xd 117 field public static final int HYDRATION = 23; // 0x17 118 field public static final int INTERMENSTRUAL_BLEEDING = 38; // 0x26 119 field public static final int LEAN_BODY_MASS = 15; // 0xf 120 field public static final int MENSTRUATION = 20; // 0x14 121 field @FlaggedApi("com.android.healthfitness.flags.mindfulness") public static final int MINDFULNESS = 41; // 0x29 122 field public static final int NUTRITION = 24; // 0x18 123 field public static final int OVULATION_TEST = 21; // 0x15 124 field public static final int OXYGEN_SATURATION = 31; // 0x1f 125 field @FlaggedApi("com.android.healthconnect.flags.training_plans") public static final int PLANNED_EXERCISE = 40; // 0x28 126 field public static final int POWER = 36; // 0x24 127 field public static final int RESPIRATORY_RATE = 32; // 0x20 128 field public static final int RESTING_HEART_RATE = 34; // 0x22 129 field public static final int SEXUAL_ACTIVITY = 22; // 0x16 130 field @FlaggedApi("com.android.healthconnect.flags.skin_temperature") public static final int SKIN_TEMPERATURE = 39; // 0x27 131 field public static final int SLEEP = 25; // 0x19 132 field public static final int SPEED = 37; // 0x25 133 field public static final int STEPS = 6; // 0x6 134 field public static final int TOTAL_CALORIES_BURNED = 35; // 0x23 135 field public static final int UNKNOWN = 0; // 0x0 136 field public static final int VO2_MAX = 7; // 0x7 137 field public static final int WEIGHT = 17; // 0x11 138 field public static final int WHEELCHAIR_PUSHES = 8; // 0x8 139 } 140 141 public final class HealthPermissions { 142 field public static final String HEALTH_PERMISSION_GROUP = "android.permission-group.HEALTH"; 143 field public static final String MANAGE_HEALTH_DATA_PERMISSION = "android.permission.MANAGE_HEALTH_DATA"; 144 field public static final String MANAGE_HEALTH_PERMISSIONS = "android.permission.MANAGE_HEALTH_PERMISSIONS"; 145 } 146 147 @FlaggedApi("com.android.healthfitness.flags.personal_health_record") public final class MedicalResourceTypeInfo implements android.os.Parcelable { 148 ctor public MedicalResourceTypeInfo(int, @NonNull java.util.Set<android.health.connect.datatypes.MedicalDataSource>); 149 method public int describeContents(); 150 method @NonNull public java.util.Set<android.health.connect.datatypes.MedicalDataSource> getContributingDataSources(); 151 method public int getMedicalResourceType(); 152 method public void writeToParcel(@NonNull android.os.Parcel, int); 153 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.MedicalResourceTypeInfo> CREATOR; 154 } 155 156 public class RecordTypeInfoResponse { 157 method @NonNull public java.util.List<android.health.connect.datatypes.DataOrigin> getContributingPackages(); 158 method public int getDataCategory(); 159 method public int getPermissionCategory(); 160 } 161 162 public final class UpdateDataOriginPriorityOrderRequest { 163 ctor public UpdateDataOriginPriorityOrderRequest(@NonNull java.util.List<android.health.connect.datatypes.DataOrigin>, int); 164 method public int getDataCategory(); 165 method @NonNull public java.util.List<android.health.connect.datatypes.DataOrigin> getDataOriginInOrder(); 166 } 167 168} 169 170package android.health.connect.accesslog { 171 172 public final class AccessLog implements android.os.Parcelable { 173 method public int describeContents(); 174 method @NonNull public java.time.Instant getAccessTime(); 175 method @FlaggedApi("com.android.healthfitness.flags.personal_health_record") @NonNull public java.util.Set<java.lang.Integer> getMedicalResourceTypes(); 176 method public int getOperationType(); 177 method @NonNull public String getPackageName(); 178 method @NonNull public java.util.List<java.lang.Class<? extends android.health.connect.datatypes.Record>> getRecordTypes(); 179 method @FlaggedApi("com.android.healthfitness.flags.personal_health_record") public boolean isMedicalDataSourceAccessed(); 180 method public void writeToParcel(@NonNull android.os.Parcel, int); 181 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.accesslog.AccessLog> CREATOR; 182 } 183 184 public static final class AccessLog.OperationType { 185 field public static final int OPERATION_TYPE_DELETE = 1; // 0x1 186 field public static final int OPERATION_TYPE_READ = 2; // 0x2 187 field public static final int OPERATION_TYPE_UPSERT = 0; // 0x0 188 } 189 190} 191 192package android.health.connect.backuprestore { 193 194 @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") public final class BackupChange implements android.os.Parcelable { 195 method public int describeContents(); 196 method @NonNull public String getChangeId(); 197 method @Nullable public byte[] getData(); 198 method public boolean isDeletion(); 199 method @NonNull public static android.health.connect.backuprestore.BackupChange ofDeletion(@NonNull String); 200 method @NonNull public static android.health.connect.backuprestore.BackupChange ofUpsertion(@NonNull String, @NonNull byte[]); 201 method public void writeToParcel(@NonNull android.os.Parcel, int); 202 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.backuprestore.BackupChange> CREATOR; 203 } 204 205 @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") public final class BackupMetadata implements android.os.Parcelable { 206 ctor public BackupMetadata(@NonNull byte[]); 207 method public int describeContents(); 208 method @NonNull public byte[] getData(); 209 method public void writeToParcel(@NonNull android.os.Parcel, int); 210 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.backuprestore.BackupMetadata> CREATOR; 211 } 212 213 @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") public final class GetChangesForBackupResponse implements android.os.Parcelable { 214 ctor public GetChangesForBackupResponse(int, @NonNull java.util.List<android.health.connect.backuprestore.BackupChange>, @NonNull String); 215 method public int describeContents(); 216 method @NonNull public java.util.List<android.health.connect.backuprestore.BackupChange> getChanges(); 217 method public int getCurrentVersion(); 218 method @NonNull public String getNextChangeToken(); 219 method public void writeToParcel(@NonNull android.os.Parcel, int); 220 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.backuprestore.GetChangesForBackupResponse> CREATOR; 221 } 222 223 @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") public final class GetLatestMetadataForBackupResponse implements android.os.Parcelable { 224 ctor public GetLatestMetadataForBackupResponse(int, @NonNull android.health.connect.backuprestore.BackupMetadata); 225 method public int describeContents(); 226 method @NonNull public int getCurrentVersion(); 227 method @NonNull public android.health.connect.backuprestore.BackupMetadata getMetadata(); 228 method public void writeToParcel(@NonNull android.os.Parcel, int); 229 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.backuprestore.GetLatestMetadataForBackupResponse> CREATOR; 230 } 231 232 @FlaggedApi("com.android.healthfitness.flags.cloud_backup_and_restore") public final class RestoreChange implements android.os.Parcelable { 233 ctor public RestoreChange(@NonNull byte[]); 234 method public int describeContents(); 235 method @Nullable public byte[] getData(); 236 method public void writeToParcel(@NonNull android.os.Parcel, int); 237 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.backuprestore.RestoreChange> CREATOR; 238 } 239 240} 241 242package android.health.connect.datatypes { 243 244 public abstract class Record { 245 method public int getRecordType(); 246 } 247 248 public final class RecordTypeIdentifier { 249 field public static final int RECORD_TYPE_ACTIVE_CALORIES_BURNED = 2; // 0x2 250 field @FlaggedApi("com.android.healthfitness.flags.activity_intensity") public static final int RECORD_TYPE_ACTIVITY_INTENSITY = 42; // 0x2a 251 field public static final int RECORD_TYPE_BASAL_BODY_TEMPERATURE = 20; // 0x14 252 field public static final int RECORD_TYPE_BASAL_METABOLIC_RATE = 16; // 0x10 253 field public static final int RECORD_TYPE_BLOOD_GLUCOSE = 25; // 0x19 254 field public static final int RECORD_TYPE_BLOOD_PRESSURE = 23; // 0x17 255 field public static final int RECORD_TYPE_BODY_FAT = 17; // 0x11 256 field public static final int RECORD_TYPE_BODY_TEMPERATURE = 29; // 0x1d 257 field public static final int RECORD_TYPE_BODY_WATER_MASS = 34; // 0x22 258 field public static final int RECORD_TYPE_BONE_MASS = 32; // 0x20 259 field public static final int RECORD_TYPE_CERVICAL_MUCUS = 19; // 0x13 260 field public static final int RECORD_TYPE_CYCLING_PEDALING_CADENCE = 12; // 0xc 261 field public static final int RECORD_TYPE_DISTANCE = 7; // 0x7 262 field public static final int RECORD_TYPE_ELEVATION_GAINED = 4; // 0x4 263 field public static final int RECORD_TYPE_EXERCISE_SESSION = 37; // 0x25 264 field public static final int RECORD_TYPE_FLOORS_CLIMBED = 5; // 0x5 265 field public static final int RECORD_TYPE_HEART_RATE = 11; // 0xb 266 field public static final int RECORD_TYPE_HEART_RATE_VARIABILITY_RMSSD = 35; // 0x23 267 field public static final int RECORD_TYPE_HEIGHT = 24; // 0x18 268 field public static final int RECORD_TYPE_HYDRATION = 3; // 0x3 269 field public static final int RECORD_TYPE_INTERMENSTRUAL_BLEEDING = 36; // 0x24 270 field public static final int RECORD_TYPE_LEAN_BODY_MASS = 27; // 0x1b 271 field public static final int RECORD_TYPE_MENSTRUATION_FLOW = 21; // 0x15 272 field public static final int RECORD_TYPE_MENSTRUATION_PERIOD = 10; // 0xa 273 field @FlaggedApi("com.android.healthfitness.flags.mindfulness") public static final int RECORD_TYPE_MINDFULNESS_SESSION = 41; // 0x29 274 field public static final int RECORD_TYPE_NUTRITION = 8; // 0x8 275 field public static final int RECORD_TYPE_OVULATION_TEST = 30; // 0x1e 276 field public static final int RECORD_TYPE_OXYGEN_SATURATION = 22; // 0x16 277 field @FlaggedApi("com.android.healthconnect.flags.training_plans") public static final int RECORD_TYPE_PLANNED_EXERCISE_SESSION = 40; // 0x28 278 field public static final int RECORD_TYPE_POWER = 13; // 0xd 279 field public static final int RECORD_TYPE_RESPIRATORY_RATE = 31; // 0x1f 280 field public static final int RECORD_TYPE_RESTING_HEART_RATE = 33; // 0x21 281 field public static final int RECORD_TYPE_SEXUAL_ACTIVITY = 28; // 0x1c 282 field @FlaggedApi("com.android.healthconnect.flags.skin_temperature") public static final int RECORD_TYPE_SKIN_TEMPERATURE = 39; // 0x27 283 field public static final int RECORD_TYPE_SLEEP_SESSION = 38; // 0x26 284 field public static final int RECORD_TYPE_SPEED = 14; // 0xe 285 field public static final int RECORD_TYPE_STEPS = 1; // 0x1 286 field public static final int RECORD_TYPE_STEPS_CADENCE = 15; // 0xf 287 field public static final int RECORD_TYPE_TOTAL_CALORIES_BURNED = 9; // 0x9 288 field public static final int RECORD_TYPE_UNKNOWN = 0; // 0x0 289 field public static final int RECORD_TYPE_VO2_MAX = 18; // 0x12 290 field public static final int RECORD_TYPE_WEIGHT = 26; // 0x1a 291 field public static final int RECORD_TYPE_WHEELCHAIR_PUSHES = 6; // 0x6 292 } 293 294} 295 296package android.health.connect.migration { 297 298 public final class AppInfoMigrationPayload extends android.health.connect.migration.MigrationPayload implements android.os.Parcelable { 299 method @Nullable public byte[] getAppIcon(); 300 method @NonNull public String getAppName(); 301 method @NonNull public String getPackageName(); 302 method public void writeToParcel(@NonNull android.os.Parcel, int); 303 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.AppInfoMigrationPayload> CREATOR; 304 } 305 306 public static final class AppInfoMigrationPayload.Builder { 307 ctor public AppInfoMigrationPayload.Builder(@NonNull String, @NonNull String); 308 method @NonNull public android.health.connect.migration.AppInfoMigrationPayload build(); 309 method @NonNull public android.health.connect.migration.AppInfoMigrationPayload.Builder setAppIcon(@Nullable byte[]); 310 method @NonNull public android.health.connect.migration.AppInfoMigrationPayload.Builder setAppName(@NonNull String); 311 method @NonNull public android.health.connect.migration.AppInfoMigrationPayload.Builder setPackageName(@NonNull String); 312 } 313 314 public final class MetadataMigrationPayload extends android.health.connect.migration.MigrationPayload implements android.os.Parcelable { 315 method public int getRecordRetentionPeriodDays(); 316 method public void writeToParcel(@NonNull android.os.Parcel, int); 317 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.MetadataMigrationPayload> CREATOR; 318 } 319 320 public static final class MetadataMigrationPayload.Builder { 321 ctor public MetadataMigrationPayload.Builder(); 322 method @NonNull public android.health.connect.migration.MetadataMigrationPayload build(); 323 method @NonNull public android.health.connect.migration.MetadataMigrationPayload.Builder setRecordRetentionPeriodDays(@IntRange(from=0x0, to=0x1c84) int); 324 } 325 326 public final class MigrationEntity implements android.os.Parcelable { 327 ctor public MigrationEntity(@NonNull String, @NonNull android.health.connect.migration.MigrationPayload); 328 method public int describeContents(); 329 method @NonNull public String getEntityId(); 330 method @NonNull public android.health.connect.migration.MigrationPayload getPayload(); 331 method public void writeToParcel(@NonNull android.os.Parcel, int); 332 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.MigrationEntity> CREATOR; 333 } 334 335 public final class MigrationException extends java.lang.RuntimeException implements android.os.Parcelable { 336 ctor public MigrationException(@Nullable String, int, @Nullable String); 337 method public int describeContents(); 338 method public int getErrorCode(); 339 method @Nullable public String getFailedEntityId(); 340 method public void writeToParcel(@NonNull android.os.Parcel, int); 341 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.MigrationException> CREATOR; 342 field public static final int ERROR_INTERNAL = 1; // 0x1 343 field public static final int ERROR_MIGRATE_ENTITY = 2; // 0x2 344 field public static final int ERROR_MIGRATION_UNAVAILABLE = 3; // 0x3 345 } 346 347 public abstract class MigrationPayload implements android.os.Parcelable { 348 method public int describeContents(); 349 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.MigrationPayload> CREATOR; 350 } 351 352 public final class PermissionMigrationPayload extends android.health.connect.migration.MigrationPayload implements android.os.Parcelable { 353 method @NonNull public java.time.Instant getFirstGrantTime(); 354 method @NonNull public String getHoldingPackageName(); 355 method @NonNull public java.util.List<java.lang.String> getPermissions(); 356 method public void writeToParcel(@NonNull android.os.Parcel, int); 357 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.PermissionMigrationPayload> CREATOR; 358 } 359 360 public static final class PermissionMigrationPayload.Builder { 361 ctor public PermissionMigrationPayload.Builder(@NonNull String, @NonNull java.time.Instant); 362 method @NonNull public android.health.connect.migration.PermissionMigrationPayload.Builder addPermission(@NonNull String); 363 method @NonNull public android.health.connect.migration.PermissionMigrationPayload build(); 364 method @NonNull public android.health.connect.migration.PermissionMigrationPayload.Builder setFirstGrantTime(@NonNull java.time.Instant); 365 method @NonNull public android.health.connect.migration.PermissionMigrationPayload.Builder setHoldingPackageName(@NonNull String); 366 } 367 368 public final class PriorityMigrationPayload extends android.health.connect.migration.MigrationPayload implements android.os.Parcelable { 369 method public int getDataCategory(); 370 method @NonNull public java.util.List<android.health.connect.datatypes.DataOrigin> getDataOrigins(); 371 method public void writeToParcel(@NonNull android.os.Parcel, int); 372 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.PriorityMigrationPayload> CREATOR; 373 } 374 375 public static final class PriorityMigrationPayload.Builder { 376 ctor public PriorityMigrationPayload.Builder(); 377 method @NonNull public android.health.connect.migration.PriorityMigrationPayload.Builder addDataOrigin(@NonNull android.health.connect.datatypes.DataOrigin); 378 method @NonNull public android.health.connect.migration.PriorityMigrationPayload build(); 379 method @NonNull public android.health.connect.migration.PriorityMigrationPayload.Builder setDataCategory(int); 380 } 381 382 public final class RecordMigrationPayload extends android.health.connect.migration.MigrationPayload implements android.os.Parcelable { 383 method @NonNull public String getOriginAppName(); 384 method @NonNull public String getOriginPackageName(); 385 method @NonNull public android.health.connect.datatypes.Record getRecord(); 386 method public void writeToParcel(@NonNull android.os.Parcel, int); 387 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.migration.RecordMigrationPayload> CREATOR; 388 } 389 390 public static final class RecordMigrationPayload.Builder { 391 ctor public RecordMigrationPayload.Builder(@NonNull String, @NonNull String, @NonNull android.health.connect.datatypes.Record); 392 method @NonNull public android.health.connect.migration.RecordMigrationPayload build(); 393 method @NonNull public android.health.connect.migration.RecordMigrationPayload.Builder setOriginAppName(@NonNull String); 394 method @NonNull public android.health.connect.migration.RecordMigrationPayload.Builder setOriginPackageName(@NonNull String); 395 method @NonNull public android.health.connect.migration.RecordMigrationPayload.Builder setRecord(@NonNull android.health.connect.datatypes.Record); 396 } 397 398} 399 400package android.health.connect.restore { 401 402 public final class StageRemoteDataException extends java.lang.RuntimeException implements android.os.Parcelable { 403 method public int describeContents(); 404 method @NonNull public java.util.Map<java.lang.String,android.health.connect.HealthConnectException> getExceptionsByFileNames(); 405 method public void writeToParcel(@NonNull android.os.Parcel, int); 406 field @NonNull public static final android.os.Parcelable.Creator<android.health.connect.restore.StageRemoteDataException> CREATOR; 407 } 408 409} 410 411