Datentypen

Google Fit stellt eine Reihe von Datentypen für Gesundheit und Wohlbefinden unter dem Namespace com.google bereit.

Datentypen definieren das Format der Werte in Datenpunkten. Ein Datenpunkt kann Folgendes darstellen:

  • Eine sofortige Messung oder Beobachtung
  • Aggregiert mit Statistiken über ein Zeitintervall

Google Fit definiert Datentypen für sofortige Beobachtungen und Datentypen für aggregierte Daten. Datenpunkte bestehen aus Werten für die Felder eines Datentyps und aus Zeitstempelinformationen. Zu den Punkten, die sofortige Beobachtungen darstellen, gehören ein Zeitstempel und Punkte von aggregierte Datentypen auch die Startzeit für das Intervall.

Mit Google Fit können Sie auch neue Datentypen definieren.

Datentypgruppen

In Google Fit gibt es folgende Datentypen:

Öffentliche Datentypen
Von der Plattform bereitgestellte Standarddatentypen haben die Bezeichnung „com.google“ . Beispiel: com.google.step_count.delta. Diese Datentypen erfassen sofortige Messungen für Gesundheits- und Fitnessdaten, einschließlich Fitnessaktivitäten, Schlaf und Ernährung Beliebig App die entsprechenden Berechtigungen zum Lesen und Schreiben in diese Datentypen anfordern kann, bis auf einige Standortdatentypen, die nur von der App gelesen werden können, die sie geschrieben haben.

Weitere Informationen finden Sie unter:

Datentypen für Gesundheitsdaten
Von der Plattform bereitgestellte Datentypen, die aufgrund von eingeschränktem Zugriff potenziell sensiblen Daten. Weitere Informationen findest du unter Gesundheitsdaten .
Aggregierte Datentypen
Datentypen zum Lesen von Gesundheits- und Fitnessinformationen, die nach Zeit oder Aktivitätstyp. Weitere Informationen finden Sie unter Aggregierte Daten Typen.
Private benutzerdefinierte Datentypen
Benutzerdefinierte Datentypen, die von einer bestimmten App definiert werden. Nur die App, die die Datentyp kann Daten dieses Typs lesen und schreiben. Weitere Informationen finden Sie unter Benutzerdefinierte Datentypen.

Datentypen verwenden

Android

Unter Android sind Datentypen als öffentliche Felder der DataType . Wie Sie die Fitness APIs mit dem Datentyp aufrufen, hängt davon ab, was Sie erreichen möchten:

  • Verwende zum Aufzeichnen von Daten die Recording API: Erstellen Sie ein Abo für jeden Datentyp, den Sie aufzeichnen möchten.
  • Verwenden Sie zum Lesen von Daten die Verlaufs-API, um einen Lesevorgang zu senden -Anfrage für jeden Datentyp.
  • Wenn Sie Verlaufsdaten aus der Vergangenheit einfügen möchten, verwenden Sie die Verlaufs-API, um für jeden Datentyp eine Einfügungsanfrage senden.
  • Verwenden Sie zum Erstellen von Sitzungen die Sessions API zum Einfügen oder Aufzeichnen von Sitzungen. mit Sitzungsmetadaten.

Um Datenpunkte für eine sofortige DataType -Objekt enthält, weisen Sie Werte mit dem richtigen Format zu. Im folgenden Beispiel sehen Sie, die Speise als Zeichenfolge zuweisen, die Art der Mahlzeit als Konstante aus dem Klasse Field, Nährstoffinhalt als zugeordnete Gleitkommawerte.

val nutritionSource = DataSource.Builder()
    .setDataType(DataType.TYPE_NUTRITION)
    ...
    .build()

val nutrients = mapOf(
    Field.NUTRIENT_TOTAL_FAT to 0.4f,
    Field.NUTRIENT_SODIUM to 1f,
    Field.NUTRIENT_POTASSIUM to 422f
)
val banana = DataPoint.builder(nutritionSource)
    .setTimestamp(now, TimeUnit.MILLISECONDS)
    .setField(Field.FIELD_FOOD_ITEM, "banana")
    .setField(Field.FIELD_MEAL_TYPE, Field.MEAL_TYPE_SNACK)
    .setField(Field.FIELD_NUTRIENTS, nutrients)
    .build()

Nachdem Sie Datenpunkte in Ihrer App festgelegt haben, können Sie diese einfügen, lesen oder löschen mit der Verlaufs-API.

REST

Die Ressource dataSources enthält den Datentyp (und eine Liste der zugehörigen Felder) für jede Datenquelle. Sie können einen dieser Datentypen angeben, erstellen Sie Datenquellen und Sie können den Namen des Datentyps und eine Liste der Felder abrufen wenn Sie eine Datenquelle aus dem Fitnessspeicher abrufen.

Eine Datenquellendarstellung gibt beispielsweise den Datentyp so an:

{
"dataStreamId": "exampleDataSourceId",
...
"dataType": {
  "name": "com.google.step_count.delta"
},
...
}

Autorisierungsbereiche

Autorisierungsbereiche decken Gruppen von Datentypen ab, für die ein Nutzer eine App autorisieren kann Zugriff haben. Sie helfen Nutzenden zu verstehen, auf welche Arten von Daten eine App zugreifen möchte. Außerdem können Sie Apps die Berechtigung zur Verwendung dieser Daten leichter erteilen, da Sie nicht jeden einzelnen Datentyp genehmigen müssen. Nutzer gewähren diese Berechtigungen, nachdem sie Ihre App heruntergeladen haben.

