투케이2K

40. (TWOK/LOGIC) [Android] 파이어베이스 FCM Notification 푸시 알림 적용 시 앱 화이트 아이콘 및 채널 생성 분기 처리 로직 본문

투케이2K 로직정리

40. (TWOK/LOGIC) [Android] 파이어베이스 FCM Notification 푸시 알림 적용 시 앱 화이트 아이콘 및 채널 생성 분기 처리 로직

투케이2K 2023. 11. 16. 20:06

[로직 정리]

정리 로직 : Android

상태 : [Android] 파이어베이스 FCM Notification 푸시 알림 적용 시 앱 화이트 아이콘 및 채널 생성 분기 처리 로직

 

[설 명]

 

[1] : build.gradle 파일에서 파이어베이스 FCM 적용 라이브러리 추가


[2] : FirebaseMessagingService 서비스 클래스에서 onMessageReceived 실시간 메시지 수신 부분에서 안드로이드 build 버전 확인


[3] : 안드로이드 빌드 버전이 오레오 이상 인 경우 앱 화이트 아이콘 적용 및 채널 생성 수행

>> 안드로이드 Oreo 이상 버전에서는 푸시 알림 표시에서 흰색 로고 디자인이 된 앱 아이콘 적용이 필요합니다

>> 채널 설정 : 
NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); // [노티피케이션 알림 서비스 객체 생성]
NotificationChannel notificationChannel = new NotificationChannel(Noti_Channel_ID, Noti_Channel_Group_ID, importance); // [알림 채널 설정]
notificationManager.createNotificationChannel(notificationChannel); // [알림 채널 생성 실시]

>> 아이콘 설정 : 
NotificationCompat.Builder builder = new NotificationCompat.Builder(getApplicationContext(), Noti_Channel_ID) // [NotificationCompat.Builder 객체 생성]
		.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.push_white_icon)) // [메시지 박스에 아이콘 표시]
		.setSmallIcon(R.drawable.push_white_icon) // [타이틀 창 부분에 화이트 아이콘]
		.setColor(ContextCompat.getColor(this, R.color.setbg)) // [화이트 아이콘 색상 지정]
		.setWhen(System.currentTimeMillis()) // [알림 표시 시간 설정]
		.setContentText(messagae); // [알림 내용 지정]



[4] : 안드로이드 빌드 버전이 오레오 미만 인 경우 >> 기존, 준비된 앱 로고 아이콘 적용


[5] : 안드로이드 오레오 이상 및 미만 기기 각각 준비 후 FCM 메시지 발송 테스트 수행


[6] : 정상적으로 빌드 버전에 따라서 앱 화이트 아이콘 및 로고 아이콘이 표시되는 것을 확인

 

반응형
Comments