Java Отправка уведомления FCM missmatchSenderId - PullRequest
0 голосов
/ 27 апреля 2020

Я пытаюсь отправить сообщение pu sh с помощью облачных сообщений firebase и получил следующий ответ:

{"multicast_id": 1297701738321054450, "success": 0, "fail": 1 , "canonical_ids": 0, "results": [{"error": "MismatchSenderId"}]}

Раньше я использовал устаревший ключ сервера, но не смог найти его в консоли firebase

public final static String AUTH_KEY_FCM = "AAAAOQVZkBU:APA91bG2yzutjcqiYw0HhB8D1--fCOyqgFl9w1DfwkAoo8yFRsGj65lMEu22-OsqQEGu8y01bYoxSgfwgkUItHjEjkJEPJAzW3r4GalttiXXXXXXXXXXXXXXXXXXXXXXXXX";
public final static String API_URL_FCM = "https://fcm.googleapis.com/fcm/send";
public final static String DEVICE_ID = "DEVICE_TOKEN_HERE";
public static void main(String[] args) {
    String DeviceIdKey = "TOKEN";
    String authKey = AUTH_KEY_FCM;
    String FMCurl = API_URL_FCM;
    StringBuffer response = new StringBuffer();
    HttpURLConnection conn = null;
    try {
        URL url = new URL(FMCurl);
        conn = (HttpURLConnection) url.openConnection();

        conn.setUseCaches(false);
        conn.setDoInput(true);
        conn.setDoOutput(true);

        conn.setRequestMethod("POST");
        conn.setRequestProperty("Authorization", "key=" + authKey);
        conn.setRequestProperty("Content-Type", "application/json");
        JSONObject data = new JSONObject();
        data.put("to", DeviceIdKey);
        JSONObject info = new JSONObject();
        info.put("title", "test"); // Notification title
        info.put("body", "test"); // Notification body
        info.put("sound", "default"); // Notification body
        info.put("extra_title", "ex1"); // Notification body
        info.put("extra_body", "ex2"); // Notification body
        data.put("data", info);// to be able to control from client side show/hide
        System.out.println(data.toString());
        OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
        wr.write(data.toString());
        wr.flush();
        wr.close();

        int responseCode = conn.getResponseCode();
        System.out.println("Response Code : " + responseCode);

        BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
        String inputLine;

        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }
        in.close();
        System.out.println("Resonse: " + response);

    } catch (Exception e) {
        System.out.println(e);
    } finally {
        if (conn != null) {
            conn.disconnect();
        }

    }



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