Problem So senden Sie Geburtstagsbenachrichtigungen mit FireBaseCloudMessaging.Unabe zum Senden einer Benachrichtigung mit FirebaseCloudMessaging
Lösung
ich den folgenden Code implementiert haben, indem Probe Beispiel sucht aber Ich habe Schwierigkeiten beim Benachrichtigung an einen Benutzer oder eine Gruppe von Benutzern in Senden.
Kann mir jemand sagen, wie man eine Benachrichtigung an einen Benutzer sendet?
ich nur an einem Schritt stecke
Unten ist der Code
@RequestMapping(value = "/notification", method = RequestMethod.GET)
public void autoNotification() {
int pageSize=2000;
Page<User> users=null;
int page=0;
List<User> birthdays=null;
do {
users = userService.getAllUsers(new PageRequest(page,pageSize));
birthdays=new ArrayList();
LocalDate currentDate = new LocalDate();
for (User user : users) {
LocalDate dob=user.getDob();
System.out.println("Date of Birth is "+dob);
System.out.println("CurrentDate is "+currentDate.toString());
if(currentDate.equals(dob)){
System.out.println("Yes they match");
birthdays.add(user);
}
}
}while (users.hasNext());
System.out.println(birthdays);
System.out.println(birthdays.size());
fcmService.sendBirthDayNotificationToUser(birthdays);
}
}
public void sendBirthDayNotificationToUser(List<User> users) {
System.out.println("Sending Notification ");
List<String> registrationIds = new ArrayList<>();
for (User user : users) {
registrationIds.add();//What should be set here so that I can send to registered users.
}
Message message = new Message.Builder()
.addData("type", "Default")
.addData("title","Happy Birthday")
.addData("content","Happy Birthday to you")
.build();
sendNotification(registrationIds,message);
}
public void sendNotification(List<String> registrationIds,Message message)
{
Sender sender = new Sender(API_KEY);
try {
MulticastResult result = sender.send(message, registrationIds, 2);
} catch (IOException e) {
LOG.error("IOException", e);
}
}