दिलचस्प पोस्ट
AngularJS अनुप्रयोग फ़ाइल संरचना प्रारंभिक त्रुटि में अपवाद विशिष्ट पथ के लिए Intent.ACTION_PICK का उपयोग करना कॉल स्टेटस बार में (बाधाओं को संतुष्ट करने में असमर्थ) ट्विटर बूटस्ट्रैप – शीर्ष एनएवी बार पृष्ठ की शीर्ष सामग्री को अवरुद्ध कर रहा है क्या अधिक कुशल है: शब्दकोश TryGetValue या ContainsKey + Item? एंटरप्राइज़ एप तैनाती आईओएस 8.1.3 पर स्थापित नहीं है पायथन में सप्ताह संख्या कैसे प्राप्त करें? एक स्विफ्ट फ़्रेमवर्क में कॉमन क्रिप्टो को आयात करना डिवाइस पर आईओएस ऐप को अनइंस्टॉल करने के बाद IOS में पहचानकर्ताफ़ोरेवेंडर को कैसे संरक्षित करें? क्रम के साथ numpy.unique संरक्षित ऑब्जेक्ट के लिए xml deserialize कैसे करें प्रमाणीकरण संवाद पर पुनर्निर्देशित करना – "एक त्रुटि हुई। बाद में पुन: प्रयास करें" टेक्स्ट चौड़ाई की गणना करना जावा: पूर्णांक बराबर बनाम ==

एकाधिक स्क्रीन का समर्थन करने के लिए एप्लिकेशन कंकाल

जैसा कि हम जानते हैं कि एंड्रॉइड विभिन्न डिवाइसों के साथ आ रहा है, जिसमें विभिन्न फीचर्स, रिज़ॉल्यूशन और स्क्रीन साइज है, जबकि एक एप्लिकेशन को विकसित करते हुए, जो कि एकाधिक (छोटे और बड़े) स्क्रीन का समर्थन करता है, आकार और लेआउट का एक बाधा है।

यह स्क्रीन आकार, संकल्प और डीपीआई के विभिन्न संयोजनों की ओर जाता है और जब Android उपकरणों के लिए डिज़ाइन और विकसित करने में काफी चुनौती पैदा होती है। जबकि कुछ अन्य निर्माता (गैर एंड्रॉइड) के पास अलग-अलग प्रस्तावों और डीपीआई हैं, वे समान स्क्रीन आकार साझा करते हैं और रिज़ॉल्यूशन समान पहलू अनुपात का पालन करते हैं। इसलिए, एक छवि को गैर एंड्रॉइड डिवाइसों में फिट करने के लिए बनाया जा सकता है

मेरा प्रश्न यह है कि क्या कोई उचित प्रवाह या वास्तुकला है, जिसकी आवश्यकता को पूरा करने के लिए एक का पालन करना चाहिए?

यहां छवि विवरण दर्ज करें

याद रखें कि हमारे पास अलग आकार और संकल्प के गोलियां हैं।

मुझे पता है कि एंड्रॉइड डेवलपर में यह जानकारी है लेकिन मेरा विचार कार्यान्वयन से है।

मेरे ज्ञान से जो मुझे समझा गया वह है कि एंड्रॉइड ग्राफिक्स डिजाइन करने के लिए प्रोग्रामर को डिजाइनिंग अवधारणा का पता होना चाहिए।

Solutions Collecting From Web of "एकाधिक स्क्रीन का समर्थन करने के लिए एप्लिकेशन कंकाल"

आखिरकार एक ऐसी संरचना बनाई गई जो कई स्क्रीन के लिए लेआउट और आइकन को संभालती है।

