Compartilhar via


HealthKit Namespace

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

Classes

HKActivitySummary

Resume a atividade do usuário para um dia específico.

HKActivitySummaryQuery

Obtém HKActivitySummary instâncias que correspondem a um NSPredicate.

HKActivitySummaryType

Obect que é usado para solicitar permissão para ler HKActivitySummary objetos.

HKAnchoredObjectQuery

Um HKQuery que em sua chamada inicial retorna o resultado mais recente e, em chamadas subsequentes, retorna apenas os dados adicionados após a chamada inicial.

HKBiologicalSexObject

Retornado por GetBiologicalSex(NSError).

HKBloodTypeObject

Retornado por GetBloodType(NSError)

HKCategorySample

Um HKSample cujo valor é um de um tipo enumerado.

HKCategoryType

Um HKSampleType que atualmente tem apenas uma forma: análise de suspensão.

HKCategoryTypeIdentifierExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKCategoryTypeIdentifierKey

Define as chaves para identificar HKCategoryTypes. Atualmente, apenas uma chave para análise de suspensão.

HKCdaDocument

Contém as informações representadas em XML em um documento de integridade do repositório HealthKit.

HKCdaDocumentSample

Contém as informações representadas em XML em um documento de integridade do repositório HealthKit.

HKCharacteristicType

Um HKObjectType que especifica um aspecto permanente do usuário.

HKCharacteristicTypeIdentifierExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKCharacteristicTypeIdentifierKey

Define o nome da constante para um HKCharacteristicType.

HKClinicalRecord

Um exemplo de registros clínicos.

HKClinicalType

Um tipo de exemplo para um registro clínico.

HKClinicalTypeIdentifierExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKCorrelation

Uma correlação entre dois dados de integridade (por exemplo, pressão arterial).

HKCorrelationQuery

Um HKQuery que retorna apenas os dados que foram armazenados com correlações. (Observação: as leituras de pressão arterial sistólica e diastólica não estão correlacionadas.)

HKCorrelationType

Um HKSampleType que especifica uma correlação entre dois tipos de dados (por exemplo, pressão arterial).

HKCorrelationTypeIdentifierExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKCorrelationTypeKey

Define as formas de HKCorrelation.

HKCumulativeQuantitySeriesSample

Uma série de dados cumulativos.

HKDeletedObject

Representa exemplos que foram excluídos do repositório.

HKDetailedCdaErrors

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKDevice

Hardware que gera ou consome dados do HealthKit.

HKDevicePropertyKey

Contém chaves cujos valores constantes estão relacionados às propriedades de um HKDevice.

HKDocumentQuery

Consultas para documentos no repositório HealthKit.

HKDocumentSample

Documento de integridade do repositório Abstract HealthKit.

HKDocumentType

Contém uma constante que identifica o tipo de documento CDA.

HKDocumentTypeIdentifierExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKErrorCodeExtensions

Métodos de extensão para a enumeração HealthKit.HKErrorCode.

HKFhirResource

Representa um recurso FHIR (Fast Healthcare Interoperability Resources).

HKFhirResourceTypeExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKFitzpatrickSkinTypeObject

Contém dados do tipo skin.

HKHealthStore

MonoTouch.HealthKit.HKHealthStore Uma conexão com o banco de dados em todo o sistema de informações relacionadas à integridade.

HKHealthStore.Notifications

Classe que contém manipuladores para notificações de repositório do Kit de Integridade.

HKMetadata

Um repositório de chave-valor para vários tipos de metadados relacionados à integridade.

HKMetadataKey

Define as chaves no HKMetadata dicionário chave-valor.

HKObject

Classe base para HKSample, que define dados de amostragem.

HKObjectType

Classe base para tipos de dados armazenáveis no banco de dados do Kit de Integridade.

HKObserverQuery

Um HKQuery que é executado uma vez inicialmente e, em seguida, é executado automaticamente quando dados relevantes são adicionados ao banco de dados .

HKPredicateKeyPath

Contém constantes que representam chaves que identificam caminhos de chave de predicado para selecionar valores do HealthKit.

HKQuantity

Representa uma quantidade mensurável de um determinado tipo de unidade, com um double valor e um HKUnit tipo.

HKQuantitySample

Um HKSample que tem uma magnitude (consulte Quantity).

HKQuantitySeriesSampleBuilder

Cria uma série de exemplos de quantidade.

HKQuantitySeriesSampleQuery

Consulta dados de série em um exemplo de quantidade.

HKQuantityType

Um T:HKSampleType que representa um exemplo cumulativo ou discreto.

