2015-02-18 5 views
5

मैं वास्तव में उलझन में हूं कि बाजार में वर्तमान में आईओएस रूलर ऐप्स विभिन्न आकार उपकरणों के साथ संगत हैं। एक उदाहरण नीचे दिखाया गया है।शासक ऐप्स सभी उपकरणों पर सटीक कैसे रहते हैं?

शोध करने के बाद, मैं इस निष्कर्ष पर पहुंचा था कि रीयलटाइम में वर्तमान स्क्रीन का पीपीआई असंभव था, जिससे प्रोग्रामिंग रूप से शासक को आकर्षित करना असंभव हो जाता है।

मेरी क्वेरी यह है कि इन शासक ऐप्स डिवाइस पीपीआई प्राप्त करने में सक्षम होने के बिना शासक को सटीक रूप से कैसे प्रदर्शित करते हैं?

मेरा पहला विचार यह होगा कि प्रत्येक डिवाइस के लिए पीपीआई और स्क्रीन आकार ऐप में हार्ड-कोड किया गया है। यह एक लाख गलतियों के लिए बहुत सारे प्रयास और नुस्खा जैसा लगता है। क्या वास्तव में उन्हें यह करना है? यह सुनिश्चित करने के लिए कि यह सही तरीके से काम करता है, इसे प्रत्येक अलग डिवाइस पर परीक्षण करने की आवश्यकता होगी। मेरे पास केवल मेरे आईफोन 5 एस तक पहुंच है। क्या उनके पास प्रत्येक अलग-अलग डिवाइस के लिए शासकों की अलग-अलग छवियां हो सकती हैं? यह फोन पर बहुत सी जगह लेगा।

मैंने शासकों को आकर्षित करने के बारे में SO पर समान प्रश्न देखे हैं, लेकिन (यदि मैं गलत हूं तो मुझे सही करें) उन्हें अलग-अलग स्क्रीन आकारों और पीपीआई के लिए सटीकता बनाए रखने का कोई समाधान नहीं लगता है। वे सभी कहते हैं "यह असंभव है"। यदि यह असंभव है, तो यह कैसे किया जाता है?

example

+0

शायद आपका पहला विचार। – zaph

+0

ऐसे कई अलग-अलग पिक्सेल आकार नहीं हैं, क्योंकि कई उपकरणों में एक ही पिक्सेल आकार होता है। हो सकता है कि 7 से 10 अलग-अलग आकार अब तक बने रहें। –

उत्तर

5

आप की खोज की है के रूप में, iOS डिवाइस के पीपीआई प्राप्त करने के लिए कोई सार्वजनिक एपीआई है।

इन ऐप्स में शायद एक हार्डकोडेड सूची है, जैसा कि आपने अनुमान लगाया था। एक सौ हार्डवेयर डिवाइस आईडी के तहत कर रहे हैं (उदाहरण के लिए this list देखें), और केवल अलग PPIs के एक मुट्ठी:

  • गैर-रेटिना iPhone, iPod touch, और iPad मिनी: 163 पीपीआई
  • iPhone रेटिना (सिवाय 6 +), आइपॉड टच, और iPad मिनी: 326 पीपीआई
  • iPhone 6+: 401 पीपीआई
  • गैर-रेटिना आईपैड: 132 पीपीआई
  • रेटिना आईपैड: 264 पीपीआई

मुझे लगता है कि इन ऐप्स के निर्माता आमतौर पर प्रत्येक डिवाइस के साथ अपने ऐप्स का परीक्षण नहीं करते हैं। और जब तक आप ऐप्स की जांच नहीं कर लेते हैं, तब तक कोई कारण नहीं है कि आपको विश्वास करना चाहिए कि ऐप्स ऊपर सूचीबद्ध पीपीआई की तुलना में अधिक सटीक हैं।

आईओएस डिवाइस प्रकार का पता लगाने के लिए, check the answers to this question

+0

उह। आपके उत्तर के लिए धन्यवाद, लेकिन यह मेरे डर की पुष्टि करता है। तो अगर मैं एक जैसी चीज करना चाहता था, तो मुझे <100 (क्या मैं इसके लिए तैयार किए गए वर्ग को ढूंढ सकता हूं?) की सूची में डिवाइस का पता लगाना होगा, पता लगाए गए डिवाइस के लिए पीपीआई प्राप्त करें। मैं फिर पीपीआई को रूट कर दूंगा कि यह पता लगाने के लिए कि कितने पिक्सेल एक इंच में हैं, और फिर मैं उस गणना के अनुसार शासक को आकर्षित कर सकता हूं। क्या यह अच्छा लगता है? तो जब एक नया डिवाइस जारी किया जाता है, तो मुझे यह देखने की ज़रूरत है कि पीपीआई बदल गया है या नहीं, और यदि मेरे पास है, तो मुझे हार्ड-कोडेड सूची को अपडेट करने की आवश्यकता है? –

+0

आपको स्क्वायर रूट लेने की आवश्यकता नहीं है। सूचीबद्ध पीपीआई स्क्रीन किनारे के साथ मापते हैं, न कि विकर्ण। मैंने डिवाइस का प्रकार ढूंढने में आपकी सहायता के लिए अपना उत्तर अपडेट कर दिया है। –

+0

यह बहुत उपयोगी है। मैं कोशिश करूँगा और इसके साथ आगे बढ़ जाऊंगा! –

संबंधित मुद्दे