iOS에서 *Remote Notification을 사용하기 위해 *APNs와 연결되는 서버가 필요하다.
* APNs와 Remote Notification - https://clamp-coding.tistory.com/414
FCM(Firebase Cloud Messaging)
APNs의 보안요건을 직접 구축하기 힘들때 쉽게 원격 알림을 보낼 수 있게 해주는 FCM이다.
Remote Notification을 손쉽게 관리하고. 전송할 수 있게 도와주는 Firebase의 플랫폼이다.
- 원격 알림 메시지 전송기능: 사용자에게 표시되는 알림메시지를 실시간 또는 예약 전송 기능
- 다양한 메시지 타겟팅기능: 단일 기기, 기기 그룹, 주제를 구독한 기기에 알림을 전송하는 기능.
- 발송 메시지 저장, 관리기능: 알림 내용, 상태, 플랫폼, 최종 전송 시간, 열람율 관리 기능
FCM설정
1. Firebase 프로젝트를 생성한다.
2. iOS를 선택해 Firebase에 추가해주고, iOS번들을 복사해 추가한다.
번들 ID는 대소문자를 구분하고, 파이어베이스 프로젝트에 추가하게되면 변경이 불가능하다.
3. plist파일을 추가해주고, 종속성을 추가해준다.
package Dependencies를 사용해도 된다.
cocoapod을 이용해도 된다. - https://clamp-coding.tistory.com/29
pod 'Firebase/Analytics'
pod 'Firebase/Messaging'
두가지를 사용한다.
4. APNS를 구성한다.
Remote Notification을 활용하려면 반드시 APNs를 거쳐야한다.
자체 서버를 통해 전달을 하든 Firebase를 통해 전달을 하던 동일하게 거쳐야 한다.
그러므로 APNs에 등록을 하고, Key를 받아야한다.
APNs Key는 .p8형태를 띄고 하나만 업로드하면 되고,
APNs Certivicates는 .p12형태를 띄고 개발용, 배포용 인증서가 따로 있다.
p.12는 1년마다 갱신해야한다.
그렇다면 이제 Apple 개발자 사이트에 들어가서 인증서를 발급받으로 갑시다.
APNs Key는 2개까지가 제한이다.
2023.04.05 애플 개발자 등록에 막혔다..