Google Health API ile adım deneyimleri geliştirme

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:

Tablo: Google Health API Adımlar veri türleri
Veri türü Kullanılabilir
işlemler
Kapsam
Adımlar
dataType: steps
filter 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. Birleştirme işlemi, istenen güne ait 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 akışları birleştirerek tek bir uzlaştırılmış veri akışı döndürür.

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 kılavuzu'na bakı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ı: rollUp uç noktasını sorgulayın. windowSize parametresini kullanarak süreyi (ör. 1 dakika için 60s veya 1 saat için 3600s) belirtin. Adım verileri 1 dakikalık (60s) aralıklarla kaydedildiğinden windowSize değerini en az 60s olarak ayarlayın. Bir dakikadan kısa pencere boyutlarına (ör. 10s veya 30s) sahip istekler, dakika toplamlarını ayrı ayrı bölmez ve bir dakikanın tamamını ilk eşleşen alt pakete yerleştirir. Ayrıntılı bilgi 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 list uç 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 Filtre verileri kılavuzunun Veri kaynağı ailesine göre filtreleme bölümüne bakın.

Web kancaları kullanılarak anlık senkronizasyon

Yeni adım verileri içe aktarıldığında veya senkronize edildiğinde anlık 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ındaki kontrol panellerini dinamik olarak 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 atlayan bir kayıt döndürür.

Bu sayede aşağıdakiler 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.