Oturum

Oturumlar, kullanıcıların gerçekleştirdikleri tüm temel etkinliklerin listesini hızlı ve kolay bir şekilde görmelerini sağlar. Google Fit uygulamasının günlük sayfasında gösterilir. Örneğin, nefes egzersizi, yürüyüş, koşu veya gece uykusu birer oturum örneğidir.

Oturumlar, belirli bir zaman aralığındaki ve bir etkinlik sırasında toplanan veri kümelerini gruplandırır. Örneğin, bir kullanıcı 3 km'lik koşuya başladığı ve bitirdiği zamanı takip ettiyse bir oturum oluşturulabilir ve bu süre içindeki tüm fitness verileri (ör. adım sayısı, hız, mesafe) bu oturumla ilişkilendirilir.

Oturumların kendisi etkinlik hakkında ayrıntılar içermez. Bu, veri kümesinde yer alır. Oturumlar aşağıdaki özelliklere sahiptir:

  • Açıklayıcı ve kolay anlaşılır bir ad (örneğin, "sabah koşusu")
  • Bir açıklama
  • Benzersiz tanımlayıcı
  • Yakalanan etkinliğin türü (ör. koşu)

Oturumları kullanmanın avantajları

  • Kullanıcılar için faydalıdır: Oturumlar, etkinlik verilerini ve antrenmanları kullanıcılar için anlamlı bir şekilde düzenlemenize yardımcı olur. Gün içindeki tüm aktivitelerini Google Fit uygulamasındaki Günlük sayfasında görebilirler.
  • Tutarlı kullanıcı deneyimi: Uygulamanız veya yardımcı cihazınız etkinlik takibine (kullanıcıların bir etkinliği başlatıp durdurabildiği) izin veriyorsa bu antrenmanlar için oturum oluşturmak, kullanıcıların etkinliklerini her iki uygulamada da görmelerini sağlar.
  • Daha eksiksiz veriler: Google Fit, oturum bilgilerinizi tamamlamak ve zenginleştirmek için birden fazla kaynaktan gelen verileri de birleştirir. Bu sayede kullanıcılar etkinlikleri hakkında daha kapsamlı bilgiler edinebilir.
  • Google Fit platformundan yararlanın: Kullanıcılarınız aktivitelerini izlemiyorsa veya uygulamanız izlemeyi desteklemiyorsa Google Fit'teki oturumları yine de okuyabilirsiniz. Fitness mağazasından ayrıntılı veya toplu verileri sorgulayabilir ve kendi şemanızı ve depolama alanınızı uygulamanıza gerek kalmadan mevcut oturumları bulabilirsiniz.
  • Daha fazla kullanıcı etkileşimi: Kullanıcılarınıza mevcut oturumları ve bunları oluşturan uygulamaları gösterebilirsiniz. Diğer fitness uygulamalarıyla bu şekilde etkileşim kurmak, kullanıcı etkileşiminizi artırabilir.

Oturumlar için kullanıcı yetkilendirmesi alma

Oturumları okumak veya yazmak istiyorsanız uygulamanız kullanıcının iznini almalıdır. Oturumlara erişim, veri türleriyle aynı yetkilendirme kapsamlarını kullanır. Bu kapsamları aşağıdaki şekilde istemeniz gerekir:

Android

FitnessOptions içindeki uygun yöntemleri kullanarak uygulamanızın hangi tür oturuma erişmesi gerektiğini belirtin. Örneğin, koşuyla ilgili seansları okumak için şunları seçebilirsiniz:

    val fitnessOptions = FitnessOptions.builder()
        .accessActivitySessions(FitnessOptions.ACCESS_READ)
        .addDataType(DataType.TYPE_HEART_RATE_BPM, FitnessOptions.ACCESS_READ)
        .addDataType(DataType.TYPE_SPEED, FitnessOptions.ACCESS_READ)
        .addDataType(DataType.TYPE_LOCATION_SAMPLE, FitnessOptions.ACCESS_READ)
        .build()

