본문 바로가기

개발도구/iOS - 아이폰 개발

[아이폰] 푸시 - Local Notifications and Push Notifications

https://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Introduction/Introduction.html#//apple_ref/doc/uid/TP40008194-CH1-SW1

 
 
1. 먼저 푸시를 사용하기 전에 아래의 링크에서 처음 셋팅해줘야 할 부분이 있다.
http://artyst.egloos.com/2650529

------------------------------------------------------------------------------------------

2. 인증서 다운로드
내가 사용하는 APP id 는 point5 이다. 처음엔 오랜지 색으로 configurable for Development 이라고 되어 있다
맨 오른쪽 action configure을 클릭하여 push을 동의하자
 

Apple Push Notification service 항목에 노란불이 켜져있다. 활성화되지 않은 상태이다.

Action 항목의 Configure 를 클릭.

Development Push SSL Certificate 는 개발 어플용이다.
Production 을 선택하면 테스트는 불가능할 것이다. (배포용 제품어플은 실제 배포했을때만 동작됨)


 


provisioning profiles에 가서 기존의 사용하는 프로파일을 remove해줘야 한다. 
그리고 다시 new profile에 가서 등록을 하면 된다. 
걱정하지 마라 기존의 이미 등록된 APPID 로 쉽게 만들수 있다. 난 사실 여길 만들 걱정된다. 
혹시 등록된 어플을 수정 ,편집 할수 없을까봐 ㅎㅎㅎ





Development Push SSL Certificate의 Configure 버튼을 누른다.

다운 받은 프로파일을 더블 클릭하면 이젠 xcode 오거나이즈에 자동등록된다.
등록 성공!!!


Continue 버튼을 눌러 다음 화면으로 이동하면 푸시관련 인증서를 다운로드 받을 수 있다.

다운로드 받은 인증서를 더블클릭하여 실행하면 "키체인 접근" 프로그램이 실행되면서 해당 인증서가 추가된다.




- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    

[window makeKeyAndVisible];

//APNS  장치 등록

[application registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];

//Badge 개수 설정

application.applicationIconBadgeNumber = 0;

return YES;

}



(2) APNS 에 장치 등록시

//push : APNS  장치 등록 성공시 자동실행

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {

NSLog(@"deviceToken : %@", deviceToken);


}


//push : APNS  장치 등록 오류시 자동실행

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {

NSLog(@"deviceToken error : %@", error);

}


성공시 deviceToken를 문자열로 보내준다.



참고 블로그 
 

http://artyst.egloos.com/2652130 ( 너무나 잘 설명이 되어 있다.)
http://ti-agile.blogspot.com/2010/01/programming-apple-push-notification.html (외국 블로그) 
http://blog.jidolstar.com/758
http://theeye.pe.kr/entry/how-to-programming-push-notification-on-my-iphone-with-javapns