Firebase는 firebase 콘솔을 사용하고 이전처럼 GCM과 같은 서버를 사용하여 푸시 알림을 발송하는 두 가지 방법을 제공합니다. 이제 Google 서버를 GCM에서 Firebase로 번역 중이며 앱에서 FCM 알림을 받아 표시해야합니다.서버와 함께 보낸 FCM Firebase 알림을 표시하는 방법
나는 공식 firebase 웹 사이트의 구현을 완료하고 샘플 코드를 완료했지만이 부분에 붙어 있습니다. Google 서버가 푸시 알림을 Firebase에 보내고 firebase가 내 앱에 보낼 때 RemoteMessage
매개 변수가있는 onMessageReceived
메서드 알림이 전송됩니다. 메시지가 RemoteMessage 매개 변수 안에 있다는 것을 알고 있지만, 안드로이드 장치 알림 표시 줄에 알림 텍스트를 표시하는 방법을 다루는 방법에 대한 Firebase 공식 문서에서 가이드 또는 샘플 코드를 찾을 수 없습니다.
공식 가이드에서 볼 수 있듯이 RemoteMessage 매개 변수에서 문제없이 메시지를 추출하는 방법은 설명되어 있지 않습니다. 나는 당신이 안으로 검색 할 수 있고 문자열을 찾을 수 있지만 나는 이것을 정확하고 안전하게 다루는 방법에 대한 공식 가이드를 찾고 싶다. 공식 문서에서
는, 당신은 단지이 : 그런 다음 서버에서 당신을 JSON onMessageRecieve을받을 것입니다private void sendNotification(String messageBody) {
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 /* Request code */, intent,
PendingIntent.FLAG_ONE_SHOT);
Uri defaultSoundUri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder notificationBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_main)
.setContentTitle("FCM Message")
.setContentText(messageBody)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setContentIntent(pendingIntent);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0 /* ID of notification */, notificationBuilder.build());
}
확인 [이] (https://stackoverflow.com/questions/45875859/fcm-onmessagereceived-not-calling-android/45880920#45880920) – Maddy
좋은 포스트 나는주의 깊게 읽어 @Maddy – NullPointerException
도와 드리겠습니다 :) – Maddy