Bu örnekte, uygulamanızın aktivite seansı meta verilerine erişmek istediği ve bu seanslarda okumak istediği veri türleri belirtiliyor. Bu örnekte nabız, hız ve konum veri türleri kullanılıyor.

REST

İstek kapsamları aşağıdaki gibidir:

  • Uyku etkinliği türleri içeren oturumlar:
    • https://www.googleapis.com/auth/fitness.sleep.read
    • https://www.googleapis.com/auth/fitness.sleep.write
  • Diğer tüm oturumlar:
    • https://www.googleapis.com/auth/fitness.activity.read
    • https://www.googleapis.com/auth/fitness.activity.write

Oturumları kullanma

Android

Oturum API'sini kullanarak:

  • Gerçek zamanlı oturumlar oluşturma
  • Fitness mağazasına oturum ekleme
  • Antrenman sırasında duraklamaları desteklemek için aktivite segmentleri ekleme
  • Oturumları ve bunlarla ilişkili veri kümelerini okuma
  • Oluşturduğu bir oturumla ilgili bilgileri göstermek için başka bir uygulama başlatma
  • Başka bir uygulama oturum başlattığında bir intent alma

REST

Oturum API'sini kullanarak:

  • Gerçek zamanlı oturumlar oluşturma
  • Fitness mağazasına oturum ekleme
  • Antrenman sırasında duraklamaları desteklemek için aktivite segmentleri ekleme
  • Oturumları ve bunlarla ilişkili veri kümelerini okuma

Veri kümeleri ve segmentler oturumlarla nasıl etkileşime girer?

Google Fit'te:

  • Veri kümesi, belirli bir veri kaynağındaki veri noktaları kümesini belirli bir süre boyunca temsil eder. Veri kümeleri tek başlarına eklenebilir. Ancak oturum oluşturuyorsanız oturumu ve veri kümelerini birlikte oluşturmak daha kolay olabilir.
  • Segment, bir oturumdaki veri kümelerini kullanıcının oturumda yaptığı etkinliğe göre gruplandırır. Örneğin, kullanıcı 30 dakikalık bir koşuyu (oturum) takip ederken bu süre içinde biraz yürürse bu oturum segmentlere ayrılabilir. Koşu, yürüyüş molası ve tekrar koşu için ayrı segmentler olurdu.
Şekil 1: Farklı uygulamalar, [fitness deposuna] oturumlar ve veri kümeleri ekler.

Şekil 1'de, A, B ve C uygulamalarının bazı veri kümeleri ve oturumlar eklediği fitness mağazasındaki bir zaman aralığı gösterilmektedir:

  • A uygulaması, A1 ve A2 veri kümelerini 1. Oturum ile birlikte, A3 veri kümesini ise oturumlardan bağımsız olarak ekledi.
  • B uygulaması, B1 ve B2 veri kümelerini 2. Oturum ile birlikte ekledi.
  • C uygulaması, C1 veri kümesini oturumlardan bağımsız olarak ekledi.

Fitness mağazasından oturum verileri okunurken, oturumun zaman aralığına giren tüm fitness verileri, oturum oluşturulduktan sonra verileri ekleseniz veya veriler pasif olarak izlendikten sonra oturum oluştursanız bile otomatik olarak bu oturumla ilişkilendirilir. Örneğin, 1. Oturum'daki fitness verileriyle ilgili bir sorgu şu sonucu döndürür:

  • Veri kümesi A1
  • A2 veri kümesi
  • A3 veri kümesinin t1 ile t2 arasındaki bölümü
  • C1 veri kümesinin t1 ile t2 arasındaki bölümü

Her oturumu ve veri kümesini hangi uygulamanın eklediğini görebilirsiniz.

Oturum oluşturma

