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 belirli alanlar bulunur.
Bazı alanlar uzun, çift veya dize gibi temel türleri kullanırken bazıları da numaralandırmalar ve Instant ve ZoneOffset gibi sınıflar gibi karmaşık türleri kullanır. Bu alanların özellikleri zorunlu veya isteğe bağlı olabilir. Bazı özellikler salt okunur, bazı özellikler ise belirli bir değer aralığıyla sınırlandırılmıştır.
Kullanılabilir veri türlerinin ve alanlarının tam listesi için Jetpack'teki sınıflara bakın.
Meta 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ına, oluşturulurken benzersiz bir tanımlayıcı (UID) atanır. Bu, standart okuma ve yazma işlemleri için yararlıdır. Daha fazla bilgi için Health Connect kimliği başlıklı makaleyi inceleyin.
- Son değiştirilme zamanı: Bir kaydın son güncelleme zaman damgasını gösterir. Kayıt ilk oluşturulduğunda veya her güncellemede otomatik olarak oluşturulur.
- Veri kaynağı: Health Connect, verilerin geldiği uygulama hakkındaki bilgileri depolar. Bu kaynak için paket adını içerir. Paket adı, oluşturma sırasında otomatik olarak eklenir.
- Cihaz: Health Connect, verilerin geldiği cihazla ilgili bilgileri saklar. Yalnızca cihaz türü zorunludur. Diğer tüm alanlar (üretici, model, görünen ad ve benzersiz cihaz tanımlayıcısı (UDI)) isteğe bağlıdır.
- İstemci kimliği: Health Connect, istemci uygulamalarının kendi kimliklerini kullanarak verilere başvurabilmesi için istemci kimlikleri sağlar. Bu, çakışma çözümüne yardımcı olur ve senkronizasyonu kolaylaştırır. Bu, kayda manuel olarak sağlanır.
- İstemci kaydı sürümü: Health Connect, istemci kimliğinin yanı sıra veri senkronizasyonu sırasında değişikliklerin izlenmesine yardımcı olmak için sürüm oluşturma özelliği de sunar. Bu, kayda manuel olarak sağlanır.
- Kayıt yöntemi: Health Connect, verilerin nasıl kaydedildiğini anlamanıza olanak tanır. Bu yöntemler arasında verileri pasif olarak (otomatik olarak) kaydeden uygulamalar ve verileri aktif olarak veya manuel olarak kaydeden kullanıcılar yer alır.
Health Connect kimliği
Health Connect, yeni eklenen veri nesnelerine, veri nesnelerini tanımlayan ve diğerlerinden ayıran benzersiz tanımlayıcılar (UID) atar. Health Connect kimlikleri, okuma veya yazma isteklerinde faydalıdır. Health Connect kimlikleri, müşteri kimlikleriyle aynı değildir. İstemci uygulaması, istemci kimlikleri atarken Health Connect yalnızca Health Connect kimlikleri 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, zaman damgalarıyla bağlı veya ilişkili değildir.
- Bazı kullanım alanlarında, iş akışı sırasında belirli bir Health Connect kimliğinin saklanması gerekebilir. Örneğin, kullanıcının yeni kaydettiği veri girişini alıp 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 verilerde saat dilimi farkı bilgisi belirtilmelidir. Bölge farkının belirtilmesi, uygulamaların verileri okuyarak yerel saatte göstermesini sağlar. Sivil saat, kullanıcının bulunduğu yere göre belirlenen ve kullanıcı için geçerli olan saattir ancak Eşgüdümlü Evrensel Zaman (UTC) ile aynı olması gerekmez.
Nadir durumlarda, saat dilimi farkı kullanılamayabilir. Bu durum Android 14'te (API düzeyi 34) gerçekleştiğinde Health Connect, saat dilimi 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 saat dilimi farkı bilgisi belirtmeden Health Connect'e yazmak mümkündür. Bu durum mümkün olduğunda önlenmelidir.
Saat ve saat dilimi ayarı
Veri yazarken bölge saat farkı bilgilerini belirtmek, Health Connect'te veri okurken saat dilimi bilgisi sağlar. Ancak, saat dilimi farkı sağlanmadığında olduğu gibi belirli durumlarda bunu yapamayabilir. Uygulamanız, her iki veri türüyle de özel durumunuza uygun şekilde başa çıkmaya hazır olmalıdır.