בדף הזה מוסבר איך להשתמש בשחזור ערכים לפי מכשיר כדי לאחסן ולאחזר נתונים בהתאמה אישית במכשירים ספציפיים. אפשר לשחזר את הנתונים המותאמים אישית באופן מהימן גם בהמשך, כשהאפליקציה מותקנת באותו מכשיר, אפילו אחרי שהמכשיר מאופס. התכונה הזו מאפשרת לכם לזהות מכשיר ולמנוע שימוש חוזר בו על סמך פעולה או התנהגות שציינתם, תוך שמירה על פרטיות המשתמשים.
איך מתבצע ריקול של מכשיר?
התכונה 'שחזור ערכים לפי מכשיר' מאפשרת לאפליקציות לאחסן נתונים בהתאמה אישית שמשויכים למכשיר ספציפי, ולבצע להם שחזור תוך שמירה על פרטיות המשתמשים. הנתונים מאוחסנים בשרתים של Google, כך שהאפליקציה שלכם יכולה לבצע באופן מהימן ריקול לנתונים המותאמים אישית גם אחרי שמתקינים אותה מחדש או מאפסים את המכשיר. לדוגמה, אפשר להשתמש בתכונה כדי לאחזר נתונים שמשויכים למכשירים שזוהו בהם פעולות ספציפיות שבוחרים כמו רמאות, ניצול לרעה או מימוש פריטים. התכונה 'שחזור ערכים לפי מכשיר' שומרת על פרטיות המשתמשים כי האפליקציה ששולחת את הבקשה יכולה לשחזר רק את הנתונים המוגבלים שהיא שייכה למכשירים, בלי לגשת למזהים של מכשירים או משתמשים. אחרי שמפעילים את התכונה 'שחזור ערכים לפי מכשיר', אפשר לבצע את הפעולות הבאות:
- קריאת נתונים לכל מכשיר: אפשר לקרוא שלושה ערכים מותאמים אישית או ביטים לכל מכשיר כשמקבלים קביעת תקינות. אתם יכולים להגדיר את המשמעות של הערכים האלה בעצמכם. לדוגמה, אתם יכולים להתייחס לערכים כשלושה דגלים נפרדים או לשלב אותם כדי לייצג שמונה תוויות מותאמות אישית.
- שינוי נתונים לכל מכשיר: אחרי שמקבלים אסימון יושרה, אפשר להשתמש בו כדי לבצע קריאה מצד השרת לשרת של Google Play ולשנות ערך אחד או יותר. יש לכם עד 14 ימים להשתמש בטוקן. כך תוכלו לשנות ערך אם, לדוגמה, התגלה שימוש לרעה רק במהלך השבועיים אחרי שביצעתם את בדיקת היושרה הראשונה. כשמשנים ערך, נשמרים גם החודש והשנה שבהם בוצע השינוי.
דרישות מוקדמות ושקולים לשחזור ערכים לפי מכשיר
אפשר להשתמש בשחזור ערכים לפי מכשיר רק כדי לאחסן מידע ולשלוף אותו לצורך הגנה על אבטחת האפליקציות, וצמצום ניצול לרעה, הונאות וגישה לא מורשית. אסור להשתמש בשחזור ערכים לפי מכשיר כדי ליצור טביעת אצבע או לעקוב אחרי משתמשים או מכשירים ספציפיים, ואסור להשתמש בשחזור ערכים לפי מכשיר כדי לעקוב אחרי מאפיינים רגישים של משתמשים או מכשירים, כמו נתוני מיקום, מגדר או גיל.
יש כמה דרישות מוקדמות לשימוש בתכונה 'שחזור ערכים לפי מכשיר':
- אפשר להשתמש בזיכרון המכשיר בטלפונים, בטאבלטים, במכשירים מתקפלים, בטלוויזיות, ב-Auto וב-WearOS. ב-Wear, האפשרות לשחזור ערכים לפי מכשיר זמינה רק במכשירים עם Wear OS 5 ואילך. שחזור ערכים לפי מכשיר לא אפשרי באמולטורים.
- כדי להשתמש בזיכרון של המכשיר, צריך להתקין במכשיר גרסאות עדכניות של חנות Google Play ושל שירותי Google Play ולהפעיל אותן.
- שחזור ערכים לפי מכשיר דורש שחשבון המשתמש יהיה בעל רישיון Play, אחרת לא תתבצע הערכה של התוצאה.
השיקולים הבאים רלוונטיים לתזמון של שחזור הערכים לפי מכשיר:
- אחרי שמאמתים את טוקן היושרה, יש עד 14 ימים להשתמש בו כדי לאחסן נתונים מותאמים אישית של שחזור ערכים לפי מכשיר.
- שחזור ערכים לפי מכשיר כולל חותמות זמן, כך שאפשר לתת עדיפות גבוהה יותר לנתונים ששונו לאחרונה מאשר לנתונים ששונו לפני זמן רב. אחרי תקופה ארוכה מספיק, כדאי להתעלם מהנתונים או לאפס אותם כדי לקחת בחשבון שמכשירים יכולים לעבור מיד ליד או לעבור שיפוץ ואז להימכר מחדש.
- הביטים של הזיכרון יאוחסנו במכשיר למשך 3 שנים אחרי הגישה האחרונה לקריאה או לכתיבה.
- אם אתם צריכים למחוק את כל הנתונים שמשויכים למכשיר, האפליקציה יכולה לאפס את כל שלושת הערכים במכשיר לערך false. חותמות הזמן יאופסו אוטומטית.
למפתחים עם כמה אפליקציות ולמפתחים שמעבירים אפליקציות, התכונה 'החזרת מכשיר' פועלת באופן הבא:
- לכל האפליקציות בחשבון המפתח שלכם ב-Google Play יש גישה לאותם שלושה ערכים לכל מכשיר. במילים אחרות, אם אחת מהאפליקציות שלכם משנה אחד מהערכים, כל האפליקציות יקראו את הערך ששונה כשהן מותקנות באותו מכשיר.
- אם אפליקציה מועברת מחשבון מפתח אחד לחשבון מפתח אחר, נתוני המכשיר שיוצגו בזיכרון המכשיר יהיו הנתונים של חשבון המפתח החדש, ולא של חשבון המפתח הישן.
הפעלת שחזור הערכים לפי מכשיר
כשמוכנים, מפעילים את האפשרות 'שחזור ערכים לפי מכשיר' ב-Play Console:
- נכנסים ל-Play Console.
- בוחרים את האפליקציה שבה רוצים להשתמש בשחזור ערכים לפי מכשיר.
- בתפריט הימני, עוברים אל מוגן באמצעות Play.
- לצד Play Integrity API, לוחצים על ניהול.
- בקטע 'תשובות' בדף, לוחצים על שינוי התשובות.
- מפעילים את התכונה 'שחזור הערכים לפי מכשיר'.
- לוחצים על 'שמירת שינויים'.
כשמפעילים או משביתים את התכונה 'שחזור ערכים לפי מכשיר', תגובות הבדיקה של Play Integrity API שהגדרתם ב-Play Console יימחקו ותצטרכו ליצור אותן מחדש.
קריאת ערכים של שחזור נתונים לפי מכשיר
שחזור ערכים לפי מכשיר פועל גם בבקשות קלאסיות וגם בבקשות רגילות של Play Integrity API. בבקשות רגילות, שחזור ערכים לפי מכשיר מתרענן בשיחת ההפעלה. במילים אחרות, אחרי שמשנים את הנתונים לכל מכשיר, צריך לבצע עוד חימום כדי לראות את הערך המעודכן. אחרי שמפעילים את התכונה 'שחזור ערכים לפי מכשיר', אפשר לקרוא את הערכים של התכונה הזו בתוצאות הבדיקה של תקינות המכשיר.
שינוי ערכי ההיזכרות של המכשיר
אפשר לשנות את הערכים של שחזור ערכים לפי מכשיר באמצעות קריאה ל-API משרת לשרת, בדומה לפענוח של קביעת תקינות. הגדרת ביט ל-true תעדכן גם את תאריך הכתיבה שלו (גם אם הוא כבר היה true).
הגדרת ביט ל-false תאפס את תאריך הכתיבה שלו לריק. ביטים שלא צוינו בבקשה יישארו ללא שינוי. יש עיכוב קל בהפצה בין כתיבת הביטים לבין האפשרות לקרוא אותם בחזרה בחוות הדעת. העיכוב הזה יכול להימשך עד 30 שניות, אבל בדרך כלל הוא קצר יותר. בקשות לכתיבת נתוני recall במכשיר צריכות להיות בתדירות נמוכה יותר מבקשות הטוקן שלמות. הן לא נספרות במכסת הבקשות שלכם לטוקן יושרה, אבל הן כפופות למגבלות קצב הגנתיות ולא ציבוריות.
playintegrity.googleapis.com/v1/PACKAGE_NAME/deviceRecall:write -d \
'{
"integrityToken": "INTEGRITY_TOKEN",
"newValues": {
"bitFirst": true,
"bitThird": false
}
}'newValues.BitFirst = true // ForceSendFields optional for value true newValues.BitSecond = false // ForceSendFields required for value false newValues.BitThird = nil // do not set ForceSendFields for unspecified bits newValues.ForceSendFields = []string{"BitSecond"}