sitelink1  
sitelink2  
sitelink3  

얼마전부터 콘솔에서 다음과 같은 에러 메세지가 출력되기 시작했다.

 

com.google.firebase.messaging.FirebaseMessagingException: Requested entity was not found.

        at com.google.firebase.messaging.FirebaseMessagingException.withMessagingErrorCode(FirebaseMessagingException.java:51)

        at com.google.firebase.messaging.FirebaseMessagingClientImpl$MessagingErrorHandler.createException(FirebaseMessagingClientImpl.java:293)

        at com.google.firebase.messaging.FirebaseMessagingClientImpl$MessagingErrorHandler.createException(FirebaseMessagingClientImpl.java:282)

        at com.google.firebase.internal.AbstractHttpErrorHandler.handleHttpResponseException(AbstractHttpErrorHandler.java:57)

        at com.google.firebase.internal.ErrorHandlingHttpClient.send(ErrorHandlingHttpClient.java:108)

        at com.google.firebase.internal.ErrorHandlingHttpClient.sendAndParse(ErrorHandlingHttpClient.java:72)

        at com.google.firebase.messaging.FirebaseMessagingClientImpl.sendSingleRequest(FirebaseMessagingClientImpl.java:127)

        at com.google.firebase.messaging.FirebaseMessagingClientImpl.send(FirebaseMessagingClientImpl.java:113)

        at com.google.firebase.messaging.FirebaseMessaging$1.execute(FirebaseMessaging.java:141)

        at com.google.firebase.messaging.FirebaseMessaging$1.execute(FirebaseMessaging.java:138)

        at com.google.firebase.internal.CallableOperation.call(CallableOperation.java:36)

        at com.google.firebase.messaging.FirebaseMessaging.send(FirebaseMessaging.java:108)

        at com.google.firebase.messaging.FirebaseMessaging.send(FirebaseMessaging.java:90)

        at com.omnibuscode.util.FcmNotification.sendNotification(FcmNotification.java:98)

        at com.omnibuscode.util.FcmNotification.flushNotifications(FcmNotification.java:123)

        at com.omnibuscode.base.ExpiredManager.run(ExpiredManager.java:61)

        at java.base/java.lang.Thread.run(Thread.java:1589)

Caused by: com.google.api.client.http.HttpResponseException: 404 Not Found

POST https://fcm.googleapis.com/v1/projects/project-43b77/messages:send

{

  "error": {

    "code": 404,

    "message": "Requested entity was not found.",

    "status": "NOT_FOUND",

    "details": [

      {

        "@type": "type.googleapis.com/google.firebase.fcm.v1.FcmError",

        "errorCode": "UNREGISTERED"

      }

    ]

  }

}

 

처음엔 스펙이 바뀐건가? 싶어서 레퍼런스를 찾아봐도 내용이 나오지 않았는데

제미나이에게 물어보니 적당한 답을 주었다.

 

type.googleapis.com/google.firebase.fcm.v1.FcmError UNREGISTERED 에러는 Firebase Cloud Messaging(FCM)에서 발생하는 에러로, 해당 디바이스가 FCM에 등록되지 않았음을 의미합니다. 이 에러는 다음과 같은 경우에 발생할 수 있습니다.

  • 사용자가 앱을 삭제하거나,
  • 사용자가 앱의 FCM 푸시 알림을 비활성화하거나,
  • FCM 서버에서 디바이스를 등록 해제하거나,
  • 디바이스가 FCM 서버와의 연결을 잃어버렸을 때

이 에러를 해결하기 위해서는 다음과 같은 방법을 시도해 볼 수 있습니다.

  • 사용자가 앱을 설치했는지 확인합니다.
  • 사용자가 앱의 FCM 푸시 알림을 활성화했는지 확인합니다.
  • FCM 서버에서 디바이스를 등록 해제하지 않았는지 확인합니다.
  • 디바이스가 FCM 서버와의 연결을 잃어버리지 않았는지 확인합니다.

특히, 사용자가 앱을 삭제한 경우, 앱을 다시 설치하면 자동으로 새로운 토큰이 생성되므로, 이 에러가 해결됩니다.

