Health Platform API'si

Health Platform API, geliştiricilere kullanıcının geçmiş sağlık, sağlıklı yaşam ve fitness verilerini okumak, yazmak ve paylaşmak için tek bir arayüz sağlayan bir Android API'sidir. Sağlık Platformu sayesinde kullanıcılar verilerini kontrol edebilir. Kullanıcılar, hangi uygulamaların farklı veri türlerine okuma veya yazma erişimi olduğunu kontrol eder. Health Platform API veri türleri arasında boy, nabız ve daha fazlası bulunur.

Health Platform API, kullanıcılara kişisel sağlık, fitness ve sağlıklı yaşam verilerine hangi uygulamaların erişip bunları görüntüleyebileceğini seçmelerine olanak tanıyan bir depolama ve paylaşım mekanizması sunar. Bu sayede uygulama geliştiriciler, kullanıcılara sağlıklarıyla ilgili daha kapsamlı bir görünüm sunabilir ve kullanıcılar verilerini daha etkili bir şekilde izleyebilir.

Health Platform API yazılım geliştirici kiti, Android uygulama geliştiricilerine belirli Samsung cihazlarda kullanıcının sağlık ve sağlıklı yaşam verilerine erişim sağlamak için ihtiyaç duydukları her şeyi sağlar. Ayrıca, uygulamaların veri ekleme, silme ve okuma gibi toplu işlemleri gerçekleştirmesine olanak tanır.

Başlayın

Health Platform'u kullanırken aşağıdakileri göz önünde bulundurun:

  • İstemci uygulamaları, kullanıcıdan okuma veya yazma erişimi için ayrıntılı izinler almalıdır.
  • Kullanıcı, izinleri reddedebilir veya daha sonra istediği zaman iptal edebilir.
  • Health Platform API yalnızca belirli Samsung cihazlarını destekler.
  • HealthDataClient, Health Platform'un istemcisi ve Health Platform'a giriş noktasıdır.

Aşağıdaki resimde, geliştiricilerin uygulamalarında uygulamak zorunda olduğu gerekli entegrasyon adımları gösterilmektedir:

SDK kurulumu, erişim ve izinler ve CRUD işlemleri dahil olmak üzere entegrasyon adımları.
Şekil 1. Health Platform entegrasyon adımları.

Dosya yayınlama

Health Platform V1 sürümü şunları içerir:

  • İstemci SDK'sı: Health Platform API'yi kullanmak için bu SDK'yı uygulamanıza dahil edin. SDK, uygulamanızın Gradle derleme dosyalarına doğrudan dahil edebileceğiniz bir Maven deposudur.

Health Platform'u yükleme

Aşağıdaki adımları uygulayarak Health Platform'u yükleyin:

Uygulamanın kök build.gradle dosyasına aşağıdaki örnekte gösterildiği gibi deposu ekleyin:

allprojects {
    . . .
    repositories {
        . . .
        google()
    }
}

Aşağıdaki örnekte gösterildiği gibi modülünüzün build.gradle dosyasına Health Platform SDK'sına bağımlılığı ekleyin:

Kotlin

dependencies { . . . implementation("com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01") }

Groovy

