관리 메뉴

김종권의 iOS 앱 개발 알아가기

[APNs] Apple push notification service 본문

iOS 응용 (swift)

[APNs] Apple push notification service

jake-kim 2020. 11. 8. 16:28

APNs(Apple Push Notification service)란

  • 서버에서 폰으로 푸시를 보내려면, APNs라는 곳을 거쳐서 해야가능 
  • 애플 개발자 페이지에서 인증서를 등록해야만 사용가능

(provider)서버에서 날리는 push를 앱에서 push를 받기까지

  • 앱에서는 UUID를 가지고 Apple서버에 요청, Apple서버에서는 이 값을 받고 device token을 생성하여 앱에 전송
  • 서버에서 이 device token을 가지고 push요청을 APNs에 곧바로 요청
  1. (provider)서버 push요청 ->  앱
  2. 앱에서 UUID의 key로 device토큰 요청 -> Apple서버
  3. Apple서버 device token송신 -> 앱:  N/W 커넥션 open
  4. 앱 device token송신 -> (개인)서버에 등록
  5. 개인 서버에서 개인 device를 UUID(앱에서 전송했던)로 구분하며, 서버에서 APNs로 UUID와 매핑된 device token을 통해 요청하면 앱으로 push 전송 완료

APNs를 (provider)서버와 함께 swift에서 사용 방법

1. CSR(CertificateSigningRequest) 생성

  • 인증서 생성: 키체인 접근 -> 인증서지원 -> 인증 기관에서 인증서 요청

  • 이메일 작성, "디스크에 저장됨" 선택 후 '계속'

  • CertificateSigningRequest.certSigningRequest파일을 특정 디렉토리에 저장

2. Certificate 생성

 

  • 아래과 같은 화면이 나온다면, Join the Apple Developer Program클릭, 여기 참고
    (유료 개발자 계정에 등록이 되어 있어야 Certificate 발급 가능)

  •  

* 참고: developer.apple.com/documentation/usernotifications/registering_your_app_with_apns

 

 

 

Comments