Beispiel für den Zustimmungsbildschirm für den OAuth-Bereich
Abbildung 2: Der Einwilligungsbildschirm für OAuth-Bereiche

Nachdem Sie Ihre App mit einer kleinen Anzahl von Nutzern getestet haben, müssen Sie vor der Veröffentlichung eine Überprüfung beantragen, die auf den für diese Datentypen relevanten Bereichen basiert. Auf den oben verlinkten Seiten zu Datentypen finden Sie Informationen dazu, welche Gültigkeitsbereiche für die einzelnen Datentypen gelten.

Wenn deine App beispielsweise Blutdruck lesen und schreiben muss, muss deklariert, dass er Lese- und Schreibvorgänge ausführt, und fordert beide Bereiche an. Wenn nur Blutdruckdaten auf die Google Fit-Plattform geschrieben werden, muss nur der Schreibumfang angefordert werden.

Wählen Sie Datentypen verantwortungsvoll aus. Fordern Sie nicht jeden Datentyp an, für den Ihre App möglicherweise benötigt wird. Die angegebenen Typen bestimmen, zu welchen Bereichen der Nutzer aufgefordert wird um eine Berechtigung zu erteilen. Fragen Sie nur nach den Datentypen, die Ihre App benötigt, damit die Nutzenden und es ist wahrscheinlicher, dass sie Zugriff gewähren. Nutzer gewähren leichter Zugriff auf eingeschränkte, klar erkennbare die beschriebenen Bereiche.

Prüfen Sie anhand dieser Tabelle, ob die Bereiche, auf die Ihre Anwendung Zugriff benötigt, vertraulich sind oder eingeschränkt (dadurch wird die Bestätigung Schritte folgen:

Umfang Beschreibung Kategorie
https://www.googleapis.com/auth/fitness.activity.read Aktivitätsdaten von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.activity.write Aktivitätsdaten an die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.blood_glucose.read Blutzuckerdaten von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.blood_glucose.write Blutzuckerdaten in die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.blood_pressure.read Blutdruckdaten von der Google Fit-Plattform lesen. Eingeschränkt
https://www.googleapis.com/auth/fitness.blood_pressure.write Blutdruckdaten auf die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.body.read Körpermessdaten (Größe, Gewicht, Körperfettanteil) von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.body.write Daten zu Körpermaßen auf die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.body_temperature.read Körpertemperaturdaten von der Google Fit-Plattform lesen. Eingeschränkt
https://www.googleapis.com/auth/fitness.body_temperature.write Körpertemperaturdaten in die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.heart_rate.read Herzfrequenzdaten von der Google Fit-Plattform lesen. Eingeschränkt
https://www.googleapis.com/auth/fitness.heart_rate.write Herzfrequenzdaten in die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.location.read Standortdaten von der Google Fit-Plattform abrufen. Eingeschränkt
https://www.googleapis.com/auth/fitness.location.write Standortdaten in die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.nutrition.read Nährwertdaten von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.nutrition.write Schreibt Ernährungsdaten in die Google Fit-Plattform. Eingeschränkt
https://www.googleapis.com/auth/fitness.oxygen_saturation.read Sauerstoffsättigungsdaten von der Google Fit-Plattform lesen. Eingeschränkt
https://www.googleapis.com/auth/fitness.oxygen_saturation.write Sauerstoffsättigungsdaten in die Google Fit-Plattform schreiben Eingeschränkt
https://www.googleapis.com/auth/fitness.reproductive_health.read Daten zur reproduktiven Gesundheit von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.reproductive_health.write Daten zur reproduktiven Gesundheit auf die Google Fit-Plattform schreiben. Eingeschränkt
https://www.googleapis.com/auth/fitness.sleep.read Schlafdaten von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.sleep.write Schlafdaten in die Google Fit-Plattform schreiben Eingeschränkt

Einer vorhandenen Anwendung neue Bereiche hinzufügen

Wenn Sie Ihre App aktualisieren, um einen neuen Umfang anzufordern (z. B. die neuen Bereiche „Schlaf“ oder „Herzfrequenz“ oder den Bereich „Lesen“ hinzufügen), werden Nutzer darüber informiert, dass Ihre App Zugriff auf diese Bereiche anfordert. Sie können dann entscheiden, ob sie den Zugriff gewähren oder ablehnen möchten.

Es empfiehlt sich, die Autorisierung für Ressourcen von Nutzern zu dem Zeitpunkt anzufordern, zu dem Sie sie benötigen. Befolgen Sie die Richtlinien zum Anfordern von zusätzlichen Autorisierung.

Nutzer sind eher bereit, den Zugriff zu gewähren, wenn sie verstehen, warum und wie Ihre App diese Daten verwendet:

  • Erwägen Sie das Hinzufügen eines Bildschirms, der Nutzer warnt bzw. informiert, dass sie dazu aufgefordert werden. um diese Bereiche zu erweitern.
  • Erklären Sie klar, warum Ihre App Zugriff auf diese Umfänge/Daten anfordert, damit Nutzende eine fundierte Entscheidung treffen können.

Weitere Informationen zu Best Practices zu App-Berechtigungen für Android