Google Health API, steps
aralık veri türünü kullanarak kullanıcı adımlarını ve etkinlik verilerini izler. Adım sayısı, günlük fiziksel aktivitenin temel bir ölçüsünü temsil eder. Geliştiricilerin fitness ilerlemesini izlemesine, enerji harcamasını hesaplamasına ve kullanıcıya yönelik günlük aktivite özetleri oluşturmasına yardımcı olur.
Kullanıcılarınıza en iyi deneyimi sunmak için uygulamanızdaki adım sayısı metriklerini nasıl okuyup yapılandıracağınızı öğrenin.
Desteklenen veri türleri
API, adım sayısını izlemek için aşağıdaki veri türünü destekler:
| Veri türü | Kullanılabilir işlemler |
Kapsam |
|---|---|---|
|
Adımlar
dataType:
stepsfilter parameter: steps
Kayıt türü: Aralık
Depolama çözünürlüğü: 1 dakika
Uyumlu cihazlar
|
list, reconcile, rollup, dailyRollup | .activity_and_fitness.readonly.activity_and_fitness.writeonly |
Yönergeler
Adım izlemeyi uygulamanıza entegre ederken aşağıdaki tasarım ve uygulama yönergelerini uygulayın.
Hız ve tempo hesaplama
Google Health API, hızı ve tempoyu hesaplamak için standart formüller kullanır:
- Hız =
distance / time(hour) - Tempo =
time(seconds) / distance
İstekte belirtilen Accept-Language başlığı, mesafe birimini belirler.
Günlük özet
Seyahat, saat dilimi değişiklikleri veya yaz saati uygulaması sırasında günlük adım sayılarını doğru şekilde toplamak için istemci tarafında süre hesaplamaları yapmayın. Bunun yerine, UTC farklarını kullanarak fiziksel veri boşluklarını otomatik olarak uzlaştıran dailyRollUp uç noktasını sorgulayın. Toplama işlemi, istenen gün için toplam birikmiş adımları temsil eden countSum alanını içeren bir StepsRollupValue döndürür.
Kullanıcı arayüzlerini çizme (Mutabakat)
Adım verilerini göstermek için kullanıcı arayüzü öğeleri oluştururken reconcile
uç noktasını kullanın. Birden fazla veri kaynağı (ör. akıllı saat ve cep telefonu) aynı anda adım kaydettiyse reconcile uç noktası çakışmaları giderir ve tek bir uzlaştırılmış veri akışı döndürmek için akışları birleştirir.
Bağlı cihaz senkronizasyonlarından gelen çakışan aralıkları ve zaman damgası değişkenliğini işleme hakkında bilgi edinmek için Veri yönetimi rehberine göz atın.
Gün içi izleme ve histogramlar
Gün boyunca ayrıntılı kullanıcı etkinliğini (ör. çizelgeler ve grafikler) görüntülemek için:
- Saatlik veya dakikalık adım histogramları:
rollUpuç noktasını sorgulayın.windowSizeparametresini kullanarak süreyi (ör. 1 dakika için60sveya 1 saat için3600s) belirtin. Adım verileri 1 dakikalık (60s) aralıklarla kaydedildiğindenwindowSizedeğerini en az60solarak ayarlayın. Bir dakikadan kısa pencere boyutlarına (ör.10sveya30s) sahip istekler, tek tek dakika toplamlarını bölmez ve tam dakikanın sayısını ilk eşleşen alt pakete yerleştirir. Ayrıntılar için Toplama penceresi boyutu ve temel depolama çözünürlüğü başlıklı makaleyi inceleyin. - Tüm adım kayıtları: En ayrıntılı ve işlenmemiş adım kayıtlarını getirmek için
listuç noktasını kullanın.
rollUp, dailyRollUp ve reconcile uç noktaları, dataSourceFamily parametresini kabul eder. Bu sayede, belirli kaynak gruplarından gelen verileri filtreleyebilirsiniz. Daha fazla ayrıntı ve kullanım örneği için Filtreleme verileri kılavuzunun Veri kaynağı ailesine göre filtreleme bölümüne bakın.
Webhook'ları kullanarak anlık senkronizasyon
Yeni adım verileri içe aktarıldığında veya senkronize edildiğinde anında bildirim almak için steps veri türü koleksiyonuna abone olun. REST uç noktalarını yoklamak yerine, bu webhook bildirimlerine yanıt olarak istemci tarafı kontrol panellerini dinamik bir şekilde güncelleyin. Abonelikleri ayarlama hakkında ayrıntılı bilgi için Webhook abonelikleri başlıklı makaleyi inceleyin.
Gerçek sıfırları işleme
Google Health API, hareketsiz aralıkları çözmek için gerçek sıfırları uygular. Bir kullanıcı belirli bir dönemde takip cihazı takıyor ancak yürümüyorsa API, normal veri kaynağını ve zaman damgası meta verilerini içeren ancak count özelliğini içermeyen bir kayıt döndürür.
Bu sayede şunlar arasında ayrım yapabilirsiniz:
- Bilekte hareketsiz kalma süreleri: Kullanıcı cihazı takıyor ancak yürümüyor. Bu,
countözelliği olmayan kayıtları (sıfır adım olarak yorumlanır) döndürür. - Bilekte olmadığı dönemler: Kullanıcı cihazı takmıyordur. Bu durumda kayıt döndürülmez ve büyük veri boşlukları oluşur.
Daha fazla bilgi için Veri varlığı ve gerçek sıfırlar kılavuzuna bakın.