एंड्रॉइड सामान्य रूप से दो मापदंडों के आधार पर श्रेणियों में डिवाइस प्रदर्शित करता है:

  • स्क्रीन आकार, प्रदर्शन का भौतिक आकार (तिरछे मापा गया)
  • स्क्रीन घनत्व, प्रदर्शन का भौतिक पिक्सेल घनत्व (पिक्सेल-प्रति इंच, या पीपीआई में) `

स्क्रीन आकार और घनत्व को शीघ्रता से निर्धारित करने के लिए, कृपया एंड्रॉइड के लिए " मेरा आकार " ऐप इंस्टॉल करें।

स्क्रीन का आकार

एंड्रॉइड चार सामान्यीकृत स्क्रीन आकारों को परिभाषित करता है:


  Qualifier Size small ~3 inches (approx) normal ~4 inches (approx) large Exceeds 4 inches xlarge Exceeds 7 inches 
  • अधिकांश फोन छोटे या सामान्य (लगभग 3 से 4 इंच तिरछे) के रूप में वर्गीकृत किए जाते हैं। लेकिन अब, बड़ी स्क्रीन वाले कई फोन हैं जैसे कि गैलेक्सी एस 4, एचटीसी वन, एक्सपीरिया जेड
  • सैमसंग गैलेक्सी टैब की तरह एक छोटा टैबलेट बड़े (4 इंच से बड़ा) के रूप में वर्गीकृत है
  • बड़े-बड़े बड़े उपकरणों पर लागू होता है, उदाहरण के लिए बड़ी गोलियाँ

एंड्रॉइड चार सामान्यीकृत स्क्रीन घनत्व को परिभाषित करता है:


  Qualifier Description Nominal value ldpi low density 120 ppi mdpi medium density 160 ppi hdpi high density 240 ppi xhdpi extra high density 320 ppi 

आमतौर पर:

  • स्क्रीन आकार का आपके ऐप लेआउट पर सबसे अधिक प्रभाव है
  • स्क्रीन घनत्व का आपकी छवि और ग्राफिक संसाधनों पर सबसे अधिक प्रभाव पड़ता है

यह यहाँ डिवाइस स्क्रीन के प्रतिशत में अंतर सूचीबद्ध है

  • एलडीपीआई- 75%
  • एमडीपीआई- 100% (एंड्रॉइड डेवलपर साइट के अनुसार आधार)
  • एचडीपीआई- 150%
  • एक्सएचडीपीआई- 200%

यहां छवि विवरण दर्ज करें

लेकिन जैसा कि अब हम जानते हैं कि 480×800 के साथ आने वाले अधिकांश डिवाइस हैं, इसलिए मैं इस पर आधारित डिवाइस के रूप में विचार कर रहा हूं, इसलिए हमारी नई गणना इस तरह की जाएगी

  • एलडीपीआई- 50%
  • एमडीपीआई- 66.67%
  • एचडीपीआई- 100%
  • एक्सएचडीपीई- 133.33%

जिसका अर्थ है कि पहले आइकन और डिजाइन केवल 480X800 के लिए और फिर बाकी वाले (यानी एलडीपीआई, एमडीपीआई, एक्सएचडीपीआई) के लिए बनाया जाएगा।

ऐसी छवियां हैं जो सभी लेआउट के लिए सामान्य हैं और उन्हें रंग और आकृति में समान होना चाहिए (कोई जटिल आकार, कोई वक्र नहीं) इसलिए इस प्रकार की छवि के लिए हम 9patch बना रहे हैं जो " 9patch (ना-प्रत्यय)" फ़ोल्डर में डाला जा सकता है। 9 पैच छवि बनाने के लिए आप या तो ड्रायइनपैच या बैटरनइनपैच का उपयोग कर सकते हैं

अब बस एंड्रॉइड के मानकों के आधार पर अपनी छवियों का नाम बदलें और hdpi साथ अपने आवेदन को पूरा करें और उसके बाद सिर्फ drawable-hdpi फ़ोल्डर और ओपन एडॉइड फ़ोटोशॉप (अनुशंसित) को कई आकार की क्रिया बनाएं (बस प्रतिशत अनुपात के अनुसार आकार बदल) एक बार सभी के लिए एक्शन बनाई गई आकार तो बस बैच स्वचालित करें और स्रोत (ड्रॉएबल -एचडीपीआई) और गंतव्य (ड्रॉएबल- ldpi, ड्रॉएबल- एमडीपीआई, ड्रॉएबल- xdpi) दें।

कारण मैं आपको फ़ोटोशॉप का उपयोग करने का आग्रह करता हूं क्योंकि यह स्वचालित रूप से क्रियाओं के साथ आपकी छवि का आकार बदलता है और एक और प्लस पॉइंट यह है कि आपको फ़ाइल का नाम बदलने की आवश्यकता नहीं है (यह मूल नाम के रूप में समान नाम देगा)।

एक बार जब आप सभी छवियों का निर्माण पूरा कर लें, तो अपना प्रोजेक्ट रीफ़्रेश करें और इसे जांचें।

कभी-कभी संभावना हो सकती है कि लेआउट जो कि स्क्रीन (xhdpi, hdpi, mdpi) का समर्थन करता है, छोटे स्क्रीन (एलडीपीआई) में कटौती हो सकती है, इसलिए इसे प्रबंधित करने के लिए इसके लिए अलग लेआउट फ़ोल्डर (लेआउट-छोटा) बनाएं और ScrollView (ज्यादातर) । बस।

टैबलेट टैबलेट को दो आकार में वर्गीकृत किया जाता है।

  1. 7 "(1024X (600-48 (नेविगेशन बार))) = 1024X552 (ड्रॉबल-बड़ा)
  2. 10 "(1280X (800-48 (नेविगेशन बार))) = 1280X752 (ड्रॉबल-एक्सलार्ज)

इस में हमें स्क्रीन के लिए छवि बनाने और उन्हें तदनुसार रखनी चाहिए

तो सब कुछ में, हमारे पास इस फ़ोल्डर में एकाधिक स्क्रीन का समर्थन करने के लिए हमारे एप्लिकेशन होंगे।

 drawable drawable-ldpi drawable-mdpi drawable-hdpi drawable-xhdpi drawable-large drawable-xlarge 

Screen size and Screen density साथ अधिक योग्यता वाला संयोजन होगा

 drawable-large-ldpi drawable-large-mdpi drawable-large-hdpi drawable-large-xhdpi 

Screen density and Version साथ अधिक योग्यता

 drawable-ldpi-v11 drawable-mdpi-v11 drawable-hdpi-v11 drawable-xhdpi-v11 

और Screen size and Version साथ अधिक योग्यता

 drawable-large-v11 drawable-xlarge-v11 

और Smallest width concept(SW) साथ अधिक योग्यता

  drawable-sw???dp 

एंड्रॉइड drawable-sw360dp में और आगे उन्होंने SW(smallest width) की नई अवधारणा को शुरू किया जिसमें डिवाइस को स्क्रीन की चौड़ाई में वर्गीकृत किया गया है, इसलिए यदि हम drawable-sw360dp नामक एक फ़ोल्डर बना रहे हैं तो 720 डीपी (चौड़ाई या ऊंचाई या तो) के साथ डिवाइस होगा इस फ़ोल्डर से संसाधन का उपयोग करें

उदाहरण के लिए, Samsung Galaxy S3 डीपी को ड्रॉएबल-एसपी डीपी के प्रत्यय के रूप में ढूंढने के लिए
डीपी कैलकुलेशन के संदर्भ में, यदि आप अपने लेआउट का समर्थन करना चाहते हैं या एस 3 के लिए पेंट करने योग्य हैं तो गणना में कहा गया है

px = डिवाइस की चौड़ाई = 720
डीपीआई = डिवाइस का घनत्व = 320

सूत्र दिया गया

  px = dp * (dpi / 160) 

सूत्र बदलना क्योंकि हमारे पास पीएक्स का मूल्य है

  dp = px / (dpi / 160) 

अब डाल मूल्य,

  dp= 720 / (320/160); dp=360. 

इसलिए drawable-sw360dp नौकरी करेगा

GsmArena Sameway से डिवाइस कॉन्फिगरेशन प्राप्त करें आप डिवाइस के एंड्रॉइड एपीआई वर्जन यानी ड्रॉएबल-एचडीपीआई-वी 11` के अनुसार फ़ोल्डर बना सकते हैं ताकि डिवाइस को API11 हो और यह एचडीपीआई है तो यह इस संसाधनों का उपयोग करेगा।