HKQuantityTypeIdentifierExtensions

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKQuantityTypeIdentifierKey

Tipos de HKQuantityType.

HKQuery

Classe base para consultar bancos de dados do Health Kit.

HKQueryAnchor

Representa o exemplo mais recente que foi retornado por uma consulta de objeto ancorado anterior.

HKSample

Uma medida das informações de integridade. A classe base para HKQuantitySample e HKCategorySample.

HKSampleQuery

Um HKQuery que recupera HKSampleType dados do banco de dados.

HKSampleType

Um HKObject que representa dados que são amostrados em um momento específico ou amostrados durante um período de tempo.

HKSeriesBuilder

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKSeriesSample

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKSeriesType

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKSource

Um provedor de dados de integridade, como um sensor ou aplicativo específico.

HKSourceQuery

Classe que representa uma consulta para dados do HealthKit.

HKSourceRevision

HKSourceEncapsula , adicionando informações de versão.

HKSourceRevisionInfo

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKStatistics

Fornece operações estatísticas básicas sobre informações de integridade.

HKStatisticsCollection

Um grupo de estatísticas relacionadas (geralmente representando uma série temporal).

HKStatisticsCollectionQuery

Um HKQuery que produz uma coleção de estatísticas (por exemplo, o número de etapas por dia do mês anterior).

HKStatisticsQuery

Um HKQuery que pode calcular estatísticas básicas (como a soma e a média) em seus dados constituintes.

HKUnit

Definições e métodos utilitários para manipular medidas de massa, comprimento, volume e energia.

HKWheelchairUseObject

Contém uma enumeração que descreve o uso de cadeira de rodas.

HKWorkout

Um HKSample que representa um treino físico.

HKWorkoutBuilder

Cria um treino com base em dados de treino conforme eles são adicionados.

HKWorkoutConfiguration

Contém informações de configuração de treino.

HKWorkoutEvent

Uma pausa ou retomada de um treino.

HKWorkoutRoute

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKWorkoutRouteBuilder

Uma classe para adicionar dados geográficos a um treino conforme a localização do usuário muda.

HKWorkoutRouteQuery

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKWorkoutType

Um HKSampleType que representa um treino.

Enumerações

HKAuthorizationRequestStatus

Enumera valores que informam quando um aplicativo deve solicitar permissão de usuário para acesso.

HKAuthorizationStatus

Enumera a permissão do aplicativo para ler ou gravar dados de integridade.

HKBiologicalSex

Enumera os sexos biológicos.

HKBloodGlucoseMealTime

Enumera valores que dizem se um nível de glicose no sangue foi tomado antes ou depois de uma refeição.

HKBloodType

Enumera tipos sanguíneos conhecidos.

HKBodyTemperatureSensorLocation

Enumera as posições nas quais um termômetro faz sua leitura.

HKCategoryTypeIdentifier

Enumera os tipos de T:HealthKit.HKCategory; atualmente, há apenas um formulário (Análise de Suspensão).

HKCategoryValue

Contém um único valor que indica que um valor de categoria não é aplicável à categoria.

HKCategoryValueAppleStandHour

Enumera se o usuário permaneceu ou não durante uma hora.

HKCategoryValueCervicalMucusQuality

Enumera a qualidade do muco cervical do usuário.

HKCategoryValueMenstrualFlow

Enumera a quantidade de fluxo menstrual.

HKCategoryValueOvulationTestResult

Enumera os resultados de um teste de ovulação.

HKCategoryValueSleepAnalysis

Enumera os estados do sono: se eles estão dormindo ou apenas descansando na cama.

HKCharacteristicTypeIdentifier

Enumera as formas de HKCharacteristicType.

HKClinicalTypeIdentifier

Enumera identificadores de tipo de registro clínico.

HKCorrelationTypeIdentifier

Contém constantes que identificam tipos de correlação do HealthKit.

HKDocumentTypeIdentifier

Enumera tipos de documento do HealthKit.

HKErrorCode

Enumera erros comuns cometidos ao acessar dados de integridade.

HKFhirResourceType

Enumera tipos FHIR (Fast Healthcare Interoperability Resources).

HKFitzpatrickSkinType

Enumera tipos de pele usando a escala Fitzpatrick.

HKHeartRateMotionContext

Enumera os possíveis níveis de atividade associados a uma amostra de freqüência cardíaca.

HKHeartRateSensorLocation

Enumera os locais em que um monitor de freqüência cardíaca está anexado.

HKInsulinDeliveryReason

Enumera as razões pelas quais a insulina foi fornecida.

