बैटरी उपयोग की जानकारी बैटरी उपयोग के आंकड़ों और पावर प्रोफाइल मूल्यों से ली गई है।
बैटरी उपयोग के आँकड़े
फ़्रेमवर्क स्वचालित रूप से बैटरी उपयोग के आँकड़ों को ट्रैक करके निर्धारित करता है कि विभिन्न राज्यों में डिवाइस के घटक कितने समय तक खर्च करते हैं। घटकों के रूप में (वाई-फाई चिपसेट, सेलुलर रेडियो, ब्लूटूथ, जीपीएस, डिस्प्ले, सीपीयू) राज्यों को बदलते हैं (बंद/चालू, निष्क्रिय/पूर्ण शक्ति, कम/उच्च चमक, आदि), नियंत्रक सेवा फ्रेमवर्क बैटरीस्टैट्स सेवा को रिपोर्ट करती है। बैटरीस्टैट्स समय के साथ जानकारी एकत्र करता है और इसे रीबूट में उपयोग के लिए संग्रहीत करता है। सेवा सीधे बैटरी करंट ड्रा को ट्रैक नहीं करती है, बल्कि समय की जानकारी एकत्र करती है जिसका उपयोग विभिन्न घटकों द्वारा बैटरी की खपत का अनुमान लगाने के लिए किया जा सकता है।
ढांचा निम्नलिखित विधियों का उपयोग करके आंकड़े एकत्र करता है:
- धक्का । घटक परिवर्तनों से अवगत सेवाएं बैटरीस्टैट्स सेवा में स्थिति परिवर्तन को धक्का देती हैं।
- खींचो । ऐप्स द्वारा उपयोग किए जाने वाले CPU जैसे घटकों के लिए, फ्रेमवर्क स्वचालित रूप से स्नैपशॉट लेने के लिए डेटा को संक्रमण बिंदुओं (जैसे किसी गतिविधि को शुरू करना या रोकना) पर खींचता है।
संसाधन की खपत संसाधन का उपयोग करने वाले एप्लिकेशन से जुड़ी है। जब कई एप्लिकेशन एक साथ एक संसाधन का उपयोग करते हैं (जैसे कि वैकलॉक जो सिस्टम को निलंबित होने से रोकते हैं), फ्रेमवर्क उन अनुप्रयोगों में खपत फैलाता है, हालांकि जरूरी नहीं कि समान रूप से।
शटडाउन घटना के लिए उपयोग के आंकड़ों को खोने से बचने के लिए, जो बैटरी बिजली की खपत की समस्याओं का संकेत दे सकता है (यानी शटडाउन होता है क्योंकि बैटरी शून्य शेष क्षमता तक पहुंच जाती है), फ्रेमवर्क लगभग हर 30 मिनट में आंकड़े फ्लैश करता है।
बैटरी उपयोग के आंकड़े पूरी तरह से ढांचे द्वारा नियंत्रित किए जाते हैं और उन्हें OEM संशोधनों की आवश्यकता नहीं होती है।
पावर प्रोफ़ाइल मान
सावधानी: डिवाइस निर्माताओं को एक घटक पावर प्रोफ़ाइल प्रदान करनी चाहिए जो घटक के लिए वर्तमान खपत मूल्य और समय के साथ घटक के कारण अनुमानित बैटरी नाली को परिभाषित करती है। इस प्रोफ़ाइल को platform/frameworks/base/core/res/res/xml/power_profile.xml में परिभाषित किया गया है। इन सेटिंग्स पर मार्गदर्शन के लिए, पावर वैल्यू देखें।
पावर प्रोफाइल के भीतर, बिजली की खपत नाममात्र वोल्टेज पर वर्तमान ड्रॉ के मिलीमीटर (एमए) में निर्दिष्ट होती है और माइक्रोएम्प्स (यूए) में निर्दिष्ट एक आंशिक मान हो सकती है। मान बैटरी में खपत होने वाला mA होना चाहिए, न कि पावर रेल पर लागू होने वाला मान जो बैटरी से खपत होने वाले करंट के अनुरूप नहीं है।
उदाहरण के लिए, एक डिस्प्ले पावर प्रोफाइल न्यूनतम चमक और अधिकतम चमक पर डिस्प्ले को चालू रखने के लिए आवश्यक वर्तमान के एमए को निर्दिष्ट करता है। डिस्प्ले को चालू रखने के लिए पावर कॉस्ट (यानी डिस्प्ले कंपोनेंट द्वारा निकाली गई बैटरी) को निर्धारित करने के लिए, फ्रेमवर्क प्रत्येक ब्राइटनेस लेवल पर बिताए गए समय को ट्रैक करता है, फिर उस समय अंतराल को इंटरपोलेटेड डिस्प्ले ब्राइटनेस कॉस्ट से गुणा करता है।
सीपीयू को एक विशिष्ट गति से चलाने के लिए आवश्यक एमए द्वारा फ्रेमवर्क प्रत्येक एप्लिकेशन के लिए सीपीयू समय को भी गुणा करता है। यह गणना सीपीयू कोड (अग्रभूमि ऐप के रूप में समय और पृष्ठभूमि गतिविधि सहित कुल समय को अलग से रिपोर्ट किया जाता है) निष्पादित करके एक एप्लिकेशन कितनी बैटरी खपत करता है, इसकी तुलनात्मक रैंकिंग स्थापित करता है।
,बैटरी उपयोग की जानकारी बैटरी उपयोग के आंकड़ों और पावर प्रोफाइल मूल्यों से ली गई है।
बैटरी उपयोग के आँकड़े
फ़्रेमवर्क स्वचालित रूप से बैटरी उपयोग के आँकड़ों को ट्रैक करके निर्धारित करता है कि विभिन्न राज्यों में डिवाइस के घटक कितने समय तक खर्च करते हैं। घटकों के रूप में (वाई-फाई चिपसेट, सेलुलर रेडियो, ब्लूटूथ, जीपीएस, डिस्प्ले, सीपीयू) राज्यों को बदलते हैं (बंद/चालू, निष्क्रिय/पूर्ण शक्ति, कम/उच्च चमक, आदि), नियंत्रक सेवा फ्रेमवर्क बैटरीस्टैट्स सेवा को रिपोर्ट करती है। बैटरीस्टैट्स समय के साथ जानकारी एकत्र करता है और इसे रीबूट में उपयोग के लिए संग्रहीत करता है। सेवा सीधे बैटरी करंट ड्रा को ट्रैक नहीं करती है, बल्कि समय की जानकारी एकत्र करती है जिसका उपयोग विभिन्न घटकों द्वारा बैटरी की खपत का अनुमान लगाने के लिए किया जा सकता है।
ढांचा निम्नलिखित विधियों का उपयोग करके आंकड़े एकत्र करता है:
- धक्का । घटक परिवर्तनों से अवगत सेवाएं बैटरीस्टैट्स सेवा में स्थिति परिवर्तन को धक्का देती हैं।
- खींचो । ऐप्स द्वारा उपयोग किए जाने वाले CPU जैसे घटकों के लिए, फ्रेमवर्क स्वचालित रूप से स्नैपशॉट लेने के लिए डेटा को संक्रमण बिंदुओं (जैसे किसी गतिविधि को शुरू करना या रोकना) पर खींचता है।
संसाधन की खपत संसाधन का उपयोग करने वाले एप्लिकेशन से जुड़ी है। जब कई एप्लिकेशन एक साथ एक संसाधन का उपयोग करते हैं (जैसे कि वैकलॉक जो सिस्टम को निलंबित होने से रोकते हैं), फ्रेमवर्क उन अनुप्रयोगों में खपत फैलाता है, हालांकि जरूरी नहीं कि समान रूप से।
शटडाउन घटना के लिए उपयोग के आंकड़ों को खोने से बचने के लिए, जो बैटरी बिजली की खपत की समस्याओं का संकेत दे सकता है (यानी शटडाउन होता है क्योंकि बैटरी शून्य शेष क्षमता तक पहुंच जाती है), फ्रेमवर्क लगभग हर 30 मिनट में आंकड़े फ्लैश करता है।
बैटरी उपयोग के आंकड़े पूरी तरह से ढांचे द्वारा नियंत्रित किए जाते हैं और उन्हें OEM संशोधनों की आवश्यकता नहीं होती है।
पावर प्रोफ़ाइल मान
सावधानी: डिवाइस निर्माताओं को एक घटक पावर प्रोफ़ाइल प्रदान करनी चाहिए जो घटक के लिए वर्तमान खपत मूल्य और समय के साथ घटक के कारण अनुमानित बैटरी नाली को परिभाषित करती है। इस प्रोफ़ाइल को platform/frameworks/base/core/res/res/xml/power_profile.xml में परिभाषित किया गया है। इन सेटिंग्स पर मार्गदर्शन के लिए, पावर वैल्यू देखें।
पावर प्रोफाइल के भीतर, बिजली की खपत नाममात्र वोल्टेज पर वर्तमान ड्रॉ के मिलीमीटर (एमए) में निर्दिष्ट होती है और माइक्रोएम्प्स (यूए) में निर्दिष्ट एक आंशिक मान हो सकती है। मान बैटरी में खपत होने वाला mA होना चाहिए, न कि पावर रेल पर लागू होने वाला मान जो बैटरी से खपत होने वाले करंट के अनुरूप नहीं है।
उदाहरण के लिए, एक डिस्प्ले पावर प्रोफाइल न्यूनतम चमक और अधिकतम चमक पर डिस्प्ले को चालू रखने के लिए आवश्यक वर्तमान के एमए को निर्दिष्ट करता है। डिस्प्ले को चालू रखने के लिए पावर कॉस्ट (यानी डिस्प्ले कंपोनेंट द्वारा निकाली गई बैटरी) को निर्धारित करने के लिए, फ्रेमवर्क प्रत्येक ब्राइटनेस लेवल पर बिताए गए समय को ट्रैक करता है, फिर उस समय अंतराल को इंटरपोलेटेड डिस्प्ले ब्राइटनेस कॉस्ट से गुणा करता है।
सीपीयू को एक विशिष्ट गति से चलाने के लिए आवश्यक एमए द्वारा फ्रेमवर्क प्रत्येक एप्लिकेशन के लिए सीपीयू समय को भी गुणा करता है। यह गणना सीपीयू कोड (अग्रभूमि ऐप के रूप में समय और पृष्ठभूमि गतिविधि सहित कुल समय को अलग से रिपोर्ट किया जाता है) निष्पादित करके एक एप्लिकेशन कितनी बैटरी खपत करता है, इसकी तुलनात्मक रैंकिंग स्थापित करता है।