Oturumlar birkaç farklı şekilde oluşturulabilir:

  • Uygulamanız,
    • Bir kullanıcı bir cihazdaki etkinliği etkin olarak izlediğinde (yalnızca Android) gerçek zamanlı olarak veya
    • Manuel olarak ekleyerek
  • Kullanıcı Google Fit uygulamasına manuel olarak antrenman veya aktivite eklediğinde

Ne zaman oturum oluşturulur?

Uyku verisi mi ekliyorsunuz?

  • Evet: Bir oturum oluşturun ve bunu manuel olarak fitness mağazasına ekleyin. Örneğin, uyku oturumu ekleme. Bunun nedeni, uyku izleme uygulamaları veya cihazları olan kullanıcıların uyku etkinliğini başlatmak ve durdurmak için cihazlarla etkileşimde bulunmamasıdır (uyku etkinliği pasif olarak izlenir).
  • Hayır: Uygulamanız, kullanıcıların etkinlikleri başlatıp durdurmasına izin veriyor mu?
    • Hayır: Oturum oluşturulmaz. Yalnızca uygulamanızdaki veri kümelerini ekleyin.
    • Evet: Android API ile, kullanıcılar etkinliklerini izliyorsa gerçek zamanlı olarak veya manuel olarak oturum oluşturun. REST API ile bir oturum oluşturun ve bunu manuel olarak fitness mağazasına ekleyin.
    • Uygulamanız, kullanıcıların farklı aktiviteleri daha ayrıntılı bir düzeyde (ör. yürüme ve koşma) yaptığını algılayabiliyor mu?
      • Evet: Segment ekleyin.
      • Hayır: Yalnızca veri kümeleri ekleyin. Şimdilik segmentleri yoksayın ve Google Fit'in bunları pasif olarak oluşturmasına izin verin.

Okuma oturumları

Uygulamanız oturumları birkaç şekilde okuyabilir:

  • Oluşturduğu/eklediği belirli bir oturumu arayın.
    • Ad veya
    • Kimlik
  • Oluşturduğu/eklediği tüm oturumları zaman aralığına göre arayın.
  • Tüm uygulamalar (Google Fit dahil) tarafından oluşturulan tüm mevcut oturumları zaman aralığına göre arama

Hangi kaynakların oturum oluşturduğunu öğrenme

Kullanıcılarınıza, oturumlarının her birini hangi uygulama veya cihazın oluşturduğunu gösterebilirsiniz. Her oturumun ilişkili bir veri kaynağı vardır. Bu veri kaynağında, verileri toplayan veya dönüştüren uygulama ya da cihaz hakkında bilgiler bulunur.

Android

Şu anda yalnızca bir Android istemcisi tarafından yazılan oturumun paket adını alabilirsiniz. Bir oturum oluşturan uygulamanın paket adını almak için getAppPackageName yöntemini kullanın. Bu bilgileri uygulamanızda kullanarak kullanıcılara hangi uygulamaların fitness oturumları eklediğini gösterebilirsiniz. Kullanıcıların bu uygulamaları tanımlamasına yardımcı olmak için her bir uygulamanın simgesini gösterebilirsiniz.

Oluşturdukları oturumların ayrıntılarını göstermek için diğer uygulamaları başlatmak üzere bir amaç da tetikleyebilirsiniz. Diğer uygulamalar da uygulamanızı başlatmak için niyet tetikleyebilir.

Oturum oluşturan kaynağı bulma hakkında daha fazla bilgi edinin.

REST

Oturumları oluşturan Android uygulamasının paket adını almak için session.application özelliğini kullanın. REST API kullanılarak oluşturulan oturumlar için bunun yerine session.name özelliğini kullanın. Bu bilgileri uygulamanızda kullanarak kullanıcılara hangi uygulamaların fitness oturumları eklediğini gösterebilirsiniz. Kullanıcıların bu uygulamaları tanımlamasına yardımcı olmak için her birinin simgesini gösterebilirsiniz.

Oturum oluşturan kaynağı bulma hakkında daha fazla bilgi edinin.