HKMetricPrefix

Enumera prefixos de métrica, por exemplo, Centi-, Deca-, Deci-. Usado com métodos de fábrica de HKUnit.

HKQuantityAggregationStyle

Enumera se um HKQuantityType é uma medida cumulativa (por exemplo, "energia ativa queimada") ou um valor discreto (como "conteúdo de álcool no sangue").

HKQuantityTypeIdentifier

Enumera os tipos de HKQuantityType.

HKQueryOptions

Enumera as opções disponíveis para uso com o GetPredicateForSamples(NSDate, NSDate, HKQueryOptions) método .

HKStatisticsOptions

Enumera opções aplicáveis a HKStatisticsQuery objetos e HKStatisticsCollectionQuery .

HKSwimmingStrokeStyle

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKUpdateFrequency

Enumera as frequências para entrega em segundo plano de dados (consulte EnableBackgroundDelivery(HKObjectType, HKUpdateFrequency, Action<Boolean,NSError>)).

HKVO2MaxTestType

Enumera o processo de teste usado para estabelecer o VO2 Max.

HKWeatherCondition

Enumera tipos meteorológicos.

HKWheelchairUse

Enumera constantes que descrevem o uso de cadeira de rodas.

HKWorkoutActivityType

Enumera várias atividades consideradas treinos.

HKWorkoutEventType

Enumera eventos que podem ocorrer durante um treino (Pausar, Retomar).

HKWorkoutSessionLocationType

Enumera locais de treino.

HKWorkoutSwimmingLocationType

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

Delegados

HKAnchoredObjectResultHandler

O manipulador de conclusão para HKAnchoredObjectQuery(HKSampleType, NSPredicate, nuint, nuint, HKAnchoredObjectResultHandler2).

HKAnchoredObjectResultHandler2

Manipulador de conclusão para consultas de objeto ancorado.

HKAnchoredObjectUpdateHandler

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKCorrelationQueryResultHandler

Manipulador de conclusão para HKCorrelationQuery.

HKHealthStoreGetRequestStatusForAuthorizationToShareHandler

Manipulador a ser passado para GetRequestStatusForAuthorizationToShare(NSSet<HKSampleType>, NSSet<HKObjectType>, HKHealthStoreGetRequestStatusForAuthorizationToShareHandler).

HKObserverQueryUpdateHandler

Manipulador de atualização para HKObserverQuery objetos.

HKQuantitySeriesSampleBuilderFinishSeriesDelegate

Manipulador de conclusão para T:HealthKit.HKQuantitySeriesSampleBuilder.FinishSeries.

HKQuantitySeriesSampleQueryQuantityDelegate

Um manipulador a ser passado para HKQuantitySeriesSampleQuery(HKQuantitySample, HKQuantitySeriesSampleQueryQuantityDelegate).

HKSampleQueryResultsHandler

Manipulador de resultados para HKSampleQuery.

HKSourceQueryCompletionHandler

Manipulador de conclusão para HKSourceQuery.

HKStatisticsCollectionEnumerator

Manipulador delegado para EnumerateStatistics(NSDate, NSDate, HKStatisticsCollectionEnumerator).

HKStatisticsCollectionQueryInitialResultsHandler

Manipulador de resultados para SetInitialResultsHandler(HKStatisticsCollectionQueryInitialResultsHandler) e SetStatisticsUpdateHandler(HKStatisticsCollectionQueryInitialResultsHandler).

HKStatisticsCollectionQueryStatisticsUpdateHandler

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

HKStatisticsQueryHandler

Manipulador de resultados para C:HKStatisticsQuery.

HKStoreSampleAddedCallback

Manipulador de conclusão para AddSamples(HKSample[], HKWorkout, HKStoreSampleAddedCallback).

HKWorkoutBuilderCompletionHandler

Manipulador de conclusão para adicionar metadados com HKWorkoutRouteQuery(HKWorkoutRoute, HKWorkoutRouteBuilderDataHandler).

HKWorkoutRouteBuilderAddMetadataHandler

Manipulador de conclusão para adicionar metadados com HKWorkoutRouteQuery(HKWorkoutRoute, HKWorkoutRouteBuilderDataHandler).

HKWorkoutRouteBuilderDataHandler

O namespace healthkit fornece armazenamento de dados seguro e recuperação de informações relacionadas à integridade.

Comentários

O namespace kit de integridade, introduzido no iOS 8, permite que os aplicativos registrem, acompanhem e acessem informações relacionadas à integridade a um repositório persistente comum.

Provisionamento, permissões e perfis

