Health Platform API, geliştiricilere kullanıcının geçmiş sağlık, zindelik ve fitness verilerini okuma, yazma ve paylaşma için tek bir arayüz sağlayan bir Android API'sidir. Sağlık Platformu ile kullanıcılar verilerini kontrol edebilir. Kullanıcılar, farklı veri türlerine hangi uygulamaların okuma veya yazma erişimine sahip olacağını kontrol eder. Sağlık Platform API veri türleri arasında boy, kalp atış hı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 bu verileri hangi uygulamaların gösterebileceğ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ştirme kiti, Android uygulama geliştiricilere belirli Samsung cihazlarda kullanıcının sağlık ve zindelik verilerine erişim sağlamak için ihtiyaç duydukları her şeyi sunar. Ayrıca uygulamaların veri ekleme, silme ve okuma gibi toplu işlemler gerçekleştirmesine olanak tanır.
Başlayın
Sağlık Platformu'nu 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 herhangi bir zamanda iptal edebilir.
- Sağlık Platformu API'si yalnızca belirli Samsung cihazları destekler.
HealthDataClient, Health Platform'un istemcisidir ve Health Platform'a giriş noktasıdır.
Aşağıdaki resimde, geliştiricilerin uygulaması gereken gerekli entegrasyon adımları gösterilmektedir:
Yayın dosyaları
Health Platform V1 sürümü şunları içerir:
- Client SDK: Health Platform API'yi kullanmak için bu SDK'yı uygulamanıza ekleyin. SDK, uygulamanızın Gradle derleme dosyalarına doğrudan ekleyebileceğiniz bir Maven deposudur.
Sağlık Platformu'nu yükleme
Aşağıdaki adımları uygulayarak Health Platform'u yükleyin:
Uygulamanın kök build.gradle dosyasında, aşağıdaki örnekte gösterildiği gibi depoyu ekleyin:
allprojects {
. . .
repositories {
. . .
google()
}
}
Modülünüzün build.gradle dosyasında Health Platform SDK'ya bağımlılık ekleyin. Aşağıdaki örnekte bu işlem gösterilmektedir:
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
Sağlık Platformu, sağlık ve fitness verilerini depolayıp yapılandırır. Ayrıca, farklı türlerdeki verilerin ölçülme şekilleri arasındaki temel farkları da dikkate alır. Örneğin, kalp atış hızı ölçümü anında yapılırken adım sayısı belirli bir süre boyunca alınır.
Sağlık Platformu'ndaki temel nesneler ve aralarındaki farklar aşağıda açıklanmıştır:
RawData: Ölçüm ve veri kaydı.DataType: Kalp atış hızı, vücut yağı veya vücut sıcaklığı gibi yaygın sağlık ve fitness verilerinin ve bunların biçimlerinin (ör. alanlar, salt okunur veya isteğe bağlı) belirleyicisi.SampleData: Kalp atış hızı, kan basıncı veya koşu hızı gibi anlık ölçüm olan birRawDatanesnesi.IntervalData: Belirli bir süre boyunca yapılan kümülatif ölçümler olanRawDatanesnesi (ör. atılan adım sayısı, gidilen mesafe veya yakılan kalori).SeriesData: Belirli bir süre boyunca yapılan ölçümler dizisini kapsayan birRawDatanesnesi.SeriesDataözellikle bir aktivite 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 DataType sınıfının belirli bir alt sınıfına karşılık gelir: SampleData, IntervalData ve SeriesData sırasıyla SampleDataType, IntervalDataType ve SeriesDataType sınıflarına karşılık gelir.
Her RawData nesnesine, eklendiğinde Health Platform tarafından benzersiz bir tanımlayıcı (UID) atanır. Bu UID'yi, okuma, güncelleme veya silme isteklerinde belirli bir RawData
nesneye referans vermek için kullanabilirsiniz.
Veri türleri
Sağlık Platformu, sağlık ve fitness uygulamalarında yaygın olarak kullanılan çok çeşitli veri türlerini içerir. Kullanılabilir veri türleriyle depolanan veriler, kullanıcılara geçmiş sağlık, fitness ve sağlıklı yaşam verileri hakkında kapsamlı bir görünüm sunarak günlük aktiviteleri 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ünde Başlık, Notlar ve Yüzde gibi alanlar bulunur.
- Tür: long, double, string veya enum.
- Özellik: Salt okunur, zorunlu, isteğe bağlı veya doğrulama aralığı.
Veri türlerinin listesi
Kullanılabilir veri türlerini anlayarak Health Platform'dan en iyi şekilde yararlanın. Sağlık Platformu, aşağıdaki tabloda gösterilen veri türlerini destekler. Veri türleri, biçimlerine göre (örnek, aralık veya seri) düzenlenir.
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 açıklanmaktadır. Platform, ham veriler için standart ekleme, güncelleme ve silme işlevleri sunar.
Read AggregatedData
Platform, müşterilerin aşağıdaki AggregatedData türleri üzerinde toplama işlevi uygulamasına olanak tanır:
StatisticalData:SampleDataveyaSeriesDatakümesindeki ortalama, minimum ya da maksimum değerler (ör. bir aktivite oturumu sırasındaki minimum ve maksimum kalp atış hızı).CumulativeData: Günlük aralıktaki toplam adım sayısı gibiIntervalDatadeğerlerinin toplamı.CountData: Belirli bir haftadaki etkinlik oturumlarının sayısı gibi temelRawDatanesnelerin sayısının basit bir şekilde hesaplanması. Sayım verileri; örnek, aralık ve seri veri türleri için hesaplanabilir.
Sağlık Platformu API'sine bağlanma
HealthDataClient, Health Platform API'nin 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.getClientsimgesini kullanın. - Ardından, istemci uygulaması
requestPermissions (Set)yöntemini kullanarak kullanıcıdan izin istemelidir.
HealthDataClient, temel depolama katmanıyla bağlantısını otomatik olarak yönetir ve tüm süreçler arası iletişimi (IPC) ve giden isteklerin ve gelen yanıtların serileştirilmesini işler.
Sizin için önerilenler
- Not: Bağlantı metni, JavaScript kapalıyken gösterilir.
- Etkin veriler ve alıştırmalar
- Pasif veri güncellemeleri
- Wear OS'te Jetpack Compose'u kullanma