ניהול צריכת החשמל

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

‫Android כולל את השיפורים הבאים בחיי הסוללה:

  • הגבלות על אפליקציות. הפלטפורמה יכולה להציע אפליקציות שמשפיעות לרעה על חיי הסוללה, כדי שהמשתמשים יוכלו להגביל את האפליקציות האלה ולמנוע מהן לצרוך משאבים. כברירת מחדל, אין הגבלה על אפליקציות ברקע.
  • אפליקציה במצב המתנה. הפלטפורמה יכולה להעביר אפליקציות שלא נמצאות בשימוש למצב המתנה של האפליקציה, ולהגביל באופן זמני את הגישה לרשת ולדחות את הסנכרונים והעבודות של האפליקציות האלה.
  • מצב שינה. יכול להיות שהפלטפורמה תעבור למצב שינה עמוקה (ותחזור מדי פעם לפעולה רגילה) אם המשתמשים לא השתמשו באופן פעיל במכשיר שלהם (המסך כבוי והמכשיר לא זז) במשך תקופות ארוכות. ב-Android 7.0 ואילך, מצב שינה (Doze) מופעל גם כשמשתמשים מכבים את המסך של המכשיר אבל ממשיכים לנוע. במצב הזה מופעלות רק חלק מהאופטימיזציות.
  • הגבלת העברת החשמל במהלך גיבוי ושחזור באמצעות USB. כשמבצעים גיבוי או שחזור באמצעות USB, צריך להגדיר את השיטה enableLimitPowerTransfer של המחלקה UsbPort לערך true כדי להשבית את הטעינה ולהגביל את אספקת החשמל. כדי לוודא שההספק מוגבל, מתקשרים לשיטת isPowerTransferLimited של המחלקה UsbPortStatus. כאשר isPowerTransferLimited הוא true, מכשיר Android מפחית את צריכת החשמל כצרכן ל-0 (או לערך הנמוך ביותר האפשרי שמותר על ידי החומרה) ומגביל את הזרם מהמקור ל-0. אפשר לאכוף הגבלה של אספקת החשמל מהמקור רק אם שני השותפים של היציאה תומכים במפרט של אספקת חשמל בחיבור USB‏ (PD). כדי להחזיר את השימוש בחשמל למצב ברירת המחדל, מגדירים את enableLimitPowerTransfer ל-false. מצב ברירת המחדל מוחזר גם כשכבל ה-USB מנותק.
  • חריגים. אפליקציות מערכת שנטענו מראש ושירותי הודעות בענן בדרך כלל מוחרגים כברירת מחדל ממצב המתנה של אפליקציות וממצב שינה. מפתחי אפליקציות יכולים להשתמש ב-intents כדי להחיל את ההגדרות האלה על האפליקציות שלהם. המשתמשים יכולים להחריג אפליקציות ממצב המתנה של האפליקציה וממצב שינה לחיסכון בסוללה בתפריט ההגדרות.
  • מכשירי מעקב. הכלים למעקב אחרי התנהגות האפליקציה ברקע עוקבים אחרי השימוש בסוללה של האפליקציות בחזית וברקע, כדי לקבוע אם האפליקציות מפרות מדיניות מסוימת.

אפליקציות מוחרגות

אפשר להחריג אפליקציות כך שלא יחול עליהן מצב שינה או מצב המתנה של האפליקציה. יכול להיות שיהיה צורך בפטורים בתרחישי השימוש הבאים:

  • יצרני מכשירים שמשתמשים בפלטפורמה להעברת הודעות בענן שאינה העברת הודעות בענן ב-Firebase ‏ (FCM)
  • ספק סלולר שמשתמש בפלטפורמה להעברת הודעות בענן שאינה FCM
  • אפליקציית צד שלישי שמשתמשת בפלטפורמה להעברת הודעות בענן שאינה FCM

אזהרה: אל תפטורו אפליקציות מבדיקה ומאופטימיזציה. פטורים מיותרים פוגעים ביתרונות של Doze ושל מצב המתנה של האפליקציה, ועלולים לפגוע בחוויית המשתמש. לכן אנחנו ממליצים לצמצם את הפטורים האלה ככל האפשר, כי הם מאפשרים לאפליקציות לעקוף אמצעי בקרה מועילים שיש לפלטפורמה על השימוש בסוללה. אם המשתמשים לא מרוצים מצריכת החשמל של האפליקציות האלה, זה עלול להוביל לתסכול, לחוויה גרועה (ולביקורות שליליות על האפליקציה) ולשאלות לתמיכת הלקוחות. לכן, אנחנו ממליצים מאוד לא להחריג אפליקציות של צד שלישי, אלא להחריג רק שירותים של העברת הודעות בענן או אפליקציות עם פונקציות דומות.

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

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