Para usar os serviços do Health Kit, os aplicativos devem ser desenvolvidos usando uma "ID explícita do aplicativo" e um perfil de provisionamento que inclua as permissões explícitas de ID e kit de integridade.

Além disso, os aplicativos devem ter um Entitlements.plist que contenha a chave com.apple.developer.healthkit do tipo Boolean com um valor de true.

Em runtime, o aplicativo deve solicitar acesso aos tipos específicos de dados de integridade nos quais está interessado. O usuário interagirá com uma caixa de diálogo de permissões no aplicativo Integridade que lhe permite controle refinado sobre quais informações de integridade eles permitirão.

var temperatureKey = HKQuantityTypeIdentifierKey.BodyTemperature;
var tempQuantityType = HKObjectType.GetQuantityType (temperatureKey);

var hks = new HKHealthStore ();
var success = await hks.RequestAuthorizationToShareAsync (new NSSet (new [] { tempQuantityType }), new NSSet ());

O resultado do método T:HealthKit.HKHealthStore.RequestAuthorizationtoShareAsync indica apenas que o usuário interagiu com a caixa de diálogo de permissões, não indica se o usuário permitiu qualquer compartilhamento de dados. Para isso, os aplicativos podem usar o GetAuthorizationStatus método :

var access = healthKitStore.GetAuthorizationStatus (HKObjectType.GetQuantityType (HKQuantityTypeIdentifierKey.HeartRate));
if (access.HasFlag (HKAuthorizationStatus.SharingAuthorized)) {
//...etc...

Criando e armazenando dados

Depois que as permissões forem concedidas, a criação e o armazenamento de dados envolverão a criação de um HKSample de um determinado HKSampleType e, em seguida, a chamada SaveObject ou SaveObjectAsync.

Diferenças de tratamento de exceções entre métodos assíncronos e não assíncronos

A filosofia da Apple em relação às tentativas de armazenar ou ler informações não permitidas é que essas tentativas não devem causar exceções de runtime. Em vez disso, métodos como RequestAuthorizationToShare e M:HealthKit.HKStore.SaveObject* são definidos com manipuladores de retorno de chamada de conclusão que são passados um argumento não nulo NSError no caso de um erro. Os desenvolvedores de aplicativos que usam esses métodos devem ter um cuidado especial para verificar o sucesso, pois é altamente provável que os usuários sejam cautelosos quanto ao acesso aos seus dados de integridade.

Por outro lado, as versões assíncronas do Xamarin desses métodos (como M:HealthKit.HKHealthStore.RequestAutorizationToShareAsync* e SaveObjectAsync) gerarão uma NSErrorException falha ou se o método não for permitido pelo usuário final.

//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);
	}
}

Há vários tipos de T:HealthKit.HKObjecTypes:

HKCharacteristicType os objetos representam caracteres estáticos do usuário, como data de nascimento ou tipo sanguíneo (consulte HKCharacteristicTypeIdentifierKey), enquanto HKSampleType objetos representam dados que são amostrados ao longo do tempo. A partir do iOS 8, há apenas um tipo de HKCategorySample, que é SleepAnalysis. A grande maioria dos tipos de dados do Health Kit é definida em HKQuantityTypeIdentifierKey.

A manipulação de exemplos de dados envolve um HKSampleType objeto e um HKSample para transportar os dados:

HKQuantitySamples podem se referir a uma medida instantânea, nesse caso, suas propriedades P:HealthKit.HKQuantitySample.StartDate e P:HealthKit.HKQuantitySample.EndDate devem ser definidas com o mesmo valor. Outros exemplos, como contagem de etapas, são medidos ao longo do tempo e a hora de início e término deve ser definida adequadamente.

Os dados podem ter metadados associados a ele. Há várias chaves de metadados predefinidas no HKMetadataKey, mas os desenvolvedores de aplicativos também são incentivados a criar suas próprias chaves para metadados.

Unidades de medição e conversão

O Kit de Integridade dá suporte a unidades de medida nas categorias de massa, comprimento, volume e energia. Esse suporte inclui a conversão de valores entre sistemas de medida (por exemplo, se um usuário preferir graus Fahrenheit, mas tiver um sensor que relata seus dados em Celsius). Isso tem suporte automático no aplicativo Integridade, mas conversões explícitas também são possíveis, conforme mostrado no exemplo a seguir:

var myFahrenheitTemp = HKQuantity.FromQuantity (HKUnit.DegreeFahrenheit, 98.6);
var myCelsiusTemp = myFahrenheitTemp.GetDoubleValue (HKUnit.DegreeCelsius);