अतिरिक्त टिप्स:

  • सापेक्ष लेआउट, डीपी, एसपी, और मिमी का उपयोग करें

    डीपी यूनिट्स – 160 पीपीआई स्क्रीन यानी मध्यम घनत्व पर 1 भौतिक पिक्सेल के लिए सामान्य डिवाइस स्वतंत्र पिक्सेल। रनटाइम पर स्केल किया गया स्क्रीन तत्व आयामों के लिए उपयोग करें

    एसपी इकाइयां – स्केल किए गए पिक्सेल, डीपी इकाइयों के आधार पर फ्लोटिंग प्वाइंट वैल्यू के रूप में निर्दिष्ट किया गया है, लेकिन अतिरिक्त उपयोगकर्ता के फ़ॉन्ट-आकार वरीयता सेटिंग के लिए स्केल किया गया है। रनटाइम पर स्केल किया गया फ़ॉन्ट आकारों के लिए उपयोग करें

    आपको हमेशा लेआउट के लिए रिलेटिव लेआउट का उपयोग करना चाहिए; AbsoluteLayout नापसंद है और उपयोग नहीं किया जाना चाहिए।

  • उचित छवि प्रारूप का उपयोग करें – पीएनजी बनाम जेपीईजी

    Android "prefers" PNG for bitmap image files, "accepts" JPEG, and "discourages" GIF.

    हालांकि, पीएनजी और जेपीईजी समकक्ष नहीं हैं। उनके पास अलग-अलग गुणवत्ता वाले व्यवसाय हैं, और पीएनजी हमेशा सर्वश्रेष्ठ नहीं है:

    जेपीईजी पीएनजी पर 50% फ़ाइल आकार में कटौती की पेशकश कर सकता है, जो महत्वपूर्ण है अगर आपका ऐप छवि-गहन है

    एक उच्च गुणवत्ता वाले "हानिपूर्ण" JPEG, एक समान संपीड़ित "दोषरहित" पीएनजी की तुलना में समान फ़ाइल आकार के लिए बेहतर लग सकता है

  • डिबगिंग के लिए अपनी छवियों और ग्राफिक्स में लेबल जोड़ें

  • समर्थन-स्क्रीन तत्व का उपयोग करें

  • असली डिवाइस मूल्यों के साथ अपने emulators कॉन्फ़िगर करें

    पारंपरिक रूप से, डेस्कटॉप सिस्टम 72 पीपीआई (मैक) या 96 पीपीआई (विंडोज़, लिनक्स) पर प्रदर्शित होता है। मोबाइल के मुकाबले, डेस्कटॉप प्रदर्शन हमेशा कम घनत्व होते हैं।

    हमेशा वास्तविक डिवाइस मूल्यों की नकल करने के लिए अपने एंड्रॉइड emulators को कॉन्फ़िगर करें, और उन्हें डिवाइस घनत्व का अनुकरण करने के लिए पैमाने पर सेट करें।

    ग्रहण में, एवलिप्स मेनू बार से, विंडो> एवीडी मैनेजर> नया चुनें, कई एमुलेटर बनाने में आसान है, वास्तविक उपकरणों के लिए मूल्यों के साथ कॉन्फ़िगर किया गया है:

    वास्तविक डिवाइस के लिए एमुलेटर का नामकरण करें, निर्दिष्ट करें रिज़ॉल्यूशन निर्दिष्ट करें, अंतर्निहित जेनेरिक आकारों का उपयोग न करें वास्तविक डिवाइस से मिलान करने के लिए डिवाइस घनत्व सेट करें (हार्डवेयर फलक सेट में सारस एलसीडी प्रॉपर्टी को असली घनत्व, हमेशा एक पूर्णांक मान)

    जब आप डिवाइस लॉन्च करते हैं, तो वास्तविक आकार के लिए हमेशा स्केल डिस्प्ले चुनें, और इंच में असली स्क्रीन आयाम टाइप करें

    यदि आप डिवाइस घनत्व सेट नहीं करते हैं, तो एमुलेटर कम घनत्व के लिए चूक होता है, और हमेशा एलडीपीआई-विशिष्ट संसाधन लोड करता है रिजोल्यूशन (पिक्सेल आयाम) सही होगा, लेकिन आपके घनत्व-निर्भर छवि संसाधनों का इरादा नहीं किया जाएगा

    बेशक, आप जो कुछ भी करते हैं, वह कम घनत्व डेस्कटॉप डिस्प्ले पर उच्च घनत्व छवि गुणवत्ता को पुन: पेश कर देगा।

