FCM IOS 설정 이슈

Chance·2023년 8월 7일

Apple Developer Certificates, Identifiers & Profiles - 프로젝트 등록 이슈

프로젝트 등록 시 Bundle ID를 입력해야 합니다.

하지만, 이 Bundle ID는 Apple Developer의 다른 프로젝트들과 공유될 수 있으며, 그 결과 프로젝트 이름이 중복되어 등록되지 않는 경우가 있습니다.

따라서, 프로젝트 패키지명을 유니크하게 지어야 합니다. 이를 위해 다음과 같은 방법들이 있습니다.

  • 프로젝트 명에 버전 정보를 추가합니다.
  • 회사명 또는 개발자명을 프로젝트 명에 포함합니다.
  • 프로젝트 명에 특수문자를 추가합니다.
  • 프로젝트 명에 더 자세한 설명을 추가합니다.

이러한 방법들을 고려하여 프로젝트 패키지명을 생성하면 중복 등록되는 문제를 예방할 수 있습니다.

Firebase Console - APNs등록 이슈

Firebase 프로젝트 홈 상단에 있는 해당 이미지를 참조하여, IOS 프로젝트 설정에 들어가서 등록해야 합니다.

그러나, 다른 프로젝트 설정에서 등록하면 AppBundle ID가 맞지 않는 경우 에러가 발생할 수 있습니다.

따라서, 반드시 Firebase 프로젝트 홈의 이미지를 참조하여 IOS 프로젝트 설정에 들어가서 등록해야 합니다.

인증서 신뢰하지 않음

키체인에 인증서 등록 후 키 값을 위해 IOS Push Service내보내기를 하면 이런 식으로 인증서를 신뢰하지 않는다는 에러가 나오는데,

p12푸시 인증서이므로 p8인증서를 써야 해당 이슈가 사라진다.

해결방법

애플 공식홈페이지에 접속하면 다음과 같은 페이지가 나오는데,


형광펜 친 부분의 G3, G4, G5인증서를 다운 받아 실행후에 다시 등록

IOS FCM 이슈

IOS는 push형식 중 Notification형식을 무조건 포함해야 한다.

IOS는 APNS형태로 변환하여 푸시메시지를 전달하는데, 이 때 notification형식의 내용이 없으면 푸시메시지가 정상적으로 출력되지 않는다.
Apple 공식홈페이지 APNS프로토콜

AOS와 IOS의 FCM 차이점

IOS는 Notification으로 전달하면 foreground, background에서 모두 동일한 head up 메시지를 받지만,

AOS는 foreground에서 만 받을 수 있습니다.

AOS의 데이터 형식은 코드에서 처리가 가능한 커스텀 메시지 데이터이지만 Notification으로 값을 받으면 시스템에서 먼저 Notification을 처리하여 메시지를 노출합니다.
참고 블로그

0개의 댓글