Sessioni

Le sessioni consentono agli utenti di visualizzare in modo facile e veloce un elenco di tutte le attività principali che hanno svolto. Vengono visualizzate nella pagina del diario dell'app Google Fit. Ad esempio, una sessione di respirazione, una passeggiata, una corsa o una notte di sonno sono tutti esempi di sessioni.

Le sessioni raggruppano i set di dati di un periodo di tempo specifico, raccolti durante un'attività. Ad esempio, se un utente ha monitorato l'inizio e la fine di una corsa di 3 km, è possibile creare una sessione e tutti i dati sul fitness compresi in quel periodo di tempo (ad esempio passi, velocità, distanza) verranno associati a quella sessione.

Le sessioni non contengono dettagli sull'attività. Questi sono contenuti nel set di dati. Le sessioni hanno le seguenti proprietà:

  • Un nome descrittivo e intuitivo (ad esempio "corsa mattutina")
  • Una descrizione
  • Un identificatore univoco
  • Il tipo di attività che acquisisce (ad esempio una corsa)

Vantaggi dell'utilizzo delle sessioni

  • Utile per gli utenti: le sessioni ti aiutano a organizzare i dati sulle attività e gli allenamenti in modo significativo per gli utenti. Possono visualizzare tutte le loro attività della giornata nella pagina del diario dell'app Google Fit.
  • Esperienza utente coerente: se la tua app o il tuo dispositivo complementare consente il monitoraggio delle attività (in cui gli utenti possono avviare e interrompere un'attività), le sessioni per questi allenamenti consentono agli utenti di visualizzare la loro attività in entrambe le app.
  • Dati più completi: Google Fit unisce anche i dati provenienti da più origini per integrare e arricchire le informazioni sulle sessioni. In questo modo, gli utenti hanno un quadro più completo della loro attività.
  • Sfrutta la piattaforma Google Fit: se i tuoi utenti non monitorano la loro attività o se la tua app non supporta il monitoraggio, puoi comunque leggere le sessioni in Google Fit. Puoi eseguire query sui dati dettagliati o aggregati dello store di fitness e trovare le sessioni disponibili, senza dover implementare il tuo schema e il tuo spazio di archiviazione.
  • Maggiore coinvolgimento degli utenti: puoi mostrare agli utenti le sessioni disponibili e le app che le hanno create. L'interazione con altre app per il fitness in questo modo potrebbe aumentare il coinvolgimento degli utenti.

Ottenere l'autorizzazione dell'utente per le sessioni

Se vuoi leggere o scrivere sessioni, la tua app deve ottenere l'autorizzazione dell'utente. L'accesso alle sessioni utilizza gli stessi ambiti di autorizzazione dei tipi di dati, che devi richiedere nel seguente modo:

Android

Specifica il tipo di sessione a cui la tua app deve accedere utilizzando i metodi appropriati di FitnessOptions. Ad esempio, per leggere le sessioni relative alla corsa, potresti scegliere:

    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()

Questo esempio specifica che la tua app vuole accedere ai metadati delle sessioni di attività e anche i tipi di dati che vuole leggere all'interno di queste sessioni; in questo esempio vengono utilizzati i tipi di dati relativi a frequenza cardiaca, velocità e dati sulla posizione.

REST

Richiedi gli ambiti nel seguente modo:

  • Sessioni con tipi di attività di sonno:
    • https://www.googleapis.com/auth/fitness.sleep.read
    • https://www.googleapis.com/auth/fitness.sleep.write
  • Tutte le altre sessioni:
    • https://www.googleapis.com/auth/fitness.activity.read
    • https://www.googleapis.com/auth/fitness.activity.write

Utilizzare le sessioni

Android

Puoi utilizzare l'API Sessions per:

  • Creare sessioni in tempo reale
  • Inserire sessioni nello store di fitness
  • Inserire segmenti di attività per supportare le pause durante gli allenamenti
  • Leggere le sessioni e i set di dati associati
  • Avviare un'altra app per mostrare informazioni su una sessione che ha creato
  • Ricevere un intent quando un'altra app avvia una sessione

REST

Puoi utilizzare l'API Sessions per:

  • Creare sessioni in tempo reale
  • Inserire sessioni nello store di fitness
  • Inserire segmenti di attività per supportare le pause durante gli allenamenti
  • Leggere le sessioni e i set di dati associati

Come interagiscono i set di dati e i segmenti con le sessioni

In Google Fit:

  • Un set di dati rappresenta un insieme di punti dati provenienti da una origine dati specifica in un periodo di tempo specifico. I set di dati possono essere inseriti autonomamente. Tuttavia, se stai creando una sessione, potrebbe essere più facile creare la sessione e i relativi set di dati insieme.
  • Un segmento raggruppa i set di dati in una sessione in base all'attività esatta svolta dall'utente nella sessione. Ad esempio, se l'utente monitora una corsa di 30 minuti (la sessione), ma ha camminato per un po' di tempo durante questo periodo, la sessione potrebbe essere suddivisa in segmenti. Ci sarebbe un segmento per la corsa, poi la pausa per camminare e poi di nuovo la corsa.
Figura 1: diverse app aggiungono sessioni e set di dati allo [store di fitness].

La Figura 1 mostra un intervallo di tempo nello store di fitness durante il quale le app A, B e C hanno inserito alcuni set di dati e sessioni:

  • L'app A ha inserito i set di dati A1 e A2 insieme alla sessione 1 e A3 indipendentemente da qualsiasi sessione.
  • L'app B ha inserito i set di dati B1 e B2 insieme alla sessione 2.
  • L'app C ha inserito il set di dati C1 indipendentemente da qualsiasi sessione.

Quando leggi i dati delle sessioni dallo store di fitness, tutti i dati sul fitness che rientrano nell'intervallo di tempo di una sessione vengono associati automaticamente a quella sessione, anche se inserisci i dati dopo aver creato la sessione o crei una sessione dopo che i dati sono stati monitorati passivamente. Ad esempio, una query per i dati di fitness della sessione 1 restituirebbe:

  • Set di dati A1
  • Set di dati A2
  • La parte del set di dati A3 compresa tra t1 e t2
  • La parte del set di dati C1 compresa tra t1 e t2

Puoi sapere quale app ha inserito ogni sessione e set di dati.

Creare sessioni

Le sessioni possono essere create in diversi modi:

  • La tua app può creare attivamente una sessione
    • in tempo reale quando un utente monitora attivamente un'attività su un dispositivo (solo Android) o
    • inserendola manualmente.
  • Quando un utente aggiunge manualmente un allenamento o un'attività nell'app Google Fit.

Quando creare una sessione

Stai aggiungendo dati relativi al sonno?

  • : crea una sessione e inseriscila manualmente nello store di fitness. Ad esempio, inserisci una sessione di sonno. Questo perché gli utenti con app o dispositivi di monitoraggio del sonno non interagiscono con i dispositivi per avviare e interrompere l'attività di sonno (che viene monitorata passivamente).
  • No : la tua app consente agli utenti di avviare e interrompere le attività?
    • No : non creare una sessione. Aggiungi solo i set di dati della tua app.
    • : con l'API Android, crea una sessione in tempo reale se gli utenti monitorano la loro attività o manualmente. Con l'API REST, crea una sessione e inseriscila manualmente nello store di fitness.
    • La tua app è in grado di rilevare quando un utente svolge attività diverse a un livello più dettagliato (ad esempio camminare e correre)?
      • : aggiungi segmenti.
      • No : aggiungi solo set di dati. Per il momento ignora i segmenti e lascia che Google Fit li crei passivamente.

Leggere le sessioni

La tua app può leggere le sessioni in diversi modi:

  • Cerca una sessione specifica che ha creato/inserito per
    • Nome o
    • ID
  • Cerca tutte le sessioni che ha creato/inserito, per periodo di tempo
  • Cerca tutte le sessioni disponibili create da tutte le app (inclusa Google Fit) per periodo di tempo

Scopri quali origini hanno creato una sessione

Puoi mostrare agli utenti l'app o il dispositivo che ha creato ciascuna delle loro sessioni. Ogni sessione ha un'origine dati associata, che contiene informazioni sull'app o sul dispositivo che ha raccolto o trasformato i dati.

Android

Al momento puoi ottenere solo il nome del pacchetto di una sessione scritta da un client Android. Per ottenere il nome del pacchetto dell'app che ha creato una sessione, utilizza il getAppPackageName metodo. Puoi utilizzare queste informazioni nella tua app per mostrare agli utenti quali altre app hanno inserito sessioni di fitness. Puoi mostrare l'icona di ciascuna di queste app per aiutare gli utenti a identificarle.

Puoi anche attivare un intent per avviare altre app per mostrare i dettagli delle sessioni che hanno creato. Anche altre app possono attivare un intent per avviare la tua app.

Scopri di più su come trovare l'origine che ha creato una sessione.

REST

Per ottenere il nome del pacchetto dell'app per Android che ha creato le sessioni, utilizza la session.application proprietà. Per le sessioni create utilizzando l' API REST, utilizza invece la session.name proprietà. Puoi utilizzare queste informazioni nella tua app per mostrare agli utenti quali altre app hanno inserito sessioni di fitness. Puoi mostrare l'icona di ciascuna di queste app per aiutare gli utenti a identificarle.

Scopri di più su come trovare l'origine che ha creato una sessione.