2011-06-07 9 views
5

वेब पर देखकर वेब पर ध्यान देने के लिए स्थान पर परिवर्तनों की निगरानी करने के लिए स्थान और watchPosition स्थान प्राप्त करने के लिए स्थान - getCurrentPosition स्थान प्राप्त करने के दो तरीके हैं। getCurrentPosition स्थान प्राप्त करने के दो तरीके हैं।getCurrentPosition

जो मैं खोज रहा हूं वह एक स्थान पढ़ने के लिए एक तरीका है जो यथासंभव शीघ्र सटीक है। मुझे लगता है कि आदर्श getCurrentPosition कॉल पर सटीकता सीमा का उपयोग करना होगा - और थ्रेसहोल्ड तक पहुंचने पर सफलता हैंडलर को कॉल किया जाएगा या टाइमआउट पार हो जाएगा (परिणामस्वरूप जितना संभव हो उतना सटीक होगा)।

यह पहले से मौजूद नहीं है, है ना? संभावित रूप से यह watchPosition विधि को टाइमआउट या थ्रेसहोल्ड तक पहुंचने के बाद रोकने के लिए इसे लागू करने के लिए काफी सरल होगा। मैं इस दृष्टिकोण का उपयोग करूंगा (और कोड पोस्ट करने का इरादा रखता हूं) यदि कोई भी ऐसा करने के लिए किसी अंतर्निहित विधि से अवगत नहीं है ...

उत्तर

3

फ़ंक्शन में कोई भी निर्मित नहीं है। मैंने पाया है कि सेट टाइम सटीकता से बेहतर है। एक आईफोन पर अक्सर बार सटीकता 100 मीटर से बेहतर नहीं होगी, इसलिए बेहतर जांचना जारी रखना अपर्याप्त है। watchPosition() का उपयोग करके सबसे अच्छा काम किया है और यह त्रिकोणीय लगता है, इसलिए तीन रीडिंग के बाद यह शायद ही कभी बेहतर हो जाता है। मैं बस पांच सेकंड इंतजार और बंद करो।

डेमो: http://jsfiddle.net/ThinkingStiff/3k859/

HTML:

<div id="result"></div> 

स्क्रिप्ट:

function setGeolocation() { 

    var geolocation = window.navigator.geolocation.watchPosition(function (position) { 

      document.getElementById('result').innerHTML += 
        'lat: ' + position.coords.latitude + ', ' 
       + 'lng: ' + position.coords.longitude + ', ' 
       + 'accuracy: ' + position.coords.accuracy + '<br />'; 

     }, 
     function() { 
      //error 
     }, 
     { 
      maximumAge: 250, 
      enableHighAccuracy: true 
     } 

    ); 

    window.setTimeout(function() { 

     window.navigator.geolocation.clearWatch(geolocation) 

    }, 5000); 

}; 

setGeolocation(); 
+0

फ़ंक्शन दिखाने के लिए धन्यवाद। यही वह है जिसे मैंने लिखने की योजना बनाई, लेकिन प्राप्त करें मेरे उपयोग के लिए CururPosition ठीक लग रहा था। –

+0

मैंने इसे उत्तर के रूप में चिह्नित किया है, क्योंकि यह मूल रूप से मैं जो चाहता था वह काफी है - लेकिन मैं इसका उपयोग करने की योजना नहीं बना रहा हूं, इसलिए यह नहीं पता कि यह काम करता है या नहीं! –

2

टैक्सी, जीपीएस चिप के लिए जे 2 एमई भू-स्थान आधारित ऐप्स विकसित करने के अपने अनुभव के आधार पर सटीक स्थान पढ़ने के लिए कुछ प्रारंभिकता लें। पसंदीदा विधि watchPosition() के समान विधि का उपयोग करना है, जो जीपीएस चिप को सटीक स्थान पढ़ने के लिए गर्म रखेगी।

मुझे लगता है कि आपका दृष्टिकोण सिद्धांत में अच्छा है, लेकिन इसे वास्तविक डिवाइस पर परीक्षण करने की आवश्यकता है क्योंकि जीपीएस चिप्स पूरे डिवाइस में प्रदर्शन में भिन्न हैं।

उम्मीद है कि इससे मदद मिलती है।

+0

प्रश्न: वहाँ एक समारोह जो स्वचालित रूप से सटीकता की एक निश्चित स्तर तक स्थान हो जाता है (या समय समाप्त) है। उत्तर: सं। उचित सारांश? :) –