1 अक्टूबर, 2012 को समाप्त होने वाले 7-दिवसीय अवधियों के दौरान यहां एकत्र डेटा दिया गया है। एंड्रॉइड प्लेटफ़ॉर्म संस्करण के बारे में नवीनतम आंकड़े देखने के लिए, यहां जाएं

स्क्रीन आकार के आधार पर

यहां छवि विवरण दर्ज करें

स्क्रीन घनत्व पर आधारित

यहां छवि विवरण दर्ज करें

डिजाइनरों को आधार डिजाइन बनाना चाहिए

base size of mdpi devices * density conversion factor of highest supported density bucket
आकार। बेस स्क्रीन आकार 320 एक्स 480 पिक्सल और घनत्व बाल्टी निम्नानुसार हैं:

  • एलडीपीआई: 0.75
  • एमडीपीआई: 1.0 (आधार घनत्व)
  • एचडीपीआई: 1.5
  • xhdpi: 2.0
  • xxhdpi: 3.0
  • xxxhdpi: 4.0

और एंड्रॉइड डिवाइस पर अतिरिक्त उपलब्ध स्थान से निपटने के लिए दोनों दिशाओं (क्षैतिज और अनुलंब) में लम्बे पतले घटकों का उपयोग करना चाहिए। विस्तृत जानकारी यहां उपलब्ध है:

http://vinsol.com/blog/2014/11/20/tips-for-designers-from-a-developer/