다음은 에러를 해결하기 위한 구체적인 방법입니다.

사용자가 앱을 설치했는지 확인

사용자가 앱을 설치했는지 확인하려면 다음과 같은 방법을 사용할 수 있습니다.

  • Google Play Console에서 앱의 설치 수를 확인합니다.
  • App Store Connect에서 앱의 다운로드 수를 확인합니다.

사용자가 앱의 FCM 푸시 알림을 활성화했는지 확인

사용자가 앱의 FCM 푸시 알림을 활성화했는지 확인하려면 다음과 같은 방법을 사용할 수 있습니다.

  • 앱을 열고, 설정 또는 환경설정을 엽니다.
  • 알림 섹션에서 FCM 푸시 알림이 활성화되어 있는지 확인합니다.

FCM 서버에서 디바이스를 등록 해제하지 않았는지 확인

FCM 서버에서 디바이스를 등록 해제하지 않았는지 확인하려면 다음과 같은 방법을 사용할 수 있습니다.

  • Firebase Console에서 앱의 디바이스 목록을 확인합니다.
  • 해당 디바이스가 목록에 포함되어 있는지 확인합니다.

디바이스가 FCM 서버와의 연결을 잃어버리지 않았는지 확인

디바이스가 FCM 서버와의 연결을 잃어버리지 않았는지 확인하려면 다음과 같은 방법을 사용할 수 있습니다.

  • 앱을 열고, FCM 푸시 알림을 보내 테스트합니다.
  • 푸시 알림이 전송되는지 확인합니다.

이러한 방법을 시도해도 에러가 해결되지 않는 경우, Firebase 지원팀에 문의하여 도움을 받을 수 있습니다.

 

스펙이나 로직 에러가 아니어서 다행이다.

코드에서 토큰 에러에 대한 예외처리만 해주면 되겠다.

 

 

 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
» FirebaseMessagingException: Requested entity was not found. 황제낙엽 2024.01.12 0
22 책 2권에 대한 목차와 후기 황제낙엽 2023.11.29 7
21 (Copilot) Admin SDK Reference의 java 라이브러리를 이용하여 notification을 fcm에 전송하는 java 예제 황제낙엽 2023.11.28 0
20 firebase.messaging().getToken() 함수와 pushManager.subscribe() 함수의 관계 황제낙엽 2023.11.26 1
19 service worker 재작성시 수동 업데이트 file 황제낙엽 2023.11.25 1
18 [POST/2023.09.13] PWA (Progressive Web Apps) 관련 황제낙엽 2023.11.24 1
17 [POST/2019.11.25] 브라우저 알림(Notification) 팝업에 버튼 추가 with ServiceWorker file 황제낙엽 2023.11.24 0
16 [FCM] FCM 으로 알림 전송 테스트 (spring boot + android + fcm rest) 황제낙엽 2023.11.24 0
15 [FCM] Firebase Console 에서 메세지 보내기 file 황제낙엽 2023.11.24 0
14 (OMNIBUSCODE/FCM/WEB/JAVA) web push notification (web browser) 샘플 file 황제낙엽 2023.11.23 3
13 (Copilot) Notification Server 의 종류 황제낙엽 2023.11.23 0
12 (OMNIBUSCODE/FCM/WEB/JAVA) web push notification (web browser) 구현 절차 [1] 황제낙엽 2023.11.20 0
11 서비스 워커(service worker) 등록에 대한 LLM 챗봇의 답변 황제낙엽 2023.11.20 0
10 service worker 개발 참고용 링크 모음 황제낙엽 2023.11.10 0
9 service worker 개발을 위한 mozilla 공식 문서 file 황제낙엽 2023.11.10 0
8 service worker 개발을 위한 chrome 공식 문서 file 황제낙엽 2023.11.10 0
7 푸쉬 알림 개발 관련 레퍼런스 황제낙엽 2023.11.09 2
6 [bard] web-push와 fcm 의 차이 황제낙엽 2023.11.08 1
5 Web Push Notification 에 대한 web.dev(크롬) 의 문서 링크 황제낙엽 2023.11.07 0
4 PWA 관련 링크 모음 황제낙엽 2023.11.06 5