APNS(Apple Push Notification Service)를 하기 위해서, 어플을 설치한 각 디바이스에서 Device Token 을 알아야 하는데요.
이 Device Token 을 알 수 있는 방법은 다음과 같습니다.
1. 어플 사용자가 APS(Apple Push Service) 를 이용하겠다는 동의를 해야 한다.
2. 어플리케이션 delegate 에서 UIApplicationDelegate 내 함수 (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 을 구현한다.
바로 2번 항목에서 (NSData *)deviceToken 이라는 파라미터로 Device Token 이 들어옵니다. 이 때, Device Token 은 퍼포먼스 때문에 바이너리 포맷으로 전달 된다고 하네요.
1. APS Register
어플 사용자가 APS 를 이용하겠다는 동의를 해야 한다고 했는데요, 이를 위해서 -(BOOL)application:(UIApplication *)app didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 에서 다음 코드를 추가 하시면 어플이 설치 되고 처음 실행 될 때 APS 를 이용하겠는지의 여부를 묻게 됩니다. (이 메시지는 처음에만 묻고, 그 뒤로는 다시 묻지 않습니다. 설정 변경은 일반 설정에서 On / Off 하실 수 있습니다.)
코드
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
[window addSubview:[nav view]];
[window makeKeyAndVisible];
// APS Register
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
UIRemoteNotificationTypeAlert |
UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeSound ];
return YES;
}
2. Device Token 얻기
어플리케이션 delegate 에서 UIApplicationDelegate 내 함수 (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 을 구현을 하면, 어플이 처음 실행 될 때 다음 코드를 타게 됩니다. 이 때, Device Token 을 얻으 실 수 있습니다. (전역으로 두셨다가 필요하실 때 쓰시면 되겠네요)
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
NSLog(@"Device Token : %@" ,deviceToken);
}
'iPhone' 카테고리의 다른 글
UIWebView 와 Application (App) 간의 통신 (15) | 2010.11.15 |
---|---|
Debug 시에만 NSLog 출력 하기. (Debug 모드 구분하기) (0) | 2010.10.12 |
APNS(Apple Push Notification service) 인증서 파일(p12) 만들기 (0) | 2010.10.07 |
Application Loader에서 애플 개발자 계정 설정 변경 (6) | 2010.09.30 |
UILabel에 중앙선(취소선) 표시하기. (UIStrikeLabel) (16) | 2010.09.16 |
하나의 UIViewController 에서 두개 이상의 UITableView 를 표현하기 (2) | 2010.09.08 |
HTML Page 에서 아이폰 키보드 자판 선택 (0) | 2010.08.18 |
IB에서 각 UIControlState 에서의 UIButton 의 이미지 설정 (0) | 2010.08.13 |
APXML Sample Source (10) | 2010.08.05 |
APXML 를 사용 해 보세요. (26) | 2010.07.29 |