פרופילי צריכת חשמל ל-Android

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

נתונים סטטיסטיים של השימוש בסוללה

המסגרת קובעת באופן אוטומטי את נתוני השימוש בסוללה על ידי מעקב אחר משך הזמן שרכיבי המכשיר נמצאים במצבים שונים. כשרכיבים (ערכת שבבים של Wi-Fi, רדיו סלולרי, Bluetooth,‏ GPS, מסך, CPU) משנים מצבים (מושבת/מופעל, סרק/הספק מלא, בהירות נמוכה/גבוהה וכו'), שירות הבקרה מדווח לשירות BatteryStats של המסגרת. הכלי BatteryStats אוסף מידע לאורך זמן ושומר אותו לשימוש אחרי הפעלה מחדש. השירות לא עוקב ישירות אחרי צריכת הזרם של הסוללה, אלא אוסף נתוני תזמון שאפשר להשתמש בהם כדי להעריך את צריכת הסוללה של רכיבים שונים.

המסגרת אוספת נתונים סטטיסטיים באמצעות השיטות הבאות:

  • Push. שירותים שמודעים לשינויים ברכיבים מעבירים שינויים במצב לשירות BatteryStats.
  • Pull. לרכיבים כמו השימוש במעבד על ידי אפליקציות, המסגרת שולפת את הנתונים באופן אוטומטי בנקודות מעבר (כמו התחלה או הפסקה של פעילות) כדי ליצור תמונת מצב.

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

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

המסגרת מטפלת בנתונים הסטטיסטיים של השימוש בסוללה באופן מלא, ולא נדרשים שינויים של יצרן ציוד מקורי (OEM).

ערכים של פרופיל צריכת חשמל

זהירות: יצרני מכשירים צריכים לספק פרופיל צריכת חשמל של רכיב שמגדיר את ערך צריכת הזרם של הרכיב ואת ניקוז הסוללה המשוער שנגרם על ידי הרכיב לאורך זמן. הפרופיל הזה מוגדר ב-platform/frameworks/base/core/res/res/xml/power_profile.xml. הסבר על ההגדרות האלה מופיע במאמר ערכי עוצמה.

בפרופיל צריכת החשמל, צריכת החשמל מצוינת במיליאמפר (mA) של זרם בנקודת מתח נומינלית, ויכולה להיות ערך חלקי שמצוין במיקרואמפר (uA). הערך צריך להיות צריכת הזרם בסוללה במיליאמפר (mA), ולא ערך שמתייחס למסילת מתח שלא תואמת לזרם שנצרך מהסוללה.

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

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