dependencies { . . . implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01' }

Veri

Health Platform, sağlık ve fitness verilerini depolar ve yapılandırır. Ayrıca farklı türdeki verilerin ölçülmesiyle ilgili temel farklılıklar da dikkate alınır. Örneğin, kalp atış hızı ölçümü hemen yapılır ancak adım sayısı belirli bir süre boyunca alınır.

Sağlık Platformu'ndaki merkezi nesnelere ve aralarındaki farklara göz atın:

  • RawData: Ölçüm ve veri kaydı.
  • DataType: Kalp atış hızı, vücut yağı veya vücut ısısı gibi yaygın sağlık ve fitness veri türleri ve bunların alanları, salt okunur veya isteğe bağlı gibi biçimleri için bir belirteç.
  • SampleData: Kalp atış hızı, kan basıncı veya koşu hızı gibi anlık ölçüm olan bir RawData nesnesi.
  • IntervalData: Atılan adım sayısı, kat edilen mesafe veya yakılan kalori gibi bir süre boyunca alınan kümülatif ölçüm olan bir RawData nesnesi.
  • SeriesData: Bir süre boyunca yapılan ölçümlerin sırasını kapsayan bir RawData nesnesi. SeriesData özellikle yüksek frekanslı sensör verileri (ör. etkinlik oturumu sırasındaki sürekli nabız örnekleri) için uygundur.

Üç RawData sınıfının her biri DataType'un belirli bir alt sınıfına karşılık gelir: SampleData, IntervalData ve SeriesData sırasıyla SampleDataType, IntervalDataType ve SeriesDataType'a karşılık gelir.

Her RawData nesnesine, Health Platform tarafından eklendiğinde benzersiz bir tanımlayıcı (UID) atanır. Okuma, güncelleme veya silme isteklerinde belirli bir RawData nesneyi referans olarak belirtmek için bu UID'yi kullanabilirsiniz.

Veri türleri

Health Platform, sağlık ve fitness uygulamalarında yaygın olarak kullanılan çok çeşitli veri türlerini içerir. Mevcut veri türleriyle depolanan veriler, kullanıcılara geçmiş sağlık, fitness ve sağlıklı yaşam verilerinin kapsamlı bir görünümünü sunarak günlük etkinlikleri hakkında bilgi verir.

Her veri türü, veri biçimiyle tanımlanır. Veri biçimi şunları içerir:

  • Alanlar: Veri türüyle ilişkili belirli veya genel alanlar. Örneğin, kandaki oksijen doygunluğu (SpO2) veri türü Başlık, Notlar ve Yüzde gibi alanlara sahiptir.
  • Tür: long, double, string veya enum.
  • Özellik: salt okunur, zorunlu, isteğe bağlı veya doğrulama aralığı.

Veri türlerinin listesi

Mevcut veri türlerini anlayarak Health Platform'dan en iyi şekilde yararlanın. Health Platform, aşağıdaki tabloda gösterilen veri türlerini destekler. Veri türleri, biçimlerine göre düzenlenir: örnek, aralık veya seri.

SampleData türleri:

DataType.BasalMetabolicRateDataType BASAL_METABOLIC_RATE Zorunlu
DataType.BloodGlucoseDataType BLOOD_GLUCOSE Zorunlu ve İsteğe Bağlı
DataType.BloodPressureDataType BLOOD_PRESSURE Zorunlu ve İsteğe Bağlı
DataType.BodyFatDataType BODY_FAT Zorunlu
DataType.BodyTemperatureDataType BODY_TEMPERATURE Zorunlu ve İsteğe Bağlı
DataType.BoneMassDataType BONE_MASS Zorunlu
DataType.CervicalMucusDataType CERVICAL_MUCUS İsteğe bağlı
DataType.CervicalPositionDataType CERVICAL_POSITION İsteğe bağlı
DataType.CyclingPedalingCadenceDataType CYCLING_PEDALING_CADENCE Zorunlu
DataType.DateOfBirthDataType DATE_OF_BIRTH Sadece Okunur
DataType.GenderDataType GENDER Sadece Okunur
DataType.HeartRateDataType HEART_RATE Zorunlu
DataType.HeightDataType HEIGHT Zorunlu
DataType.HipCircumferenceDataType HIP_CIRCUMFERENCE Zorunlu
DataType.HrvDifferentialIndexDataType HRV_DIFFERENTIAL_INDEX Zorunlu
DataType.HrvRmssdDataType HRV_RMSSD Zorunlu
DataType.HrvSDataType HRV_S Zorunlu
DataType.HrvSd2DataType HRV_SD2 Zorunlu
DataType.HrvSdannDataType HRV_SDANN Zorunlu
DataType.HrvSdnnDataType HRV_SDNN Zorunlu
DataType.HrvSdnnIndexDataType HRV_SDNN_INDEX Zorunlu
DataType.HrvSdnnIndexDataType HRV_SDNN_INDEX Zorunlu
DataType.HrvSdsdDataType HRV_SDSD Zorunlu
DataType.HrvTinnDataType HRV_TINN Zorunlu
DataType.LeanBodyMassDataType LEAN_BODY_MASS Zorunlu
DataType.LocationDataType LOCATION Zorunlu
DataType.MenstruationDataType MENSTRUATION İsteğe bağlı
DataType.OvulationTestDataType OVULATION_TEST Zorunlu
DataType.OxygenSaturationDataType OXYGEN_SATURATION Zorunlu
DataType.PaceDataType PACE Zorunlu
DataType.PowerDataType POWER Zorunlu
DataType.RespiratoryRateDataType RESPIRATORY_RATE Zorunlu
DataType.RestingHeartRateDataType RESTING_HEART_RATE Zorunlu
DataType.SexualActivityDataType SEXUAL_ACTIVITY Zorunlu
DataType.SpeedDataType SPEED Zorunlu
DataType.StepsCadenceDataType STEPS_CADENCE Zorunlu
DataType.Vo2MaxDataType VO2_MAX Zorunlu ve İsteğe Bağlı
DataType.WaistCircumferenceDataType WAIST_CIRCUMFERENCE Zorunlu
DataType.WeightDataType WEIGHT Zorunlu

IntervalData türleri:

DataType.ActiveEnergyDataType ACTIVE_ENERGY_BURNED Zorunlu
DataType.ActiveTimeDataType ACTIVE_TIME Sadece Okunur
DataType.ActivityEventDataType ACTIVITY_EVENT Zorunlu
DataType.ActivityLapDataType ACTIVITY_LAP İsteğe bağlı
DataType.ActivitySessionDataType ACTIVITY_SESSION Zorunlu
DataType.BasalEnergyDataType BASAL_ENERGY_BURNED Sadece Okunur
DataType.DistanceDataType DISTANCE Zorunlu
DataType.ElevationGainedDataType ELEVATION_GAINED Zorunlu
DataType.FloorsClimbedDataType FLOORS_CLIMBED Zorunlu
DataType.HydrationDataType HYDRATION Zorunlu
DataType.NutritionDataType NUTRITION İsteğe bağlı
DataType.RepetitionsDataType REPETITIONS Zorunlu
DataType.SleepSessionDataType SLEEP_SESSION İsteğe bağlı
DataType.SleepStageDataType SLEEP_STAGE Zorunlu
DataType.StepsDataType STEPS Zorunlu
DataType.SwimmingStrokesDataType SWIMMING_STROKES Zorunlu ve İsteğe Bağlı
DataType.TotalEnergyDataType TOTAL_ENERGY_BURNED Sadece Okunur

SeriesData türleri:

DataType.CyclingPedalingCadenceSeriesDataType CYCLING_PEDALING_CADENCE Zorunlu
DataType.HeartRateSeriesDataType HEART_RATE Zorunlu
DataType.LocationSeriesDataType LOCATION Zorunlu
DataType.PaceSeriesDataType PACE Zorunlu
DataType.PowerSeriesDataType POWER Zorunlu
DataType.SpeedSeriesDataType SPEED Zorunlu
DataType.StepsCadenceSeriesDataType STEPS_CADENCE Zorunlu

Geliştirici işlevleri

Aşağıda, Health Platform'da kullanılabilen standart veri işlevleri grubu açıklanmaktadır. Platform, ham veriler için standart ekleme, güncelleme ve silme işlevleri sağlar.

AggregatedData'yı okuma

Platform, istemcilerin aşağıdaki AggregatedData türleri üzerinde toplama işlevi uygulamasını sağlar:

  • StatisticalData: Bir SampleData veya SeriesData grubundaki ortalama, minimum ya da maksimum değerler (ör. bir etkinlik oturumundaki minimum ve maksimum kalp atış hızı).
  • CumulativeData: IntervalData değerlerinin toplamı (ör. günlük aralıktaki toplam adım sayısı).
  • CountData: Temel RawDataöğelerinin sayısının basit bir sayımı (ör. belirli bir haftadaki etkinlik oturumlarının sayısı). Sayım verileri örnek, aralık ve seri veri türleri için hesaplanabilir.

Health Platform API'ye bağlanma

HealthDataClient, Health Platform API'nin giriş noktasıdır.

Aşağıdaki adımlarda, Health Platform'a nasıl bağlanacağınız açıklanmaktadır:

  1. Yeni HealthDataClient örnekleri oluşturmak için HealthDataService.getClient simgesini kullanın.
  2. Ardından istemci uygulaması, requestPermissions (Set) yöntemini kullanarak kullanıcıdan izin istemelidir.

HealthDataClient, temel depolama katmanıyla olan bağlantısını otomatik olarak yönetir ve tüm İşlemler Arası İletişimi (IPC) ile giden isteklerin ve gelen yanıtların serileştirilmesini yönetir.