티스토리 뷰

이제는 SK에서도 아이폰이 나오니.. 슬슬 필요 하지 않을까 싶어서
적어 봅니다.
아래 코드를 이용하면, 핸드폰의 국제 설정이 아니라, 서비스의 위치로 사용 할 수도 있습니다.

먼저 프로젝트에서 CoreTelephony.framework를 추가해 줍니다.

그리고 아래와 같은 코드를 넣어 주시면 됩니다.

#import <CoreTelephony/CTCarrier.h>
#import <CoreTelephony/CTTelephonyNetworkInfo.h>

CTTelephonyNetworkInfo *networkInfo = [[[CTTelephonyNetworkInfo alloc] init] autorelease];
CTCarrier *carrier = [networkInfo subscriberCellularProvider];

// 사업자 이름 알아오기
NSString *carrierName = [carrier carrierName];
if (carrierName != nil)
    NSLog(@"Carrier: %@", carrierName);

// 모바일 국가코드 알아 오기
NSString *mcc = [carrier mobileCountryCode];
if (mcc != nil)
    NSLog(@"Mobile Country Code (MCC): %@", mcc);

실행해 보시면 아래와 같이 나타납니다.

app[2191:707] Carrier: KT
app[2191:707] Mobile Country Code (MCC): 450

그리고, 국가 코드표는 아래를 참고 하세요.

Wikipedia Mobile Country Codes


댓글
  • 프로필사진 suroMind 안녕하세요.. 찾고 있던 정보였습니다.. 감사합니다

    질문이 하나 있습니다.

    위 함수가 private 함수라는 말도 있던데 사용하고 앱스토어에 등록해도 아무런 문제가 없는지

    궁금합니다.

    감사합니다
    2011.08.10 18:46 신고
  • 프로필사진 신규하 http://developer.apple.com/library/ios/#samplecode/CoreTelephonyDemo/Introduction/Intro.html#//apple_ref/doc/uid/DTS40010746
    애플 예제 프로그램에 있는걸 보면, private은 아닌것 같습니다.
    private이라면 샘플로 제공 할 리가 없겠죠?
    2011.08.11 13:24 신고
  • 프로필사진 suroMind 샘플이 있었군요.. API만 보고 샘플이 있을거란 생각을 못했네요

    정말 감사합니다. 많은 도움 되었습니다^^
    2011.08.11 16:35 신고
  • 프로필사진 백룡화검 좋은 정보 감사합니다.

    퍼갈게요.
    2012.08.04 18:20 신고
댓글쓰기 폼