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'dir. Health Platform sayesinde kullanıcılar verilerinin kontrolüne sahip olur. Hangi uygulamaların farklı veri türlerine okuma veya yazma erişimine sahip olacağını kullanıcılar denetler. Health Platform API veri türleri arasında yükseklik, nabız ve daha fazlası yer alır.
Health Platform API, kullanıcılara kişisel sağlık, fitness ve sağlıklı yaşam verilerine hangi uygulamaların erişebileceğini ve bunları gösterebileceğini seçebilecekleri bir depolama ve paylaşım mekanizması sunar. Böylece uygulama geliştiriciler, kullanıcılara sağlık durumuyla ilgili daha kapsamlı bir görünüm sunar ve verilerini daha etkili bir şekilde izleyebilir.
Health Platform API yazılım geliştirme 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 ve uygulamaların veri ekleme, silme ve okuma gibi toplu işlemler 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ı daha sonra istediği zaman izinleri reddedebilir veya izinleri iptal edebilir.
- Health Platform API yalnızca belirli Samsung cihazları destekler.
HealthDataClient
, Health Platform istemcisi ve Sağlık Platformu'na bir giriş noktasıdır.
Geliştiricilerin uygulaması gereken entegrasyon adımları aşağıdaki resimde gösterilmektedir:
Dosyaları serbest bırak
Health Platform V1 sürümü şunları içerir:
- İstemci SDK'sı: Health Platform API'yi kullanmak için bu SDK'yı uygulamanıza ekleyin. SDK, doğrudan uygulama Gradle derleme dosyalarınıza ekleyebileceğiniz bir Maven deposudur.
Health Platform'u yükle
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 depoyu 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 bir bağımlılık ekleyin:
dependencies {
…
implementation 'com.google.android.libraries.healthdata:health-data-api:1.0.0-alpha01'
}
Veri
Health Platform, sağlık ve fitness verilerini depolayıp yapılandırır. Ayrıca, farklı türdeki verilerin ölçülme biçimleri arasındaki temel farklılıkları da dikkate alır. Örneğin, nabız ölçümü hemen yapılır ancak belirli bir sürede adım sayısı ölçülür.
Health Platform'daki ana nesneler ve aralarındaki farklar aşağıda açıklanmıştır:
RawData
: Ölçüm ve veri kaydı.DataType
: Nabız, vücut yağı veya vücut sıcaklığı gibi yaygın sağlık ve fitness verisi türleri ve bunların biçimleri (ör. alanlar, salt okunur veya isteğe bağlı) için tanımlayıcı.SampleData
: Nabız, tansiyon veya koşma hızı gibi anlık ölçüm olanRawData
nesnesi.IntervalData
: Atılan adım sayısı, gidilen mesafe veya yakılan kalori gibi belirli bir sürede alınan kümülatif ölçüm olan birRawData
nesnesi.SeriesData
: Belirli bir sürede bir ölçüm dizisi içerenRawData
nesnesi.SeriesData
özellikle etkinlik oturumu sırasında sürekli nabız örnekleri gibi yüksek frekanslı sensör verileri için uygundur.
Üç RawData
sınıfının her biri belirli bir DataType
alt sınıfına karşılık gelir: SampleData
, IntervalData
ve SeriesData
sırasıyla SampleDataType
, IntervalDataType
ve SeriesDataType
alt sınıfına karşılık gelir.
Eklendiğinde her RawData
nesnesine Health Platform tarafından benzersiz bir tanımlayıcı (UID) atanır. Bu UID'yi okuma, güncelleme veya silme isteklerinde belirli bir RawData
nesnesine referans vermek için kullanabilirsiniz.
Veri türleri
Health Platform, sağlık ve fitness uygulamalarında yaygın olarak kullanılan çok çeşitli veri türleri 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 aktiviteleri hakkında analizler sunar.
Her veri türü, aşağıdakileri içeren veri biçimine göre tanımlanır:
- Alanlar: Veri türüyle ilişkili özel veya genel alanlar. Örneğin, kan oksijen doygunluğu (SpO2) veri türünde Başlık, Notlar ve Yüzde gibi alanlar bulunur.
- Type: long, double, string veya enum.
- Özellik: Salt okunur, zorunlu, isteğe bağlı veya doğrulama aralığı.
Veri türleri 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ür:
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ür:
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ür:
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 sunar.
Birleştirilmiş Verileri Okuma
Platform, istemcilerin aşağıdaki AggregatedData
türleri üzerinden toplama işlevi uygulamasına olanak tanır:
StatisticalData
:SampleData
veyaSeriesData
grubundaki ortalama, minimum veya maksimum değerler (ör. bir aktivite oturumu sırasında minimum ve maksimum nabız).CumulativeData
:IntervalData
değerlerinin toplamıdır (örneğin, günlük bir aralıktaki toplam adım sayısı).CountData
: TemelRawData
nesnelerinin basit bir sayımı (ör. belirli bir haftadaki etkinlik oturumlarının sayısı). Sayı verileri örnek, aralık ve seri veri türleri için hesaplanabilir.
Health Platform API'ye bağlanma
HealthDataClient
, Health Platform API'ye giriş noktasıdır.
Aşağıdaki adımlarda Health Platform'a nasıl bağlanılacağı açıklanmaktadır:
- Yeni
HealthDataClient
örnekleri oluşturmak içinHealthDataService.getClient
kullanın. - 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 Süreçler Arası İletişimin (IPC) yanı sıra giden istekler ile gelen yanıtların serileştirilmesi işlemlerini gerçekleştirir.
Sizin için önerilenler
- Not: Bağlantı metni JavaScript kapalıyken gösterilir
- Aktif veriler ve egzersizler
- Pasif veri güncellemeleri
- Wear OS'te Jetpack Compose'u kullanma