Datentypen

Google Fit bietet eine Reihe von Datentypen für Gesundheit und Wohlbefinden im Namespace com.google.

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:

Gesundheitsdatentypen
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 .
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ährwertangaben 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 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 zugehörigen 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 ist es einfacher, Apps die Berechtigung zur Nutzung dieser Daten zu erteilen, um jeden einzelnen Datentyp zu genehmigen. Nutzer gewähren diese Berechtigungen, die App heruntergeladen haben.

<ph type="x-smartling-placeholder">
</ph> Beispiel für den Zustimmungsbildschirm für den OAuth-Bereich
Abbildung 2: Zustimmungsbildschirm für den OAuth-Bereich

Nachdem du deine App mit einer kleinen Anzahl von Nutzern getestet hast, App benötigen Sie eine Bestätigung die für diese Datentypen relevant sind. Lesen Sie sich die verlinkten Datentypen durch. um zu sehen, welche Bereiche für den jeweiligen Datentyp 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 es die Blutdruckdaten nur auf die Google Fit-Plattform übertragen, fordert den Schreibbereich an.

Wählen Sie Datentypen verantwortungsvoll aus. Fordern Sie nicht jeden Datentyp für den Fall an, dass Ihre App sie möglicherweise brauchen. 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 auf der 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 der 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 Körpermessdaten auf der 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 auf der Google Fit-Plattform speichern Eingeschränkt
https://www.googleapis.com/auth/fitness.nutrition.read Ernährungsdaten von der Google Fit-Plattform lesen Eingeschränkt
https://www.googleapis.com/auth/fitness.nutrition.write Ernährungsdaten auf der Google Fit-Plattform schreiben 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 Zyklusdaten von der Google Fit-Plattform lesen. Eingeschränkt
https://www.googleapis.com/auth/fitness.reproductive_health.write Zyklusdaten auf der 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 Bereich anzufordern (z. B. wenn Sie den neuen Bereich oder einen Leseumfang hinzufügen, werden Nutzende aufgefordert, Ihre App fordert Zugriff auf diese Bereiche an. Der Nutzer kann Ihnen dann Folgendes gewähren: oder den Zugriff ablehnen.

Als Best Practice wird empfohlen, die Autorisierung von Nutzern für Ressourcen zu diesem Zeitpunkt anzufordern die Sie brauchen. Befolgen Sie die Richtlinien zum Anfordern von zusätzlichen Autorisierung.

Nutzer geben eher Zugriff, wenn sie verstehen, warum/wie deine App funktioniert verwendet diese Daten:

  • Erwägen Sie das Hinzufügen eines Bildschirms, der Nutzer warnt bzw. informiert, dass sie dazu aufgefordert werden. diese Umfänge.
  • 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