[IOS] APNS 개발 설정 – (ios8)

* Apple Push Notification Service 가이드 (개념 이해)

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html

* 인증서 설정 가이드 :

https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/ConfiguringPushNotifications/ConfiguringPushNotifications.html

* 앱 개발 가이드 :

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/IPhoneOSClientImp.html

* stack_overflow : adHoc-build

http://stackoverflow.com/questions/3820525/adhoc-build-receives-no-push-notifications

* adHoc build for production push test

http://stackoverflow.com/questions/7208669/enabling-apple-push-notifications-for-ad-hoc-distribution-environment

* provider(3rd party message server : 직접 구현 하거나 이미 만들어진 플랫폼을 이용 (아마존 SNS)
https://github.com/notnoop/java-apns

ㅇ APNS Push size : 2 kbytes (ios8 layer), 256 bytes (Prior to ios8)
ㅇ 앱이 실행 되지 않을 때 : alert message, sound, badge 의 형태로 전달.
ㅇ 앱이 실행 중일  때 : NSDictionary 형태로 전달 된다.
ㅇ 전달되는 메시지 : JSON structured and consist of primitive type
ㅇ 메시지 포멧 작성 주의 : customer information(민감한 데이터 포함해서는 안된다)
ㅇ notification 전달 : 항상 전달이 보장 되는 것이 아니다.

Push Server response packet

Code Error : https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html

Table 5-1  Codes in error-response packet
Status code Description
0 No errors encountered
1 Processing error
2 Missing device token
3 Missing topic
4 Missing payload
5 Invalid token size
6 Invalid topic size
7 Invalid payload size
8 Invalid token
10 Shutdown

closed the connection

255 None (unknown)

* UX 고려

Apple 문서에 보면 notiifcation 남용은 사용자를 귀찮게 만든다고 되어 있다.
과도한 push는 사용자에게 가치를 주는 행위가 아니다.
꼭 필요한 정보, 그리고 빈도수가 높으면 요약해서 전송하는 push 서버를 구현 해야 한다.

Push Notification은 반드시 필요한 정보만을 제공해야 한다.

* APNS Tester (app store – for os-x)

스크린샷 2015-07-23 오전 12.27.50

광고