आप से प्रदर्शन पर जानकारी प्राप्त कर सकते DisplayMetrics struct:
DisplayMetrics metrics = getResources().getDisplayMetrics();
हालांकि एंड्रॉइड एक प्रत्यक्ष पिक्सेल मैपिंग का उपयोग नहीं करता है, लेकिन यह एक मुट्ठी भर मात्रा में घनत्व स्वतंत्र पिक्सेल मूल्यों का उपयोग करता है और फिर वास्तविक स्क्रीन आकार के लिए स्केल करता है। तो metrics.densityDpi
संपत्ति में से एक होगी DENSITY_xxx
स्थिरांक ( 120
, 160
, 213
, 240
, 320
, 480
या 640
डीपीआई)।
आप की जरूरत है वास्तविक (शायद एक ओपन अनुप्रयोग के लिए) एलसीडी पिक्सेल घनत्व आप से प्राप्त कर सकते हैं metrics.xdpi
और metrics.ydpi
क्रमश: क्षैतिज और ऊर्ध्वाधर घनत्व के लिए गुण।
यदि आप 4. से पहले एपीआई स्तर को लक्षित कर रहे हैं, तो metrics.density
संपत्ति संदर्भ घनत्व (160 डीपीआई) से एक अस्थायी बिंदु स्केलिंग कारक है। अब प्रदान किए गए समान मूल्य की metrics.densityDpi
गणना की जा सकती है
int densityDpi = (int)(metrics.density * 160f);
getDisplayMetrics().xdpi
, जो डिवाइस के वास्तविक डीपीआई को वापस करना है। कृपया ध्यान दें कि यह मान निर्माताओं द्वारा उपकरणों के पार लगातार सही तरीके से सेट नहीं किया गया है, इसलिए आप बस उनका उपयोग नहीं कर सकते । दु: खद लेकिन सच: असली डीपीआई के बारे में जानकारी उपलब्ध नहीं है । स्रोत: groups.google.com/d/msg/android-developers/g56jV0Hora0/...