티스토리 뷰
사용자 위치정보값을 토대로 기상청에서 날씨 정보를 가져오기 위해 구글 API를 사용했지만 하루 2,500번 밖에 지원되지 않아 CLGeocoder 테스트삼아 해봤더니 잘 된다.
참고로 사용자의 현재 위도 경도 값은 가져와야 한다.
일전에 정리해 두었던 내용 참조 : [iOS]iOS8 시뮬레이터에서 GPS 값 받기, CLLocationManager 대응.
//라이브러리 추가.
#import <CoreLocation/CoreLocation.h>
#import <AddressBook/AddressBook.h>
//주소 반환
-(void)getGeoCoder
{
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
[geocoder reverseGeocodeLocation:self.currentLocation completionHandler:^(NSArray *placemarks, NSError *error) {
if (error) {
NSLog(@"Failed : %@", [error localizedDescription]);
return;
}
for (CLPlacemark *placemark in placemarks)
{
NSString *street = [placemark.addressDictionary objectForKey:(NSString *)kABPersonAddressStreetKey];
NSString *city = [placemark.addressDictionary objectForKey:(NSString *)kABPersonAddressCityKey];
NSString *state = [placemark.addressDictionary objectForKey:(NSString *)kABPersonAddressStateKey];
NSString *zip = [placemark.addressDictionary objectForKey:(NSString *)kABPersonAddressZIPKey];
NSString *country = [placemark.addressDictionary objectForKey:(NSString *)kABPersonAddressCountryKey];
NSString *countryCode = [placemark.addressDictionary objectForKey:(NSString *)kABPersonAddressCountryCodeKey];
NSLog(@"street : %@\n,city : %@\n,state : %@\n,zip : %@\n,country : %@\n,countryCode : %@\n,", street, city, state, zip, country, countryCode);
}
}];
}
//결과값
street : 계림로00번길 00-0
,city : 동구
,state : 광주광역시
,zip : (null)
,country : 대한민국
,countryCode : KR
'iOS > 자료정리' 카테고리의 다른 글
[svnX] commit 시 체크 박스가 체크되지 않을 때. (0) | 2015.02.04 |
---|---|
[iOS]UIWebView, NSMutableURLRequest, cookie, session 처리 하기 (0) | 2015.01.08 |
[iOS]iOS8 시뮬레이터에서 GPS 값 받기, CLLocationManager 대응. (0) | 2014.11.17 |
xCode6 버전에서 아이폰6, 6+ 자동 확대되어 보이게 하기. (0) | 2014.11.06 |
iOS 앱 내부에 저장된 파일 확인하기. (0) | 2014.06.11 |