Sessioni

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

Le sessioni raggruppano i set di dati di un periodo di tempo specifico raccolto durante un'attività. Ad esempio, se un utente monitorava l'inizio e la fine di una corsa di 3 km, è possibile creare una sessione e associare tutti i dati relativi all'attività fisica in questo periodo di tempo (come passi, velocità e distanza).

Le sessioni in sé non contengono dettagli sull'attività. Questo è nel set di dati. Le sessioni hanno le seguenti proprietà:

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

Vantaggi dell'utilizzo delle sessioni

  • Utili per gli utenti: le sessioni aiutano a organizzare i dati dell'attività e gli allenamenti in modo significativo per gli utenti. Nella pagina del diario dell'app Google Fit possono vedere tutte le attività della giornata.
  • Esperienza utente coerente: se la tua app o il tuo dispositivo associato consente il monitoraggio dell'attività (in cui gli utenti possono avviare e interrompere un'attività), le sessioni per questi esercizi consentono agli utenti di vedere la loro attività in entrambe le app.
  • Dati più completi: Google Fit unisce inoltre i dati provenienti da più origini per integrare e arricchire le informazioni sulle tue 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 la tua app non supporta il monitoraggio, puoi comunque leggere le sessioni in Google Fit. Puoi eseguire query su dati dettagliati o aggregati dal fitness store e trovare le sessioni disponibili, senza dover implementare uno schema e uno spazio di archiviazione propri.
  • Maggiore coinvolgimento degli utenti: puoi mostrare agli utenti le sessioni disponibili e le app che le hanno create. L'interazione con altre app per l'attività fisica in questo modo potrebbe aumentare il coinvolgimento degli utenti.

Ottenere l'autorizzazione degli utenti 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 deve accedere la tua app utilizzando i metodi appropriati di FitnessOptions. Ad esempio, per leggere le sessioni relative alla corsa puoi 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 della sessione di attività e specifica anche i tipi di dati che vuole leggere all'interno di queste sessioni; in questo esempio vengono utilizzati i tipi di dati su battito cardiaco, velocità e posizione.

REST

Gli ambiti delle richieste sono i seguenti:

  • Sessioni con tipi di attività del 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

Utilizzo delle sessioni

Android

Puoi utilizzare l'API Sessions per:

  • Crea sessioni in tempo reale
  • Inserisci sessioni nel fitness store
  • Inserisci segmenti di attività per supportare le pause durante gli esercizi
  • Sessioni di lettura e set di dati associati
  • Lancia un'altra app per mostrare informazioni su una sessione creata
  • Ricevi un intent quando un'altra app avvia una sessione

REST

Puoi utilizzare l'API Sessions per:

  • Crea sessioni in tempo reale
  • Inserisci sessioni nel fitness store
  • Inserisci segmenti di attività per supportare le pause durante gli esercizi
  • Sessioni di lettura e set di dati associati

In che modo i set di dati e i segmenti interagiscono con le sessioni

In Google Fit:

  • Un set di dati rappresenta un insieme di punti dati di una determinata origine dati in un periodo di tempo specifico. I set di dati possono essere inseriti autonomamente. Tuttavia, se si crea una sessione, potrebbe essere più semplice 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 che l'utente ha svolto nella sessione. Ad esempio, se l'utente monitora una corsa di 30 minuti (la sessione), ma ha camminato per un po' durante questo periodo, il monitoraggio potrebbe essere suddiviso in segmenti. Ci sarà 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 a [fitness store].

La figura 1 mostra un intervallo di tempo nel fitness store 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 dalle sessioni.

Durante la lettura dei dati delle sessioni dal negozio di fitness, tutti i dati relativi all'attività fisica che rientrano nell'intervallo di tempo di una sessione vengono automaticamente associati alla sessione, anche se inserisci i dati dopo aver creato la sessione o se crei una sessione dopo che i dati sono stati monitorati passivamente. Ad esempio, una query per i dati sull'attività fisica della Sessione 1 restituirà:

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

Puoi identificare l'app che ha inserito ogni sessione e set di dati.

Creazione di sessioni

Le sessioni possono essere create in diversi modi:

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

Quando creare una sessione

Stai aggiungendo dati relativi al sonno?

  • - Crea una sessione e inseriscila manualmente nel negozio di fitness. Ad esempio, l'inserimento di una sessione di sonno. Questo perché gli utenti con app o dispositivi per il monitoraggio del sonno non interagiscono con i dispositivi per iniziare e interrompere la propria attività del sonno (monitoraggio passivo).
  • No: la tua app consente agli utenti di avviare e interrompere attività?
    • No. Non creare una sessione. Aggiungi set di dati solo dalla 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 nel negozio di fitness.
    • La tua app può rilevare quando un utente svolge diverse attività a un livello più dettagliato (ad esempio camminando e correndo)?
      • : aggiungi segmenti.
      • No: aggiungi solo set di dati. Per il momento ignora i segmenti e lascia che sia Google Fit a crearli passivamente.

Sessioni di lettura

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

  • Cerca una sessione specifica creata/inserita da:
    • Nome o
    • ID
  • Cerca tutte le sessioni create/inserite per periodo di tempo
  • Cercare tutte le sessioni disponibili create da tutte le app (incluso Google Fit) in base al periodo di tempo

Scoprire quali sorgenti hanno creato una sessione

Puoi mostrare agli utenti l'app o il dispositivo che ha creato ciascuna sessione. A ogni sessione è associata un'origine dati contenente informazioni sull'app o sul dispositivo che ha raccolto o trasformato i dati.

Android

Attualmente 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 metodo getAppPackageName. Puoi usare queste informazioni nella tua app per mostrare agli utenti quali altre app hanno inserito sessioni di allenamento. Puoi mostrare l'icona per ciascuna di queste app per aiutare gli utenti a identificarle.

Puoi anche attivare un intent per avviare altre app e mostrare i dettagli delle sessioni che hanno creato. Anche altre app possono attivare l'intento di lanciare l'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 sessioni, utilizza la proprietà session.application. Per le sessioni create utilizzando l'API REST, usa invece la proprietà session.name. Puoi utilizzare queste informazioni nella tua app per mostrare agli utenti quali altre app hanno inserito sessioni di fitness. Puoi mostrare l'icona per ciascuna di queste app per aiutare gli utenti a identificarle.

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