क्या एसडीके 3.x पर आपके वर्तमान स्थान जियोकोड को रिवर्स करना संभव है? मुझे बस वर्तमान स्थान का ज़िप कोड प्राप्त करने की आवश्यकता है। मैंने देखा है कि एकमात्र उदाहरण कोरलोकेशन का उपयोग करते हैं जो मुझे लगता है कि एसडीके 4 तक पेश नहीं किया गया था।रिवर्स जियोकोड वर्तमान स्थान
उत्तर
आप एमकेआरवीर्स जीकोकोडर 3.0 से 5.0 तक का उपयोग कर सकते हैं। चूंकि 5.0 एमकेआरवीर्स जीकोकोडर की कमी है और सीएलजीकोडर के उपयोग की सलाह दी जाती है।
यदि उपलब्ध हो तो आपको CLGeocoder का उपयोग करना चाहिए। पता जानकारी निकालने में सक्षम होने के लिए आपको एड्रेस बुक फ्रेमवर्क शामिल करना होगा।
#import <AddressBookUI/AddressBookUI.h>
#import <CoreLocation/CLGeocoder.h>
#import <CoreLocation/CLPlacemark.h>
- (void)reverseGeocodeLocation:(CLLocation *)location
{
CLGeocoder* reverseGeocoder = [[CLGeocoder alloc] init];
if (reverseGeocoder) {
[reverseGeocoder reverseGeocodeLocation:location completionHandler:^(NSArray *placemarks, NSError *error) {
CLPlacemark* placemark = [placemarks firstObject];
if (placemark) {
//Using blocks, get zip code
NSString* zipCode = [placemark.addressDictionary objectForKey:(NSString*)kABPersonAddressZIPKey];
}
}];
}else{
MKReverseGeocoder* rev = [[MKReverseGeocoder alloc] initWithCoordinate:location.coordinate];
rev.delegate = self;//using delegate
[rev start];
//[rev release]; release when appropriate
}
//[reverseGeocoder release];release when appropriate
}
MKReverseGeocoder प्रतिनिधि विधि:
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFindPlacemark:(MKPlacemark *)placemark
{
//Get zip code
NSString* zipCode = [placemark.addressDictionary objectForKey:(NSString*)kABPersonAddressZIPKey];
}
MKReverseGeocoder और ABPersonAddressZIPKey आईओएस 9.0 में पदावनत किया गया।
NSString * zipCode = placemark.postalCode;
http://www.geonames.org पर एक नज़र डालें। यह किसी भी एसडीके में नहीं बनाया गया है।
आप इस वेब सेवा में टाई IPhones वर्तमान स्थान का उपयोग किया जा सका: इसके बजाय CLPlacemark
की postalcode
संपत्ति ज़िप कोड प्राप्त करने के लिए इस्तेमाल किया जा सकता? –
savagenoob
बिल्कुल। बस अक्षांश/देशांतर प्रदान करें। –
प्रश्न में अक्षांश और देशांतर प्राप्त करने के तरीके पर कुछ नमूना कोड है। Getting Strange Output in Reverse Geo coder in iphone dev
CoreLocation एसडीके 3 (2.0 के बाद से) लेकिन CLGeocoder (जो रिवर्स geocode प्रदान करता है) में उपलब्ध 5.0 बाद से उपलब्ध है था।
सौभाग्य से MapKit ढांचे में MKReverseGeocoder ऑब्जेक्ट है। यह ऑब्जेक्ट रिवर्स जियोकोडिंग भी प्रदान करता है (लेकिन एसडीके 5 में अप्रचलित है)।
सही काम किया, धन्यवाद! – RyanG