बिटमैप मैनेज करना

लिखने की सुविधा आज़माएं
Android के लिए, Jetpack Compose को यूज़र इंटरफ़ेस (यूआई) टूलकिट के तौर पर इस्तेमाल करने का सुझाव दिया जाता है. Compose में ग्राफ़िक दिखाने का तरीका जानें.

Android ऐप्लिकेशन में बिटमैप लोड करना मुश्किल होता है. इसकी कई वजहें हैं:

  • बिटमैप, ऐप्लिकेशन के मेमोरी बजट को बहुत आसानी से खत्म कर सकते हैं. उदाहरण के लिए, Pixel फ़ोन का कैमरा, 4048x3036 पिक्सल (12 मेगापिक्सल) तक की फ़ोटो लेता है. अगर इस्तेमाल किया गया बिटमैप कॉन्फ़िगरेशन ARGB_8888 है, तो Android 2.3 (एपीआई लेवल 9) और इसके बाद के वर्शन के लिए डिफ़ॉल्ट रूप से, एक फ़ोटो को मेमोरी में लोड करने में करीब 48 एमबी मेमोरी लगती है (4048*3036*4 बाइट). मेमोरी की इतनी ज़्यादा ज़रूरत होने पर, ऐप्लिकेशन के लिए उपलब्ध पूरी मेमोरी तुरंत इस्तेमाल की जा सकती है.
  • यूज़र इंटरफ़ेस (यूआई) थ्रेड पर बिटमैप लोड करने से, आपके ऐप्लिकेशन की परफ़ॉर्मेंस खराब हो सकती है. इसकी वजह से, ऐप्लिकेशन धीरे-धीरे काम करता है या एएनआर की गड़बड़ी वाले मैसेज भी दिख सकते हैं. इसलिए, बिटमैप के साथ काम करते समय थ्रेडिंग को सही तरीके से मैनेज करना ज़रूरी है.
  • अगर आपका ऐप्लिकेशन मेमोरी में कई बिटमैप लोड कर रहा है, तो आपको मेमोरी और डिस्क कैशिंग को बेहतर तरीके से मैनेज करना होगा. ऐसा न करने पर, आपके ऐप्लिकेशन के यूज़र इंटरफ़ेस (यूआई) की परफ़ॉर्मेंस पर असर पड़ सकता है.

ज़्यादातर मामलों में, हमारा सुझाव है कि आप अपने ऐप्लिकेशन में बिटमैप फ़ेच करने, डिकोड करने, और दिखाने के लिए Glide लाइब्रेरी का इस्तेमाल करें. Glide, Android पर बिटमैप और अन्य इमेज के साथ काम करने से जुड़े इन और अन्य टास्क को मैनेज करने की जटिलता को कम करता है. Glide का इस्तेमाल करने और इसे डाउनलोड करने के बारे में जानकारी पाने के लिए, GitHub पर Glide रिपॉज़िटरी पर जाएं.

आपके पास Android फ़्रेमवर्क में पहले से मौजूद लोअर-लेवल एपीआई के साथ सीधे काम करने का विकल्प भी होता है. इसके बारे में ज़्यादा जानने के लिए, बड़े बिटमैप को असरदार तरीके से लोड करना, बिटमैप को कैश मेमोरी में सेव करना, और बिटमैप मेमोरी मैनेज करना लेख पढ़ें.

ज़्यादा संसाधन