Как отобразить значок в push-уведомлениях, передаваемых с использованием Firebase Web Legacy HTTP Server Protocol - PullRequest
0 голосов
/ 01 апреля 2019

У меня развернуто веб-приложение в защищенной среде. Я использую протокол сервера FCM HTTP для запроса сервера приложений FCM на отправку push-уведомлений в список подписчиков. Я хочу показать значок в уведомлении, мой файл значков присутствует на сервере. Как мне это сделать. Пожалуйста, помогите.

Ниже приведен фрагмент кода в java для отправки уведомлений.

private MsgDTO pushNotificationService(String[] tokenArray,
            String serverKey, SendNotificationReqType sendNotificationReqType)
            throws AppException {
        MsgDTO msgDTO = new MsgDTO();
            {
            HttpURLConnection httpcon = (HttpURLConnection) ((new URL(
                    "https://fcm.googleapis.com/fcm/send").openConnection()));
            httpcon.setDoOutput(true);
            httpcon.setRequestProperty("Content-Type", "application/json");
            httpcon.setRequestProperty(
                    "Authorization",
                    "key="+serverKey);
            httpcon.setRequestMethod("POST");
            httpcon.connect();
            LOG.debug("Connected!");

            JSONObject json = new JSONObject();

            json.put("registration_ids", tokenArray);
            JSONObject info = new JSONObject();
            info.put("title", sendNotificationReqType.getTitle()); // Notification title
            info.put("body", sendNotificationReqType.getMessage()); // Notification body
            info.put("icon","*icon url*");                                      // 
            json.put("notification", info);

            LOG.debug("pushNotification : "+json.toString());
            OutputStreamWriter wr = new OutputStreamWriter(
                    httpcon.getOutputStream());
            wr.write(json.toString());
            wr.flush();
            }

Ниже приведен код JS на стороне клиента.

  messaging.onMessage(function(payload) {
    // Customize notification here
    var notificationTitle = payload.notification.title;
    var notificationOptions = {
      body: payload.notification.body,
      icon: '*icon url*'
    };

    return self.registration.showNotification(notificationTitle,
      notificationOptions);
  });

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...