2010-12-06 10 views
11

जीपीएस से निर्देशांक के आधार पर डिवाइस के स्थानीय टाइमज़ोन प्राप्त करने के लिए कोको स्पर्श में यह संभव है? मैंने पिछले साल यह पूछा था, लेकिन कोई जवाब नहीं ...कोर लोकेशन निर्देशांक के आधार पर आप स्थानीय टाइमज़ोन कैसे प्राप्त करते हैं?

मैं वास्तव में जीएमटी से घंटों के अंतर की संख्या चाहता हूं, और मैं एक वेब सेवा से पूछना नहीं चाहता हूं।

या, क्या मैं डिवाइस से पूछ सकता हूं कि यह किस समय पर सेट है?

क्या यह किया जा सकता है?

+0

यदि आप अक्षांश और देशांतर * सिस्टम से स्वतंत्र * के आधार पर टाइमज़ोन को समझने के लिए निर्धारित हैं, तो कृपया मेरा उत्तर यहां पढ़ें: [अक्षांश/देशांतर द्वारा समय निकालें?] (Http://stackoverflow.com/questions/0/आकृति-आउट-टाइम-अक्षांश-देशांतर/11085220 # 11085220) – mpemburn

+0

यह भी देखें: [अक्षांश और देशांतर निर्देशांक का उपयोग करके किसी स्थान से समय क्षेत्र कैसे प्राप्त करें?] (Http://stackoverflow.com/a/16086964/634824) –

उत्तर

23

उपयोग [NSTimeZone localTimeZone];

संपादित करें: लौटे वस्तु एक -(NSInteger)secondsFromGMT विधि आप GMT से अंतर यह पता लगाने का उपयोग कर सकते है।

+1

ऐसा लगता है कि यह एप्लिकेशन के लिए 'डिफ़ॉल्ट टाइमज़ोन' से अपना मान प्राप्त करता है, और यदि यह स्पष्ट रूप से सेट नहीं है, तो 'systemTimeZone' से। क्या अक्षांश और देशांतर से टाइमज़ोन प्राप्त करने का कोई तरीका है? – Steve

+0

सिस्टम में नहीं बनाया गया है। आपको स्वयं कुछ बनाना होगा, शायद http://www.date-time-zone.com/ पर डेटा फ़ाइलों का उपयोग करें और उसमें निहित समय क्षेत्र परिभाषाओं के विरुद्ध उपयोगकर्ता के निर्देशांक की तुलना करें। –

+0

धन्यवाद, @ जेनिंगज। इसे और देखने के बाद, मुझे एहसास हुआ कि यह करना कितना मुश्किल है। ऐसा लगता है कि ऐसा करने के लिए वेब सेवाएं हैं, लेकिन मुझे लगता है कि अधिकांश ऐप्स आपको केवल टाइमज़ोन बताने के लिए क्यों कहते हैं, या इसे शहर की सूची से प्राप्त करते हैं। – Steve

2

यह वास्तव में संभव नहीं है, जब तक कि इनपुट वास्तव में इनपुट में शामिल न हो। क्यूं कर? क्योंकि ऑफसेट समय के साथ बदलता है। आमतौर पर, उत्तरी अमेरिका और यूरोप में ग्रीष्मकालीन समय में डेलाइट सेविंग टाइम पर स्विच होता है। विभिन्न स्थान अलग-अलग समय पर स्विच करते हैं। इसके अतिरिक्त, समय-समय पर स्विच बदलने के लिए निर्धारित सूत्रों का उपयोग किया जाता है। अमेरिका में कुछ साल पहले, उदाहरण के लिए, डेलाइट सेविंग टाइम बढ़ाया गया था। फिर आपके पास ग्वाटेमाला जैसे स्थान हैं जो कुछ समय के लिए डेलाइट सेविंग टाइम का प्रयास करते हैं और फिर अगले वर्ष तय करते हैं कि ऐसा न करें।

नीचे की रेखा, जीपीएस निर्देशांक और टाइमज़ोन के बीच एक से एक संबंध नहीं है। निर्देशांक + दिनांक और समय क्षेत्र के बीच एक से एक रिश्ते है, हालांकि। लेकिन यह एक चलती लक्ष्य है।

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

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