Damit Nutzer sicher sein können, dass ihre Daten korrekt gelesen werden, müssen Sie deutlich zeigen, wie Ihre App Daten abruft, die aus der packageName
-Eigenschaft der DataOrigin
-Klasse stammen.
Dafür gibt es zwei Möglichkeiten:
Einfache Attribution
Ihre Benutzeroberfläche sollte mindestens das Symbol und den Namen der App-Quelle (oder nur den App-Namen, wenn das Symbol nicht angezeigt werden kann) enthalten. Die einfache Quellenangabe eignet sich für die folgenden Bildschirme: Startseite, Aktivitätsprotokoll und Aktivitätsdetails.
Damit die Daten richtig zugeordnet werden können, kann in Ihrer Anwendung der Name und das Symbol der Anwendung angezeigt werden, in der die Daten ursprünglich aufgezeichnet wurden. Das stärkt das Vertrauen der Nutzer und sorgt für Klarheit darüber, woher die Gesundheitsinformationen stammen.
Sie müssen keine sensiblen Berechtigungen wie QUERY_ALL_PACKAGES
anfordern, um diese Informationen abzurufen. Im folgenden Beispiel wird gezeigt, wie Sie das App-Label und das Symbol für ein bestimmtes Paket aus dem PackageManager
abrufen:
fun getAppLabelAndIcon(context: Context, packageName: String): Pair<CharSequence?, Drawable?>{
return try {
val pm = context.packageManager
val appInfo = pm.getApplicationInfo(packageName, 0)
val label = pm.getApplicationLabel(appInfo)
val icon = pm.getApplicationIcon(appInfo)
label to icon
} catch (e: PackageManager.NameNotFoundException){
null to null
}
}
Mit diesem Tool lässt sich die korrekte Quellenangabe überprüfen, da sowohl der App-Name als auch das Symbol neben den Daten angezeigt werden. Die Implementierung finden Sie im HealthConnectManager.kt-Beispiel.

Attribution mit Bildung
Ihre App sollte Nutzern helfen, Informationen darüber zu erhalten, woher Daten stammen, mit einem direkten Link zum Bildschirm „App-Berechtigungen“ in Health Connect. Diese Art der Zuordnung eignet sich für die folgenden Bereiche: Aktivitätsdetails, Berichte und Statistiken.


Datensynchronisierung
Wenn beim Synchronisieren Ihrer App mit Health Connect eine ausreichende Latenz auftritt, zeigen Sie diese Benachrichtigung während der Synchronisierung in Ihrer App an. So wird der Nutzer darüber informiert, dass der Vorgang einige Zeit dauern kann. Wenn Sie Benachrichtigungen für die Synchronisierung verwenden, sollten sie standardmäßig auf eine niedrige Priorität eingestellt sein.
