[016] 플러터 (Flutter) Tip - FCM 세팅시 안드로이드 missing default_notification_channel_id 문제 해결법 (백그라운드에서 푸시 헤드업 알림을 받지 못하는 경우)
2024. 12. 24. 13:15ㆍ모바일어플개발/Flutter Tips
반응형
안녕하세요 totally 개발자입니다~
Firebase Cloud Messaing (FCM) 푸시 알림 세팅할 때 안드로이드에서 세팅을 다 완료해준 것 같은데 아래와 같은 오류가 뜨는 경우가 있습니다.
"W/FirebaseMessaging(24847): Missing Default Notification Channel metadata in AndroidManifest. Default value will be used."
이는 AndroidManifest에 default_notification_channel_id 부분이 제대로 인식되지 않기 때문에 나오는 오류인데, 아래처럼 위치를 조정해주면 빠르게 해결할 수 있습니다.
위치를 activity 태그 안에 두는 것이 아니라, application 태그 안에 바로 위치하게 해야 합니다. <meta-data 저 태그가 activity 태그 안에 들어가 있는 경우에는 제대로 인식하지 못해서 동작하지 않습니다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application>
<activity>
... 중략
</activity>
<meta-data
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="default_notification_channel_id"/>
</application>
</manifest>
위와 같이 위치가 조정되신 후 플러터 푸시 알림 초기화 설정을 해줄 때 아래처럼 위에서 android:value에 입력했던 default_notification_channel_id를 그대로 입력해주시면 됩니다.
final AndroidNotificationChannel channel = AndroidNotificationChannel(
"default_notification_channel_id",
"app_name",
description: "details",
importance: Importance.max,
);
해결에 도움이 되었기를 바랍니다. 감사합니다.
반응형