משתמשים משקיעים לעיתים קרובות זמן ומאמץ רבים ביצירת זהות, בהוספת נתונים ובהתאמה אישית של ההגדרות וההעדפות באפליקציה שלכם. שמירה על הנתונים וההתאמה האישית האלה כשמשתמשים משדרגים למכשיר חדש או מתקינים מחדש את האפליקציה שלכם היא חלק חשוב בהבטחת חוויית משתמש מעולה. בדף הזה מוסבר אילו נתונים צריך לגבות ואילו אפשרויות גיבוי זמינות לכם.
בחירת הנתונים לגיבוי
איור 1. חשוב לוודא שאתם משחזרים נתוני זהות, נתוני אפליקציות והגדרות עבור משתמשים שחוזרים לאפליקציה שלכם.
המשתמשים יוצרים הרבה נתונים כשהם משתמשים באפליקציות שלכם. חשוב לגבות את הנתונים הרלוונטיים – גיבוי חלקי של הנתונים עלול לגרום לתסכול בקרב המשתמשים כשהם פותחים את האפליקציה במכשיר חדש ומגלים שחסר משהו. הנתונים החשובים שצריך לגבות עבור המשתמשים הם נתוני הזהות שלהם, נתוני אפליקציות שנוצרו על ידי המשתמשים ונתוני ההגדרות, כפי שמתואר בקטעים הבאים.
נתוני זהות
כדי לשמור על רמת המעורבות של המשתמשים הקיימים, אתם יכולים להעביר את החשבון של המשתמש כשהוא מתחיל להשתמש במכשיר חדש.
לפרטים על העברת פרטי אימות וטוקנים של הרשאה, ראו Block Store.
כדי לעיין בפתרונות של כניסה באמצעות חשבון Google שיעזרו למשתמשים להיכנס לאפליקציה שלכם, אפשר לעיין במאמר בנושא זהויות ב-Google.
נתוני אפליקציות
נתוני אפליקציות יכולים לכלול תוכן שנוצר על ידי משתמשים, כמו טקסט, תמונות ומדיה אחרת. אתם יכולים לסנכרן נתוני האפליקציה בין מכשירים עם Android ולשמור נתונים שאתם רוצים להשתמש בהם במהלך מחזור החיים הרגיל של האפליקציה. אפשר גם לשחזר את הנתונים של משתמש שחוזר למכשיר חדש. כך מעבירים נתונים באמצעות מתאמי סנכרון.
נתוני ההגדרות
כדאי גם לגבות ולשחזר את נתוני ההגדרות כדי לשמור על ההעדפות האישיות של משתמש חוזר במכשיר חדש. אפשר לשחזר נתוני הגדרות גם אם משתמש לא נכנס לאפליקציה. אפשר לגבות הגדרות שמשתמש מגדיר באופן מפורש בממשק המשתמש של האפליקציה, וגם נתונים שקופים, כמו דגל שמציין אם משתמש ראה אשף הגדרה.
כדי לשמר כמה שיותר מהחוויה של משתמש קיים במכשיר חדש, חשוב לוודא שאתם מגבים את הגדרות המשתמש הבאות:
הגדרות שהמשתמש שינה, למשל כשמשתמשים בספריית ההעדפות של Jetpack.
האם המשתמש הפעיל או השבית את ההתראות ואת הרינגטונים.
דגלים בוליאניים שמציינים אם המשתמש ראה מסכי פתיחה או טיפים להסבר על כלי.
איור 2. שחזור ההגדרות במכשירים חדשים עוזר להבטיח חוויית משתמש מעולה.
לא מומלץ לגבות כתובות URI, כי הן עלולות להיות לא יציבות. במקרים מסוימים, שחזור למכשיר נייד חדש עלול לגרום ל-URI לא תקין שלא מצביע על קובץ תקין. דוגמה אחת לכך היא שימוש ב-URI כדי לשמור את העדפת הרינגטון של משתמש. כשהמשתמש מתקין מחדש את האפליקציה, יכול להיות שכתובת ה-URI לא תצביע על צלצול או שתצביע על צלצול אחר מזה שהתכוונתם אליו. במקום לגבות את ה-URI, אפשר לגבות מטא-נתונים מסוימים לגבי ההגדרה, כמו שם של רינגטון או גיבוב של הרינגטון.
אפשרויות הגיבוי
ב-Android יש כמה דרכים לאפליקציות לגבות את הנתונים שלהן בענן:
- גיבוי אוטומטי לאפליקציות
- גיבוי של זוגות מפתח/ערך
- Large Backups API (באישור למפתחי אפליקציות בהיקף נרחב)
הגיבוי האוטומטי, שזמין ב-Android מגרסה 6.0 ואילך, שומר את הנתונים על ידי העלאה שלהם לחשבון Google Drive של המשתמש. הגיבוי האוטומטי כולל קבצים ברוב הספריות שהוקצו לאפליקציה על ידי המערכת. הגיבוי האוטומטי יכול לאחסן עד 25 MB של נתונים מבוססי-קבצים לכל אפליקציה. תכונת הגיבוי של צמדי מפתח/ערך (לשעבר Backup API ו-Android Backup Service) שומרת נתוני הגדרות בצורה של צמדי מפתח/ערך על ידי העלאה שלהם ל-Android Backup Service.
באופן כללי, אנחנו ממליצים על גיבוי אוטומטי כי הוא מופעל כברירת מחדל ולא נדרשת שום פעולה כדי להטמיע אותו. הגיבוי האוטומטי מופעל אוטומטית באפליקציות שמטרגטות את Android מגרסה 6.0 ואילך. תכונת הגיבוי האוטומטי היא גישה מבוססת-קובץ לגיבוי נתוני אפליקציות. קל להטמיע את הגיבוי האוטומטי, אבל אם יש לכם צרכים ספציפיים יותר לגיבוי נתונים, כדאי להשתמש בתכונת הגיבוי של זוגות מפתח/ערך.
בטבלה הבאה מתוארים כמה מההבדלים העיקריים בין גיבוי של זוגות מפתח/ערך לבין גיבוי אוטומטי:
| קטגוריה | גיבוי של זוגות מפתח/ערך (Android Backup Service) | גיבוי אוטומטי של Android |
|---|---|---|
| גרסאות נתמכות | Android מגרסה 2.2 (רמת API 8) ואילך. | Android 6.0 (רמת API 23) ומעלה. |
| השתתפות | מושבת כברירת מחדל. אפליקציות יכולות להצטרף על ידי הצהרה על סוכן גיבוי. | מופעל כברירת מחדל. אפשר להשבית את הגיבוי של אפליקציות כדי שלא יגובו. |
| הטמעה |
באפליקציות צריך להטמיע BackupAgent. הסוכן לגיבוי מגדיר אילו נתונים לגבות ואיך לשחזר נתונים.
|
כברירת מחדל, הגיבוי האוטומטי כולל כמעט את כל הקבצים של האפליקציה. אתם יכולים להשתמש ב-XML כדי לכלול קבצים או לא לכלול אותם. באופן פנימי, הגיבוי האוטומטי מסתמך על סוכן גיבוי שמצורף ל-SDK. |
| תדירות | האפליקציות צריכות לשלוח בקשה כשיש נתונים שמוכנים לגיבוי. בקשות מכמה אפליקציות נשלחות בקבוצות ומבוצעות כל כמה שעות. | הגיבויים מתבצעים אוטומטית, בערך פעם ביום. |
| הפצה | אפשר להעביר את נתוני הגיבוי באמצעות Wi-Fi או חבילת גלישה. | נתוני הגיבוי מועברים באמצעות Wi-Fi כברירת מחדל, אבל המשתמש במכשיר יכול להפעיל גיבויים באמצעות חבילת הגלישה. אם המכשיר אף פעם לא מחובר לרשת Wi-Fi או שהמשתמש לא משנה את הגדרות הגיבוי של חבילת הגלישה, הגיבוי האוטומטי לא יתבצע אף פעם. |
| תנאי השידור |
הגדרת תנאים למכשירים שנדרשים לגיבוי ב-
onBackup().
|
מגדירים תנאים למכשיר שנדרשים לגיבוי בקובץ XML, אם משתמשים בסוכן הגיבוי שמוגדר כברירת מחדל. |
| האפליקציה נסגרה | האפליקציות לא נסגרות במהלך הגיבוי. | המערכת משביתה את האפליקציה במהלך הגיבוי. |
| אחסון לגיבוי | נתוני הגיבוי מאוחסנים בשירות הגיבוי של Android, והגודל שלהם מוגבל ל-5 MB לכל אפליקציה. Google מתייחסת לנתונים האלה כאל מידע אישי בהתאם למדיניות הפרטיות של Google. | נתוני הגיבוי מאוחסנים ב-Google Drive של המשתמש, עד 25 MB לכל אפליקציה. Google מתייחסת לנתונים האלה כאל מידע אישי בהתאם ל מדיניות הפרטיות של Google. |
| התחברות משתמש | לא נדרש מהמשתמש להתחבר לאפליקציה. המשתמש צריך להיות מחובר למכשיר באמצעות חשבון Google. | לא נדרש מהמשתמש להתחבר לאפליקציה. המשתמש צריך להיות מחובר למכשיר באמצעות חשבון Google. |
| API | שיטות ה-API שקשורות מבוססות על ישויות: | שיטות ה-API שקשורות להעלאה מבוססת-קובץ: |
| שחזור נתונים | הנתונים משוחזרים כשהאפליקציה מותקנת. במקרה הצורך, אפשר לבקש שחזור ידני. | הנתונים משוחזרים כשהאפליקציה מותקנת. המשתמשים יכולים לבחור מתוך רשימה של מערכי נתונים לגיבוי, אם יש כמה מערכי נתונים. |
| מסמכים | גיבוי של צמדי מפתח/ערך באמצעות Android Backup Service | גיבוי נתוני משתמשים באמצעות גיבוי אוטומטי |
מידע נוסף על אופן הגיבוי והשחזור של כל שירות מופיע במאמר בדיקת הגיבוי והשחזור.