प्रोफ़ाइलिंग

प्रोफ़ाइलिंग मॉड्यूल को Android 16 में पेश किया गया था. इससे ऐप्लिकेशन, फ़ील्ड में सार्वजनिक डिवाइसों पर Perfetto का इस्तेमाल करके प्रोफ़ाइलिंग डेटा इकट्ठा कर सकते हैं.

  • ऐप्लिकेशन, Java हीप डंप, हीप प्रोफ़ाइल, स्टैक सैंपलिंग या सिस्टम ट्रेस का इस्तेमाल करके प्रोफ़ाइलिंग का अनुरोध कर सकते हैं. साथ ही, हर ऐप्लिकेशन के लिए कुछ कॉन्फ़िगरेशन सेट कर सकते हैं.
  • ऐप्लिकेशन, कुछ इवेंट के ट्रेस पाने में दिलचस्पी दिखा सकते हैं. साथ ही, सिस्टम ऐप्लिकेशन के लिए ट्रेसिंग शुरू और बंद कर सकता है.
  • नतीजों में मौजूद जानकारी को छिपा दिया जाता है, ताकि सिर्फ़ अनुरोध करने की प्रोसेस से जुड़ी जानकारी शामिल हो. इसके बाद, ऐप्लिकेशन के स्टोरेज डायरेक्ट्री में नतीजे डिलीवर किए जाते हैं, ताकि ऐप्लिकेशन उन्हें आगे प्रोसेस कर सके.
  • अनुरोधों की दर सीमित होती है और उन्हें पूरा करने की गारंटी नहीं होती.

मॉड्यूल की सीमा

  • प्रोफ़ाइलिंग मेनलाइन एपेक्स - com.google.android.profiling:
    • प्रोफ़ाइलिंग एपीआई की सतह (Java):
      • कोड की जगह: packages/modules/Profiling/framework
      • प्रोसेस: boot_class_path
    • ProfilingService (Java):
      • कोड की जगह: packages/modules/Profiling/service
      • प्रोसेस: system_server

पैकेज का फ़ॉर्मैट

प्रोफ़ाइलिंग मॉड्यूल, APEX पैकेज (com.google.android.profiling) के तौर पर शिप होता है. इस मॉड्यूल में दो JAR फ़ाइलें होती हैं:

  • framework-profiling.jar: इसमें वह एपीआई सर्फ़ेस होता है जिससे कॉलर इंटरैक्ट करता है. यह बूटक्लाथपाथ का हिस्सा है.
  • service-profiling.jar: इसमें एक नई सिस्टम सर्विस, ProfilingService शामिल है. इसे सिस्टम सर्वर प्रोसेस से लोड किया जाता है.

डिपेंडेंसी

इस मॉड्यूल की कोई बाहरी डिपेंडेंसी नहीं है.