כדי להבטיח למשתמשים שהנתונים שלהם נקראים בצורה נכונה, צריך להציג בבירור את האופן שבו האפליקציה מקבלת נתונים, שמגיעים מהמאפיין packageName של המחלקה DataOrigin.
יש שתי דרכים לעשות את זה:
שיוך בסיסי
לפחות, בממשק המשתמש צריך להופיע הסמל של מקור האפליקציה והשם שלה (או רק השם אם אי אפשר להציג את הסמל). שיוך בסיסי מתאים למסכים הבאים: דף הבית, יומן הפעילות ופרטי הפעילות.
כדי לתמוך בשיוך נכון, האפליקציה יכולה להציג את השם והסמל של האפליקציה שרשמה את הנתונים במקור. כך משפרים את האמון של המשתמשים ומספקים מידע ברור על המקור של המידע הבריאותי.
כדי לאחזר את המידע הזה, לא צריך לבקש הרשאות רגישות כמו QUERY_ALL_PACKAGES. בדוגמה הבאה אפשר לראות איך מאחזרים את התווית והסמל של האפליקציה לחבילה נתונה מ-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
}
}
הכלי הזה עוזר לוודא שהשיוך מתבצע בצורה נכונה, כי הוא מציג את שם האפליקציה ואת הסמל שלה לצד הנתונים. אפשר לראות את ההטמעה בדוגמה HealthConnectManager.kt.
שיוך (Attribution) עם חינוך
האפליקציה צריכה לעזור למשתמשים לקבל מידע על המקור של הנתונים, עם קישור ישיר למסך 'הרשאות לאפליקציה' ב-Health Connect. סוג השיוך הזה מתאים למסכים הבאים: פרטי הפעילות, דוחות ותובנות.
סנכרון נתונים
אם יש מספיק זמן אחזור כשמסנכרנים את האפליקציה עם Health Connect, צריך להציג את ההתראה הזו באפליקציה במהלך הסנכרון. ההודעה הזו מיידעת את המשתמש שהתהליך עשוי להימשך זמן מה. אם אתם משתמשים בהתראות לסנכרון, הן צריכות להיות מוגדרות כברירת מחדל בעדיפות נמוכה.