मैं CLLocation
संरचना द्वारा शहर के नाम को रिवर्स के साथ परिभाषित करने की कोशिश कर रहा हूं ... CLGeocoder
ऑब्जेक्ट के लिए विधि अनुरोध, लेकिन मुझे नहीं पता कि टाइमआउट कैसे सेट करें? यदि कोई इंटरनेट कनेक्शन अनुरोध समय नहीं है तो इसमें लगभग 30 सेकंड लग सकते हैं - यह बहुत लंबा है ...CLGeocoder टाइमआउट कैसे सेट करें?
8
A
उत्तर
2
इस बात को संभालने के लिए कोई भी कार्यक्षमता नहीं है जिसे मैं जानता हूं। मैंने निम्नलिखित समाधान का उपयोग करना शुरू कर दिया है। यह स्विफ्ट में माफ़ी है, मैं स्पष्ट उद्देश्य-सी नहीं बोलता।
यह आपको एक 2 दूसरा टाइमआउट
func myLookupFunction(location: CLLocation)
{
let timer = NSTimer(timeInterval: 2, target: self, selector: "timeout:", userInfo: nil, repeats: false);
geocoder.reverseGeocodeLocation(location){
(placemarks, error) in
if(error != nil){
//execute your error handling
}
else
{
//execute your happy path
}
}
NSRunLoop.currentRunLoop().addTimer(timer, forMode: NSDefaultRunLoopMode)
}
func timeout(timer: NSTimer)
{
if(self.geocoder.geocoding)
{
geocoder.cancelGeocode();
}
}
दे देंगे टाइमआउट आग के बाद, अपने कॉलबैक निष्पादित किया जाएगा और त्रुटि मार्ग के नाम से जाना है।
आप विवरण के साथ एक त्रुटि प्राप्त होगी:
- कोड = 10
- विवरण स्थानीयकृत (अंग्रेजी) = कार्रवाई पूरी नहीं हो सकता है। (kCLErrorDomain त्रुटि 10.)
आशा है कि इससे मदद मिलती है।
0
स्विफ्ट 3 में
@ JTango18 जवाब:
func myLookupFunction(location: CLLocation)
{
let timer = Timer(timeInterval: 2, target: self, selector: #selector(self.timeout), userInfo: nil, repeats: false);
geocoder.reverseGeocodeLocation(location){
(placemarks, error) in
if(error != nil){
//execute your error handling
}
else
{
//execute your happy path
}
}
RunLoop.current.add(timer, forMode: RunLoopMode.defaultRunLoopMode)
}
func timeout()
{
if (geocoder.isGeocoding){
geocoder.cancelGeocode()
}
}
संबंधित मुद्दे
- 1. CLGeocoder
- 2. एंड्रॉइड में रखरखाव टाइमआउट कैसे सेट करें?
- 3. नोड.जेएस DNS लुकअप - टाइमआउट कैसे सेट करें?
- 4. recvmmsg() में टाइमआउट कैसे सेट करें?
- 5. टेस्ट टीसीपी कनेक्शन टाइमआउट कैसे सेट करें?
- 6. एसएसएच कनेक्शन टाइमआउट सेट करें
- 7. सॉकेट टाइमआउट सेट करना?
- 8. jQuery के टाइमआउट पर टाइमआउट सेट करना
- 9. ASIHTTPRequest सेट टाइमआउट
- 10. सॉकेट के लिए सेट टाइमआउट
- 11. एंड्रॉइड में टाइमआउट डायलॉग सेट करें?
- 12. यूडीपी सॉकेट सेट टाइमआउट
- 13. क्लाइंट सॉकेट कनेक्शन पर टाइमआउट कैसे सेट करें?
- 14. openssl ssl_connect ब्लॉक हमेशा के लिए - टाइमआउट कैसे सेट करें?
- 15. लैरवेल 4.2 में सत्र टाइमआउट कैसे सेट करें?
- 16. मोचा में हुक से पहले टाइमआउट कैसे सेट करें?
- 17. सेलेनियम पायथन वेबड्राइवर डिफ़ॉल्ट टाइमआउट कैसे सेट करें?
- 18. pgAdmin के लिए कनेक्शन टाइमआउट मान कैसे सेट करें?
- 19. c3p0 के लिए getConnection() टाइमआउट कैसे सेट करें?
- 20. aspnetcore/entityframeworkcore में कमांड टाइमआउट कैसे सेट करें
- 21. रुबी में RestClient मणि में टाइमआउट कैसे सेट करें?
- 22. जेटी सर्वर के लिए कनेक्शन/अनुरोध टाइमआउट कैसे सेट करें?
- 23. डेटा के लिए टाइमआउट कैसे सेट करें WithContentsOfURL: url
- 24. इकाई फ्रेमवर्क कोर माइग्रेशन टाइमआउट कैसे सेट करें?
- 25. नोड में http.request() पर टाइमआउट कैसे सेट करें?
- 26. XDocument.Load (स्ट्रिंग यूरी) पर टाइमआउट कैसे सेट करें?
- 27. CLGeocoder कभी भी एक स्थलचिह्न
- 28. CLGeocoder त्रुटि। GEOErrorDomain कोड = -3
- 29. कैसे रेट्रोफिट-2.0 में टाइमआउट सेट करने के लिए + android
- 30. पार्स प्रश्नों के लिए कनेक्शन टाइमआउट सेट करें