ביצוע עבודה ברקע הוא חלק חשוב ביצירת אפליקציות מודרניות ל-Android שהן רספונסיביות, יעילות ומתנהלות בצורה טובה במכשיר של המשתמש. משימות ברקע כוללות כל משימה שהאפליקציה צריכה לבצע כשהיא לא מוצגת בחזית, כמו אחזור נתונים משרת או עיבוד תמונות.

כדי ליצור אפליקציות עמידות שפועלות היטב בכל המכשירים, חשוב להבין את המורכבות של הרצת אפליקציות ברקע.

תחילת העבודה עם Background Work

כדאי לעיין במדריך לבחירת ה-API המתאים לעבודה ברקע לתרחיש השימוש שלכם, ולשקול את הבחירה בהקשר של התהליך ומחזור החיים של האפליקציה ב-Android.
מדריך
בחירת ה-API הנכון לעבודה ברקע יכולה להיות מורכבת. בדף הזה מוסבר מתי כדאי להשתמש בעבודה אסינכרונית, ב-WorkManager, בשירותים של אפליקציות שפועלות ברקע או באפשרות חלופית. כדאי ללמוד איזה API הכי מתאים לתרחיש השימוש הספציפי שלכם.
מדריך
הסבר על מושגי הבסיס של מחזור החיים של תהליך Android ואיך הוא משפיע על התנהגות האפליקציה ועל ניהול המשאבים שלה. כאן מוסבר איך המערכת מנהלת תהליכי אפליקציות על סמך מצב הפעילות, כדי שתוכלו לתכנן אפליקציות יעילות ועמידות שמגיבות בצורה חלקה לסגירות שהמערכת יוזמת.

מושגים מרכזיים

חלק מממשקי ה-API והכלים הנפוצים יותר לביצוע עבודה ברקע כוללים את WorkManager, שירותים ברקע, התראות ושידורים. לכל פתרון יהיו השלכות שונות על חיי הסוללה של המכשירים של המשתמשים.
‫WorkManager הוא הפתרון המומלץ לעבודה מתמשכת ברקע ב-Android. במאמר הזה נסביר איך להשתמש בספרייה המתקדמת הזו כדי לתזמן משימות שנשמרות גם אחרי הפעלה מחדש של האפליקציה ושל המכשיר, ונסקור את התכונות העיקריות שלה לטיפול באילוצים ובמדיניות גמישה של ניסיונות חוזרים.
שירותים שפועלים בחזית מספקים דרך יעילה להפעיל משימות באופן מיידי, בלי שהן יופרעו. כאן מוסבר מתי ואיך להצהיר על שירות שפועל בחזית, להפעיל אותו ולעצור אותו באמצעות התראה קבועה, כדי לוודא שהאפליקציה מבצעת משימות קריטיות בלי שהמערכת תסגור אותה.
התראות הן כלי חשוב לתזמון של עבודה שמבוססת על זמן. בדף הזה מוסבר איך להשתמש ב-AlarmManager כדי לתזמן התראות מדויקות ולא מדויקות למשימות שצריכות לפעול בזמן ספציפי או בטווח זמן מסוים, גם כשהאפליקציה לא פועלת. בנוסף, מוסברות שיטות מומלצות לניהול התראות ולוודא שהן מותאמות לחיי הסוללה.
כאן מוסבר איך לשלוח ולקבל שידורים כדי לטפל באירועי מערכת ובהודעות מאפליקציות אחרות. בנוסף, תלמדו על מקלטים שרשומים בהקשר ומקלטים שמוצהרים במניפסט, ועל ההגבלות המודרניות של המערכת שחלות עליהם.

הדרכה ברקע לפי תרחיש שימוש

הפתרון הנכון משתנה בהתאם לתרחיש לדוגמה. מערכת Android מספקת ממשקי API רבים שספציפיים למשימות, שעברו אופטימיזציה לתרחישים מסוימים, ולרוב יובילו לחיסכון גדול יותר בצריכת החשמל ולפחות הגבלות מאשר שימוש ב-WorkManager ובשירותים שפועלים בחזית.

