आईओएस 6 पर चीनी मानचित्रों के लिए, ऐसा लगता है कि MapKit मानचित्र प्रदाता का चयन करता है जहां डिवाइस स्थित है। यदि आप चीन में हैं तो यह ऑटोनावी मानचित्रों का उपयोग करेगा, और अन्यथा यह डिफ़ॉल्ट ऐप्पल मानचित्रों का उपयोग करेगा। चीजों को जटिल बनाने के लिए, ऑटोनावी मानचित्र उसी तरह परिवर्तित हो जाते हैं जैसे आईओएस 5 पर Google के नक्शे हैं, जबकि डिफ़ॉल्ट ऐप्पल मानचित्र परिवर्तित नहीं होते हैं।आईओएस 6 पर असंगत चीनी मानचित्रों से कैसे निपटें?
बदलकर मैं इस तथ्य के बारे में बात कर रहा हूं कि all maps in China are transformed, हालांकि यह सच नहीं है। इसके बजाय, चीन में कुछ मानचित्र बदल दिए गए हैं, जबकि कुछ नहीं हैं।
यह परिवर्तन नक्शे पर एनोटेशन सही ढंग से स्थानांतरित करना मुश्किल बनाता है क्योंकि नक्शा आम तौर पर लगभग 500 मीटर ऑफसेट होता है। चूंकि वास्तविक मानचित्र के परिवर्तन को उलटना संभव नहीं है, इसलिए समाधान एनोटेशन को उसी ऑफ़सेट को लागू करना है।
There exists non-trivial ways to inverse the transform, at least for limited areas. आईओएस 6 में समस्या यह जानती है कि मानचित्र को एनोटेशन को उचित रूप से क्षतिपूर्ति करने में सक्षम होने के लिए परिवर्तित किया गया है या नहीं। आईओएस 5 पर यह समस्या तब तक मौजूद नहीं थी जब परिवर्तित नक्शे लगातार उपयोग किए जाते थे।
नीचे शंघाई मानचित्र स्थिति को दर्शाता है (वास्तविक ट्रांसफॉर्म ऑफ़सेट प्रदर्शित नहीं होता है)।
इसलिए, रन-टाइम में जानते हुए भी कि क्या बदल या गैर तब्दील चीन नक्शे उपयोग किया जाता है की किसी भी तरह से हो सकता है? इस से निपटने के लिए अन्य विचार?
संपादित करें: चीन में प्रॉक्सी के माध्यम से नेटवर्क ट्रैफिक राउटिंग सिम्युलेटर में मानचित्र अपरिवर्तनीयता बदलता है, इसलिए मानचित्र प्रदाता की पसंद आईपी पर आधारित होनी चाहिए।
क्या अनुरोध करने वाले डिवाइस के भौगोलिक स्थान, या डिवाइस के लिए लोकेल सेट के आधार पर कौन सा मानचित्र सेवा करने का निर्णय है? यदि यह लोकेल पर आधारित है, तो क्या लगातार परिणाम प्राप्त करने के लिए मानचित्र का अनुरोध करते समय लोकेल सेट करना संभव है? – Snips
डिवाइस लोकेल को बदलने से कोई फर्क नहीं पड़ता है, इसलिए यह आईपी या आंतरिक स्थान सेवाओं का उपयोग करके भौगोलिक स्थान पर आधारित प्रतीत होता है। –