Wyświetlanie danych i atrybucja

Aby zapewnić użytkowników, że ich dane są odczytywane prawidłowo, wyraźnie pokaż, w jaki sposób Twoja aplikacja uzyskuje dane, które pochodzą z packageName właściwości klasy DataOrigin.

Możesz to zrobić na 2 sposoby:

  1. Podstawowa atrybucja
  2. Atrybucja w edukacji

Podstawowa atrybucja

Interfejs użytkownika powinien wyświetlać co najmniej ikonę i nazwę źródła aplikacji (lub tylko nazwę, jeśli ikony nie można wyświetlić). Podstawowe przypisanie jest odpowiednie w przypadku tych ekranów: Strona główna, Dziennik aktywności i Szczegóły aktywności.

Aby zapewnić prawidłowe przypisanie, aplikacja może wyświetlać nazwę i ikonę aplikacji, która pierwotnie zarejestrowała dane. Zwiększa to zaufanie użytkowników i wyjaśnia, skąd pochodzą informacje o zdrowiu.

Aby uzyskać te informacje, nie musisz prosić o przyznanie żadnych newralgicznych uprawnień, takich jakQUERY_ALL_PACKAGES. Poniższy przykład pokazuje, jak pobrać etykietę i ikonę aplikacji dla danego pakietu z PackageManager:

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
    }
}

To narzędzie pomaga w weryfikacji prawidłowego przypisania atrybucji, ponieważ wyświetla nazwę i ikonę aplikacji obok danych. Zobacz implementację w przykładowym pliku HealthConnectManager.kt.

Podstawowa atrybucja danych o czytaniu
Ilustracja 1. Podstawowa atrybucja danych dotyczących czytania

Atrybucja w edukacji

Aplikacja powinna pomagać użytkownikom w uzyskiwaniu informacji o źródle danych, a także zawierać bezpośredni link do ekranu „Uprawnienia aplikacji” w Health Connect. Ten typ atrybucji jest odpowiedni w przypadku tych ekranów: szczegóły aktywności, raporty i statystyki.

Atrybucja na ekranach szczegółów aktywności i raportów w aplikacji partnera Atrybucja na ekranach statystyk w aplikacji partnera
Ilustracja 2. Atrybucja z różnymi wariantami edukacyjnymi

Atrybucja na ekranach szczegółów aktywności i raportów w aplikacji partnera Atrybucja na ekranach statystyk w aplikacji partnera

Synchronizacja danych

Jeśli podczas synchronizacji aplikacji z Health Connect występuje wystarczające opóźnienie, wyświetl w aplikacji to powiadomienie. Informuje to użytkownika, że proces może potrwać. Jeśli używasz powiadomień do synchronizacji, powinny one mieć domyślnie ustawiony niski priorytet.

Wyświetlanie stanu synchronizacji danych
Ilustracja 3. Wyświetlony stan synchronizacji danych