בקטע הזה מפורטים כמה תרחישי שימוש נפוצים והפתרון המומלץ לכל אחד מהם.

ברוב תרחישי השימוש נדרשת גישה למיקום רק כשהמשתמש מקיים אינטראקציה עם האפליקציה. עם זאת, אם האפליקציה שלכם צריכה לגשת למיקום ברקע, אתם צריכים להשתמש ב-API של ספק המיקום המשולב. אפשר להשתמש ב-API הזה כדי לקבל את המיקום האחרון הידוע ששמור במטמון, או לבקש עדכוני מיקום תקופתיים.
כדי לעדכן את GlanceAppWidgets ביעילות כשהאפליקציה פועלת ברקע, משתמשים בשיטת העדכון.
האפליקציה משתמשת ב-Bluetooth עם צריכת אנרגיה נמוכה (BLE) כדי לתקשר עם מכשירים היקפיים ברקע. כאן מוסבר איך לסרוק מכשירים, להתחבר אליהם ולשמור על חיבור קבוע אליהם, תוך הקפדה על ההגבלות ברמת המערכת וחיסכון בסוללה.
כדי לעקוב אחרי צעדים במכשירים ניידים, כדאי לקרוא את הצעדים מ-Health Connect, מאגר הנתונים של Android לנתוני בריאות וכושר.
למשימות ברקע שהמשתמש יזם וכוללות העברת נתונים (כולל הורדה והעלאה) ושמטרתן לעדכן את המשתמש לגבי ההתקדמות, צריך להשתמש בסוג User-Initiated-Data Transfer Job. סוג העבודה הזה מותאם להעברות נתונים ארוכות, והמערכת מעניקה לו עדיפות.
כדי לתמוך בהפעלה ברקע כשהאפליקציה לא מוצגת למשתמש, צריך להשתמש בספריית Media3.

הסבר על אופטימיזציות של צריכת חשמל

כדי ליצור אפליקציות Android איכותיות, חשוב לקחת בחשבון את ההשפעות של עבודת הרקע על צריכת החשמל. הוא מאפשר לכם ליצור אפליקציות עמידות יותר וחסכוניות יותר בסוללה, כי אתם מבינים איך המערכת מנהלת את המשאבים. אופטימיזציה של צריכת החשמל מפחיתה את ניקוז הסוללה, מונעת את סגירת האפליקציה על ידי המערכת ומשפרת את חוויית המשתמש.
מדריך

המערכת נותנת עדיפות לבקשות של אפליקציות למשאבים על סמך מצב המכשיר, מצב האפליקציה וסיווג האפליקציה לדלי במצב המתנה.

מידע נוסף על האופן שבו האפליקציה יכולה לפעול במסגרת המגבלות של משאבי ניהול צריכת החשמל במכשיר, כדי לבצע עבודה ברקע באופן מהימן.

מדריך
יכול להיות שהאפליקציה שלכם צריכה למנוע מהמעבד של המכשיר להיכנס למצב השהיה כדי להשלים פעולות קריטיות. המדריך הזה יעזור לכם לבחור את השיטות המתאימות ביותר כדי שהמכשיר יישאר פעיל.
מדריך
כאן מוסבר איך להתאים את האפליקציה למצב שינה ולמצב המתנה של האפליקציה כדי לשפר את יעילות הסוללה ולשפר את חוויית המשתמש. הבנה של מצבי החיסכון באנרגיה האלה תעזור לכם לוודא שהאפליקציה פועלת בצורה אופטימלית, תוך צמצום ההשפעה שלה על חיי הסוללה של המכשיר.
מדריך
החל מ-Android 9, למכשירים יש תכונות לניהול צריכת החשמל שמשפיעות על כל האפליקציות. כאן מוסבר איך לבדוק את האפליקציה כדי לוודא שהיא פועלת בצורה תקינה בכל המכשירים, כולל עם תכונות כמו חיסכון בסוללה, דליים של אפליקציות במצב המתנה והגבלות על פעילות ברקע.

החדשות האחרונות