Health Connect, sağlık ve fitness verilerini depolayıp yapılandırır. Ayrıca farklı veri türlerinin nasıl ölçüldüğünü de hesaba katar. Bu veri türleri arasında hemen alınan nabız ölçümleri, zaman içindeki adım sayısı ve oturumlarda alınan uyku verileri yer alır.
Uygulamanızın gereksinimlerini planlayabilmek için öncelikle Health Connect'in sunduğu veri türlerini ve izinleri anlamanız önemlidir. Bu nedenle, gereksinimlerinizi belirlemeden önce veri türlerinizi gözden geçirmeniz gerekir.
Veri türü kategorileri
Health Connect mümkün olduğunca fazla çeşitlilik sunmak için çoğu sağlık ve fitness uygulamasında kullanılan veri türlerini destekler. Health Connect, sağlık ve fitness verilerinin kapsamlı bir görünümünü ve depolama alanını sunmayı amaçlar. Bu veri türleri aşağıdaki kategorilere ayrılır:
- Etkinlik: Bu, kullanıcının gerçekleştirdiği herhangi bir etkinliği yakalar. Koşu, yüzme ve uyku gibi sağlık ve fitness aktivitelerini içerebilir.
- Vücut Ölçümü: Kullanıcının kilosu ve bazal metabolizma hızı gibi vücutla ilgili yaygın verileri yakalar.
- Âdet Döngüsü İzleme: Adet döngüsünü ve bir ovülasyon testinin ikili sonucu gibi ilgili veri noktalarını yakalar.
- Beslenme: Sıvı alımı ve beslenme verisi türlerini yakalar. İkincisi, kullanıcının tek bir içecekte ne kadar su tükettiğini gösterir. İkincisi kalori, şeker ve magnezyum gibi isteğe bağlı alanları içerir.
- Uyku: Kullanıcının uyku süresi ve türüyle ilgili aralık verilerini yakalar.
- Vitals: Kullanıcının genel sağlığıyla ilgili önemli bilgileri yakalar. Vücut sıcaklığı, kandaki glikoz, kan basıncı ve kandaki oksijen doygunluğu gibi verileri içerir.
Veri türü biçimi
Health Connect'teki veri türleri, Record
alt sınıfları olan nesnelerde depolanır.
Her veri türü için time
ve zoneOffset
gibi genel veya title
, count
ve percentage
gibi özel ilişkili alanlar bulunur.
Bazı alanlarda uzun, çift veya dize gibi basit türler kullanılırken, bazılarında numaralandırmalar ve Instant
ve ZoneOffset
gibi sınıflar gibi karmaşık türler kullanılır. Bu alanların özellikleri zorunlu veya isteğe bağlı olabilir. Bazı özellikler salt okunurdur ve bazı özellikler belirli bir değer aralığına sabitlenir.
Kullanılabilir veri türlerinin tam listesi ve alanları için Jetpack'teki sınıflara bakın.
Ek veri özellikleri
Health Connect API'deki veriler, aşağıdaki listede açıklanan meta veri özelliklerini de içerir:
- Health Connect kimliği: Her veri noktası, oluşturulduktan sonra benzersiz bir tanımlayıcı (UID) ile atanır. Bu özellik, standart okuma ve yazma işlemleri için kullanışlıdır. Daha ayrıntılı bilgi için Health Connect ID bölümünü inceleyin.
- Son değiştirilme zamanı: Bu, bir kaydın güncellemesine sahip olan son örneğin zaman damgasını işaretler. Kaydın ilk oluşturulduğunda veya her güncellemede otomatik olarak oluşturulur.
- Veri kaynağı: Health Connect, verilerin geldiği uygulamayla ilgili bilgileri depolar. Bu kaynak, oluşturulduktan sonra otomatik olarak eklenen kaynağın paket adını içerir.
- Cihaz: Health Connect, verilerin alındığı cihazla ilgili bilgileri depolar. Değeri manuel olarak sağladığınız cihazın üreticisini ve modelini içerir.
- İstemci kimliği: Health Connect, istemci uygulamalarının verilere kendi kimliklerini kullanarak başvurabilmesi için Client-ID sağlar. Bu da çakışmaların çözülmesine yardımcı olur ve senkronizasyonu kolaylaştırır. Bu bilgi kayda el ile sağlanır.
- Müşteri kaydı sürümü: Health Connect, veri senkronizasyonu sırasında değişiklikleri izlemeye yardımcı olmak için Client-ID ile birlikte sürüm oluşturma sunar. Bu bilgi kayda manuel olarak sağlanır.
- Kayıt yöntemi: Health Connect, verilerin nasıl kaydedildiğini anlamanıza yardımcı olur. Bu yöntemler arasında, verileri pasif (otomatik olarak) kaydeden uygulamalar ve kullanıcıların verileri aktif veya manuel olarak kaydetmesi yer alır.
Health Connect kimliği
Health Connect, yeni eklenen veri nesnelerine benzersiz tanımlayıcılar (UID) atar. Bu da veri nesnelerini tanımlayıp diğerlerinden ayırt eder. Health Connect kimlikleri, okuma ve yazma isteklerinde kullanışlıdır. Health Connect kimlikleri, istemci kimlikleriyle aynı değildir. Client-ID'leri istemci uygulaması atarken Health Connect yalnızca Health Connect kimliklerini atar.
Health Connect kimlikleriyle çalışırken aşağıdaki notları göz önünde bulundurun:
- Oturumların tek bir Health Connect kimliği vardır ancak oturumlardaki verilerin kendi Health Connect kimlikleri vardır.
- Health Connect kimlikleri bağlı veya zaman damgalarıyla ilişkili değildir.
- Bazı kullanım alanları, iş akışı sırasında belirli bir Health Connect kimliğinin depolanmasını gerektirebilir. Örneğin, az önce günlüğe kaydettiği veri girişini almak ve kullanıcıya göstermek için belirli bir kimlik gerekir.
Health Connect'te geçirilen süre
Health Connect'e yazılan tüm verilerin alt bölge ofseti bilgilerini belirtmesi gerekir. Alt bölge farkını belirtmek, uygulamaların verileri kendi saatlerinizde göstermek için okumasını sağlar. Sivil saat, yerel ve kullanıcı için alakalı olan zamandır, ancak Eşgüdümlü Evrensel Zaman'a (UTC) uygun olması gerekmez.
Nadir durumlarda alt bölge farkı kullanılamayabilir. Android 14'te (API Düzeyi 34) böyle bir durum yaşandığında Health Connect, alt bölge farkını cihazın sistem varsayılan saat dilimine göre ayarlar. Android 13 ve önceki sürümlerde (API Düzeyi 33 ve önceki sürümler) herhangi bir alt bölge ofseti bilgisi belirtmeden Health Connect'e veri yazabilirsiniz. Mümkün olduğunda bundan kaçınılmalıdır.
Saat ve bölge ayarı
Veri yazarken bölge ofseti bilgilerini belirtmek, Health Connect'te veri okurken saat dilimi bilgilerini sağlar. Ancak alt bölge farkının sağlanmaması gibi belirli durumlarda bunu yapamayabilir. Uygulamanızın her iki veri türünü de özel koşullarınıza uygun şekilde ele almaya hazır olması gerekir.
İzinler
Herhangi bir izin istemeden önce uygulamanızın bunları manifest dosyasında tanımlaması gerekir. Veri türlerinin ve izinlerinin tam eşlemesi için aşağıdaki tablolara bakın.
1.0.0-alpha10 ve sonraki sürümler için
Kayıt sınıfı türü | İzin beyanını okuma ve yazma |
---|---|
ActiveCaloriesBurned |
android.permission.health.READ_ACTIVE_CALORIES_BURNED
android.permission.health.WRITE_ACTIVE_CALORIES_BURNED |
BazalVücutSıcaklığı |
android.permission.health.READ_BASAL_BODY_TEMPERATURE
android.permission.health.WRITE_BASAL_BODY_TEMPERATURE |
BasalMetabolik Oranı |
android.permission.health.READ_BASAL_METABOLIC_RATE
android.permission.health.WRITE_BASAL_METABOLIC_RATE |
KanGlikoz |
android.permission.health.READ_BLOOD_GLUCOSE
android.permission.health.WRITE_BLOOD_GLUCOSE |
BloodPressure |
android.permission.health.READ_BLOOD_PRESSURE
android.permission.health.WRITE_BLOOD_PRESSURE |
Vücut Yağı |
android.permission.health.READ_BODY_FAT
android.permission.health.WRITE_BODY_FAT |
Vücut Isısı |
android.permission.health.READ_BODY_TEMPERATURE
android.permission.health.WRITE_BODY_TEMPERATURE |
Vücut Suyu Kütlesi |
android.permission.health.READ_BODY_WATER_MASS
android.permission.health.WRITE_BODY_WATER_MASS |
BoneMass |
android.permission.health.READ_BONE_MASS
android.permission.health.WRITE_BONE_MASS |
Servikal Mukus |
android.permission.health.READ_CERVICAL_MUCUS
android.permission.health.WRITE_CERVICAL_MUCUS |
Bisiklet Pedal Etme Hızı |
android.permission.health.READ_EXERCISE
android.permission.health.WRITE_EXERCISE |
Mesafe |
android.permission.health.READ_DISTANCE
android.permission.health.WRITE_DISTANCE |
Kazanılan Yükseklik |
android.permission.health.READ_ELEVATION_GAINED
android.permission.health.WRITE_ELEVATION_GAINED |
Egzersiz Seansı |
android.permission.health.READ_EXERCISE
android.permission.health.WRITE_EXERCISE |
Kat Çıkıldı |
android.permission.health.READ_FLOORS_CLIMBED
android.permission.health.WRITE_FLOORS_CLIMBED |
Nabız |
android.permission.health.READ_HEART_RATE
android.permission.health.WRITE_HEART_RATE |
KardiyoDeğişkenliğiRmssd |
android.permission.health.READ_HEART_RATE_VARIABILITY
android.permission.health.WRITE_HEART_RATE_VARIABILITY |
Yükseklik |
android.permission.health.READ_HEIGHT
android.permission.health.WRITE_HEIGHT |
Sıvılandırma |
android.permission.health.READ_HYDRATION
android.permission.health.WRITE_HYDRATION |
Dönemsel Kanama |
android.permission.health.READ_INTERMENSTRUAL_BLEEDING
android.permission.health.WRITE_INTERMENSTRUAL_BLEEDING |
LeanBodyMass |
android.permission.health.READ_LEAN_BODY_MASS
android.permission.health.WRITE_LEAN_BODY_MASS |
Menstrüasyon |
android.permission.health.READ_MENSTRUATION
android.permission.health.WRITE_MENSTRUATION |
MenstruationPeriod |
android.permission.health.READ_MENSTRUATION
android.permission.health.WRITE_MENSTRUATION |
Beslenme |
android.permission.health.READ_NUTRITION
android.permission.health.WRITE_NUTRITION |
OvülasyonTesti |
android.permission.health.READ_OVULATION_TEST
android.permission.health.WRITE_OVULATION_TEST |
Oksijen Doygunluğu |
android.permission.health.READ_OXYGEN_SATURATION
android.permission.health.WRITE_OXYGEN_SATURATION |
Güç |
android.permission.health.READ_POWER
android.permission.health.WRITE_POWER |
Solunum Hızı |
android.permission.health.READ_RESPIRATORY_RATE
android.permission.health.WRITE_RESPIRATORY_RATE |
Dinlenme Nabzı |
android.permission.health.READ_RESTING_HEART_RATE
android.permission.health.WRITE_RESTING_HEART_RATE |
Cinsellik |
android.permission.health.READ_SEXUAL_ACTIVITY
android.permission.health.WRITE_SEXUAL_ACTIVITY |
Uyku Seansı |
android.permission.health.READ_SLEEP
android.permission.health.WRITE_SLEEP |
Hız |
android.permission.health.READ_SPEED
android.permission.health.WRITE_SPEED |
Adım Adımları |
android.permission.health.READ_STEPS
android.permission.health.WRITE_STEPS |
Adımlar |
android.permission.health.READ_STEPS
android.permission.health.WRITE_STEPS |
Yakılan Toplam Kalori |
android.permission.health.READ_TOTAL_CALORIES_BURNED
android.permission.health.WRITE_TOTAL_CALORIES_BURNED |
Vo2Max |
android.permission.health.READ_VO2_MAX
android.permission.health.WRITE_VO2_MAX |
Ağırlık |
android.permission.health.READ_WEIGHT
android.permission.health.WRITE_WEIGHT |
Tekerlekli Sandalye İtme Aparatları |
android.permission.health.READ_WHEELCHAIR_PUSHES
android.permission.health.WRITE_WHEELCHAIR_PUSHES |
1.0.0-alpha09 ve önceki sürümler için
Kayıt sınıfı türü | İzin beyanını okuma ve yazma |
---|---|
ActiveCaloriesBurned |
androidx.health.permission.ActiveCaloriesBurned.READ
androidx.health.permission.ActiveCaloriesBurned.WRITE |
BazalVücutSıcaklığı |
androidx.health.permission.BasalBodyTemperature.READ
androidx.health.permission.BasalBodyTemperature.YAZMA |
BasalMetabolik Oranı |
androidx.health.permission.BasalMetabolicRate.READ
androidx.health.permission.BasalMetabolicRate.WRITE |
KanGlikoz |
androidx.health.permission.BloodGlucose.READ
androidx.health.permission.BloodGlucose.YAZ |
BloodPressure |
androidx.health.permission.BloodPressure.READ
androidx.health.permission.BloodPressure.WRITE |
Vücut Yağı |
androidx.health.permission.BodyFat.READ
androidx.health.permission.BodyFat.WRITE |
Vücut Isısı |
androidx.health.permission.BodyTemperature.READ
androidx.health.permission.BodyTemperature.YAZMA |
Vücut Suyu Kütlesi |
androidx.health.permission.BodyWaterMass.READ
androidx.health.permission.BodyWaterMass.WRITE |
BoneMass |
androidx.health.permission.BoneMass.READ
androidx.health.permission.BoneMass.WRITE |
Servikal Mukus |
androidx.health.permission.CervicalMucus.READ
androidx.health.permission.CervicalMucus.WRITE |
Bisiklet Pedal Etme Hızı |
androidx.health.permission.CyclingPedalingCadence.READ
androidx.health.permission.CyclingPedalingCadence.YAZ |
Mesafe |
androidx.health.permission.Distance.READ
androidx.health.permission.Mesafe.YAZMA |
Kazanılan Yükseklik |
androidx.health.permission.ElevationGained.READ
androidx.health.permission.ElevationGained.WRITE |
Egzersiz Seansı |
androidx.health.permission.ExerciseSession.READ
androidx.health.permission.ExerciseSession.YAZ |
Kat Çıkıldı |
androidx.health.permission.FloorsClimbed.READ
androidx.health.permission.FloorsClimbed.YAZ |
Nabız |
androidx.health.permission.HeartRate.READ
androidx.health.permission.HeartRate.WRITE |
KardiyoDeğişkenliğiRmssd |
androidx.health.permission.HeartRateVariabilityRmssd.READ
androidx.health.permission.HeartRateVariabilityRmssd.WRITE |
Yükseklik |
androidx.health.permission.Height.READ
androidx.health.permission.Height.WRITE |
Sıvılandırma |
androidx.health.permission.Hydration.READ
androidx.health.permission.Hydration.YAZ |
Dönemsel Kanama |
androidx.health.permission.IntermenstrualBleeding.READ
androidx.health.permission.IntermenstrualBleeding.YAZMA |
LeanBodyMass |
androidx.health.permission.LeanBodyMass.READ
androidx.health.permission.LeanBodyMass.WRITE |
Menstrüasyon |
androidx.health.permission.MenstruationFlow.READ
androidx.health.permission.MenstruationFlow.YAZ |
Beslenme |
androidx.health.permission.Nutrition.READ
androidx.health.permission.Nutrition.WRITE |
OvülasyonTesti |
androidx.health.permission.OvulationTest.READ
androidx.health.permission.OvulationTest.YAZ |
Oksijen Doygunluğu |
androidx.health.permission.OxygenSaturation.READ
androidx.health.permission.OxygenSaturation.YAZ |
Güç |
androidx.health.permission.Power.READ
androidx.health.permission.Power.WRITE |
Solunum Hızı |
androidx.health.permission.RespiratoryRate.READ
androidx.health.permission.RespiratoryRate.WRITE |
Dinlenme Nabzı |
androidx.health.permission.RestingHeartRate.READ
androidx.health.permission.RestingHeartRate.WRITE |
Cinsellik |
androidx.health.permission.GenderActivity.READ
androidx.health.permission.GenderActivity.WRITE |
Uyku Seansı |
androidx.health.permission.SleepSession.READ
androidx.health.permission.SleepSession.WRITE |
Hız |
androidx.health.permission.Speed.READ
androidx.health.permission.Speed.WRITE |
Adım Adımları |
androidx.health.permission.StepsCadence.READ
androidx.health.permission.StepsCadence.YAZ |
Adımlar |
androidx.health.permission.Steps.READ
androidx.health.permission.Steps.WRITE |
Yakılan Toplam Kalori |
androidx.health.permission.TotalCaloriesBurned.READ
androidx.health.permission.TotalCaloriesBurned.WRITE |
Vo2Max |
androidx.health.permission.Vo2Max.READ
androidx.health.permission.Vo2Max.WRITE |
Ağırlık |
androidx.health.permission.weight.READ
androidx.health.permission.weight.WRITE |
Tekerlekli Sandalye İtme Aparatları |
androidx.health.permission.WheelchairPushes.READ
androidx.health.permission.WheelchairPushes.YAZ |
Veri türlerinizi ve izinlerinizi inceleme
Veri türlerinizi ve izinlerinizi planladığınıza göre bunları geliştirme sırasında uygulayabilirsiniz.
Uygulamanızı Play Store'a yüklemeden önce incelerken, uygulamanızın gerektirdiği veri türleri ve izinlerin listesini bir kez daha kontrol edin. Bu şekilde, uygulamanızın veri kullanımını doğru beyan edebilirsiniz.
Uygulamanızı Play Store'da yayınladıktan sonra, özel onay gerektirdiği için uygulamanızın Health Connect veri türlerine erişemediğini belirten bir hata mesajı alabilirsiniz. Bu durumda, Geliştirici Beyan Formu aracılığıyla veri türü erişimi için istekte bulunmanız gerekir. Bu işlem hakkında daha fazla bilgi edinmek için Health Connect veri türlerine erişim isteme başlıklı makaleyi inceleyin.