HealthKit Espacio de nombres
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado.
Clases
HKActivitySummary |
Resume la actividad del usuario durante un día específico. |
HKActivitySummaryQuery |
Obtiene HKActivitySummary instancias que coinciden con un NSPredicateobjeto . |
HKActivitySummaryType |
Obect que se usa para solicitar permiso para leer HKActivitySummary objetos. |
HKAnchoredObjectQuery |
Que HKQuery en su llamada inicial devuelve el resultado más reciente y en las llamadas posteriores solo devuelve los datos agregados después de la llamada inicial. |
HKBiologicalSexObject |
Devuelto por GetBiologicalSex(NSError). |
HKBloodTypeObject |
Devuelto por GetBloodType(NSError) |
HKCategorySample |
cuyo HKSample valor es uno de un tipo enumerado. |
HKCategoryType |
que HKSampleType actualmente solo tiene una forma: análisis de sueño. |
HKCategoryTypeIdentifierExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKCategoryTypeIdentifierKey |
Define las claves que se van a identificar HKCategoryType. Actualmente solo la clave para el análisis de suspensión. |
HKCdaDocument |
Contiene la información que se representa en XML en un documento de mantenimiento del almacén HealthKit. |
HKCdaDocumentSample |
Contiene la información que se representa en XML en un documento de mantenimiento del almacén HealthKit. |
HKCharacteristicType |
que HKObjectType especifica un aspecto permanente del usuario. |
HKCharacteristicTypeIdentifierExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKCharacteristicTypeIdentifierKey |
Define el nombre de la constante para .HKCharacteristicType |
HKClinicalRecord |
Muestra de registros clínicos. |
HKClinicalType |
Tipo de muestra para un registro clínico. |
HKClinicalTypeIdentifierExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKCorrelation |
Correlación entre dos fragmentos de datos de salud (por ejemplo, presión arterial). |
HKCorrelationQuery |
que HKQuery devuelve solo los datos almacenados con correlaciones. (Nota: Las lecturas de presión arterial systolic y diastólica no están correlacionadas). |
HKCorrelationType |
que HKSampleType especifica una correlación entre dos tipos de datos (por ejemplo, presión arterial). |
HKCorrelationTypeIdentifierExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKCorrelationTypeKey |
Define las formas de HKCorrelation. |
HKCumulativeQuantitySeriesSample |
Una serie de datos acumulativa. |
HKDeletedObject |
Representa ejemplos que se han eliminado del almacén. |
HKDetailedCdaErrors |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKDevice |
Hardware que genera o consume datos de HealthKit. |
HKDevicePropertyKey |
Contiene claves cuyos valores constantes se relacionan con las propiedades de .HKDevice |
HKDocumentQuery |
Consulta documentos en el almacén de HealthKit. |
HKDocumentSample |
Documento de mantenimiento abstracto del almacén de HealthKit. |
HKDocumentType |
Contiene una constante que identifica el tipo de documento CDA. |
HKDocumentTypeIdentifierExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKErrorCodeExtensions |
Métodos de extensión para la enumeración HealthKit.HKErrorCode. |
HKFhirResource |
Representa un recurso de recursos rápidos de interoperabilidad sanitaria (FHIR). |
HKFhirResourceTypeExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKFitzpatrickSkinTypeObject |
Contiene datos de tipo de piel. |
HKHealthStore |
MonoTouch.HealthKit.HKHealthStore Una conexión a la base de datos de información relacionada con el estado del sistema. |
HKHealthStore.Notifications |
Clase que contiene controladores para las notificaciones del almacén del Kit de mantenimiento. |
HKMetadata |
Almacén de clave-valor para varios tipos de metadatos relacionados con el estado. |
HKMetadataKey |
Define las claves en el HKMetadata diccionario clave-valor. |
HKObject |
Clase base en HKSample, que define los datos de muestreo. |
HKObjectType |
Clase base para los tipos de datos que se pueden almacenar en la base de datos del Kit de mantenimiento. |
HKObserverQuery |
que HKQuery se ejecuta una vez inicialmente y, a continuación, se ejecuta automáticamente cuando se agregan datos pertinentes a la base de datos . |
HKPredicateKeyPath |
Contiene constantes que representan claves que identifican rutas de acceso de clave de predicado para seleccionar valores de HealthKit. |
HKQuantity |
Representa una cantidad medible de un determinado tipo de unidad, con un |
HKQuantitySample | |
HKQuantitySeriesSampleBuilder |
Compila series de muestras de cantidad. |
HKQuantitySeriesSampleQuery |
Consulta los datos de la serie en una muestra de cantidad. |
HKQuantityType | |
HKQuantityTypeIdentifierExtensions |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKQuantityTypeIdentifierKey |
Tipos de HKQuantityType. |
HKQuery |
Clase base para consultar bases de datos del Kit de mantenimiento. |
HKQueryAnchor |
Representa el ejemplo más reciente devuelto por una consulta de objeto anclado anterior. |
HKSample |
Medición de la información de salud. Clase base de HKQuantitySample y HKCategorySample. |
HKSampleQuery |
que HKQuery recupera datos HKSampleType de la base de datos. |
HKSampleType |
que HKObject representa los datos que se muestrean en un momento específico o muestreados durante un período de tiempo. |
HKSeriesBuilder |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKSeriesSample |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKSeriesType |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKSource |
Proveedor de datos de estado, como un sensor o una aplicación determinados. |
HKSourceQuery |
Clase que representa una consulta para los datos de HealthKit. |
HKSourceRevision |
HKSourceAjusta , agregando información de versión. |
HKSourceRevisionInfo |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKStatistics |
Proporciona operaciones estadísticas básicas sobre la información de mantenimiento. |
HKStatisticsCollection |
Un grupo de estadísticas relacionadas (generalmente representa una serie temporal). |
HKStatisticsCollectionQuery |
que HKQuery genera una colección de estadísticas (por ejemplo, el número de pasos por día del mes anterior). |
HKStatisticsQuery |
que HKQuery puede calcular estadísticas básicas (como la suma y la media) en sus datos constituyentes. |
HKUnit |
Definiciones y métodos de utilidad para manipular medidas de masa, longitud, volumen y energía. |
HKWheelchairUseObject |
Contiene una enumeración que describe el uso de sillas de ruedas. |
HKWorkout |
Que HKSample representa un entrenamiento físico. |
HKWorkoutBuilder |
Crea un entrenamiento a partir de datos de entrenamiento a medida que se agrega. |
HKWorkoutConfiguration |
Contiene información de configuración de entrenamiento. |
HKWorkoutEvent |
Una pausa o reanudación de un entrenamiento. |
HKWorkoutRoute |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKWorkoutRouteBuilder |
Clase para agregar datos geográficos a un entrenamiento a medida que cambia la ubicación del usuario. |
HKWorkoutRouteQuery |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKWorkoutType |
Que HKSampleType representa un entrenamiento. |
Enumeraciones
HKAuthorizationRequestStatus |
Enumera los valores que indican cuándo una aplicación debe solicitar permiso de usuario para el acceso. |
HKAuthorizationStatus |
Enumera el permiso de la aplicación para leer o escribir datos de estado. |
HKBiologicalSex |
Enumera los sexos biológicos. |
HKBloodGlucoseMealTime |
Enumera los valores que indican si se tomó un nivel de glucosa en sangre antes o después de una comida. |
HKBloodType |
Enumera los tipos de sangre conocidos. |
HKBodyTemperatureSensorLocation |
Enumera las posiciones en las que un termómetro toma su lectura. |
HKCategoryTypeIdentifier |
Enumera los tipos de T:HealthKit.HKCategory; actualmente solo hay el formulario (Análisis de suspensión). |
HKCategoryValue |
Contiene un único valor que indica que un valor de categoría no es aplicable a la categoría. |
HKCategoryValueAppleStandHour |
Enumera si el usuario estaba o no durante una hora. |
HKCategoryValueCervicalMucusQuality |
Enumera la calidad del moco cervical del usuario. |
HKCategoryValueMenstrualFlow |
Enumera la cantidad de flujo menstrual. |
HKCategoryValueOvulationTestResult |
Enumera los resultados de una prueba de extrapolación. |
HKCategoryValueSleepAnalysis |
Enumera los estados del sueño: si están dormidos o simplemente descansando en la cama. |
HKCharacteristicTypeIdentifier |
Enumera las formas de HKCharacteristicType. |
HKClinicalTypeIdentifier |
Enumera los identificadores de tipo de registro clínico. |
HKCorrelationTypeIdentifier |
Contiene constantes que identifican los tipos de correlación de HealthKit. |
HKDocumentTypeIdentifier |
Enumera los tipos de documento HealthKit. |
HKErrorCode |
Enumera los errores comunes realizados al acceder a los datos de mantenimiento. |
HKFhirResourceType |
Enumera los tipos fast Healthcare Interoperability Resources (FHIR). |
HKFitzpatrickSkinType |
Enumera los tipos de piel mediante la escala de Fitzpatrick. |
HKHeartRateMotionContext |
Enumera los posibles niveles de actividad asociados a una muestra de frecuencia cardíaca. |
HKHeartRateSensorLocation |
Enumera las ubicaciones en las que se adjunta un monitor de frecuencia cardíaca. |
HKInsulinDeliveryReason |
Enumera las razones por las que se proporcionó insulina. |
HKMetricPrefix |
Enumera los prefijos de métrica, por ejemplo, Centi-, Deca-, Deci-. Se usa con métodos de fábrica de HKUnit. |
HKQuantityAggregationStyle |
Enumera si una HKQuantityType es una medida acumulativa (por ejemplo, "energía activa quemada") o un valor discreto (como "contenido de alcohol en sangre"). |
HKQuantityTypeIdentifier |
Enumera los tipos de HKQuantityType. |
HKQueryOptions |
Enumera las opciones disponibles para su uso con el GetPredicateForSamples(NSDate, NSDate, HKQueryOptions) método . |
HKStatisticsOptions |
Enumera las opciones aplicables a HKStatisticsQuery los objetos y HKStatisticsCollectionQuery . |
HKSwimmingStrokeStyle |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
HKUpdateFrequency |
Enumera las frequences para la entrega en segundo plano de los datos (vea EnableBackgroundDelivery(HKObjectType, HKUpdateFrequency, Action<Boolean,NSError>)). |
HKVO2MaxTestType |
Enumera el proceso de prueba usado para establecer VO2 Max. |
HKWeatherCondition |
Enumera los tipos meteorológicos. |
HKWheelchairUse |
Enumera constantes que describen el uso de silla de ruedas. |
HKWorkoutActivityType |
Enumera varias actividades que se consideran entrenamientos. |
HKWorkoutEventType |
Enumera los eventos que pueden producirse durante un entrenamiento (Pausar, Reanudar). |
HKWorkoutSessionLocationType |
Enumera las ubicaciones de entrenamiento. |
HKWorkoutSwimmingLocationType |
El espacio de nombres HealthKit proporciona almacenamiento de datos seguro y recuperación de información relacionada con el estado. |
Delegados
Comentarios
El espacio de nombres del Kit de mantenimiento, introducido en iOS 8, permite que las aplicaciones registren, realicen un seguimiento y accedan a la información relacionada con el estado a un almacén persistente común.
Aprovisionamiento, permisos y perfiles
Para usar los servicios del Kit de mantenimiento, las aplicaciones deben desarrollarse con un "Id. de aplicación explícito" y un perfil de aprovisionamiento que incluya los permisos explícitos de id. y Kit de mantenimiento.
Además, las aplicaciones deben tener una propiedad Entitlements.plist que contenga la clave com.apple.developer.healthkit
de tipo Boolean
con un valor de true
.
En tiempo de ejecución, la aplicación debe solicitar acceso a los tipos específicos de datos de mantenimiento en los que está interesado. El usuario interactuará con un cuadro de diálogo de permisos en la aplicación Estado que les permite controlar de forma detallada qué información de mantenimiento permitirá.
var temperatureKey = HKQuantityTypeIdentifierKey.BodyTemperature;
var tempQuantityType = HKObjectType.GetQuantityType (temperatureKey);
var hks = new HKHealthStore ();
var success = await hks.RequestAuthorizationToShareAsync (new NSSet (new [] { tempQuantityType }), new NSSet ());
El resultado del método T:HealthKit.HKHealthStore.RequestAuthorizationtoShareAsync indica solo que el usuario interactúó con el cuadro de diálogo de permisos, no indica si el usuario permitió cualquier uso compartido de datos. Para ello, las aplicaciones pueden usar el GetAuthorizationStatus método :
var access = healthKitStore.GetAuthorizationStatus (HKObjectType.GetQuantityType (HKQuantityTypeIdentifierKey.HeartRate));
if (access.HasFlag (HKAuthorizationStatus.SharingAuthorized)) {
//...etc...
Creación y almacenamiento de datos
Una vez concedidos los permisos, la creación y el almacenamiento de datos implica crear un HKSample objeto de un determinado HKSampleType y, a continuación, llamar a SaveObject o SaveObjectAsync.
Diferencias de control de excepciones entre métodos asincrónicos y no asincrónicos
La filosofía de Apple con respecto a los intentos de almacenar o leer información no permitida es que estos intentos no deben causar excepciones en tiempo de ejecución. En su lugar, los métodos como RequestAuthorizationToShare y M:HealthKit.HKStore.SaveObject* se definen con controladores de devolución de llamada de finalización que se pasan a un argumento distinto de null NSError en caso de error. Los desarrolladores de aplicaciones que usan estos métodos deben tener especial cuidado para comprobar el éxito, ya que es muy probable que los usuarios tengan precaución sobre el acceso a sus datos de salud.
En cambio, las versiones asincrónicas de Xamarin de estos métodos (como M:HealthKit.HKHealthStore.RequestAutorizationToShareAsync* y SaveObjectAsync) producirán un NSErrorException error o si el usuario final no permite el método.
//Apple's philosophy: no exception
var myCurrentTemp = HKQuantity.FromQuantity (HKUnit.DegreeFahrenheit, 98.6);
var tempSample = HKQuantitySample.FromType (tempQuantityType, myCurrentTemp, new NSDate (), new NSDate (), new NSDictionary());
hks.SaveObject(tempSample, (success, error) => {
if(error != null)
{
//...etc...
//Xamarin's philosophy: Lack of permissions raises exception
protected async void StoreAsync(HKHealthStore store, HKQuantitySample sample)
{
try
{
var success = await store.SaveObjectAsync (sample);
}catch(NSErrorException x)
{
Console.WriteLine (x);
}
}
Hay varios tipos de T:HealthKit.HKObjecTypes:
HKCharacteristicType los objetos representan caracteres estáticos del usuario, como la fecha de nacimiento o el tipo de sangre (ver HKCharacteristicTypeIdentifierKey), mientras que HKSampleType los objetos representan datos muestreados a lo largo del tiempo. A partir de iOS 8, solo hay un tipo de HKCategorySample, que es SleepAnalysis. La gran mayoría de los tipos de datos del Kit de mantenimiento se definen en HKQuantityTypeIdentifierKey.
La manipulación de ejemplos de datos implica un HKSampleType objeto y un HKSample para transportar los datos:
HKQuantitySamples puede hacer referencia a una medida instantánea, en cuyo caso sus propiedades P:HealthKit.HKQuantitySample.StartDate yP:HealthKit.HKQuantitySample.EndDate deben establecerse en el mismo valor. Otros ejemplos, como el recuento de pasos, se miden con el tiempo y la hora de inicio y finalización deben establecerse correctamente.
Los datos pueden tener metadatos asociados. Hay varias claves de metadatos predefinidas en HKMetadataKey, pero también se recomienda a los desarrolladores de aplicaciones crear sus propias claves para metadatos.
Unidades de medida y conversión
Health Kit admite unidades de medida en las categorías de masa, longitud, volumen y energía. Esta compatibilidad incluye la conversión de valores entre sistemas de medición (por ejemplo, si un usuario prefiere grados Fahrenheit, pero tiene un sensor que informa de sus datos en Celsius). Esto se admite automáticamente en la aplicación Health, pero también se pueden realizar conversiones explícitas, como se muestra en el ejemplo siguiente:
var myFahrenheitTemp = HKQuantity.FromQuantity (HKUnit.DegreeFahrenheit, 98.6);
var myCelsiusTemp = myFahrenheitTemp.GetDoubleValue (HKUnit.DegreeCelsius);