400 错误,当我未使用 Firebase 云消息传递提供"to"参数时



我正在尝试从 android 客户端发送下游推送通知,仅用于练习

但是,使用此代码:

private void send() {
    String urlString = "https://fcm.googleapis.com/fcm/send";
    JSONObject jsonObjects = new JSONObject();
    try {
        jsonObjects.put("title", titleET.getText().toString());
        jsonObjects.put("body", textET.getText().toString());
    } catch (JSONException e) {
        e.printStackTrace();
    }
    RequestBody body = RequestBody.create(JSON, jsonObjects.toString());
    Request req = new Request.Builder()
            .url(urlString)
            .post(body)
            .addHeader("Authorization","key=censored")
            .build();
    try {
        Response res = client.newCall(req).execute();
        if (!res.isSuccessful()) {
            throw new UnknownError("Error: " + res.code() + " " + res.body().string());
        }
        Log.d("MainActivity", res.body().toString());
    } catch (IOException e) {
        send();
    }
}

如您所见,我没有做

jsonObjects.put("to","something");

那是因为我不想专门发送给某人,而是发送给整个应用程序。如果我没有在 json 中输入"to",我会得到一个错误。

那么,如何将其发送到我的整个应用程序?

必须始终指定设备令牌、设备组 ID 或主题。没有使用 Firebase 云消息传递发送非定向消息的选项。

您可以通过 Firebase 通知控制台向项目中某个应用的所有用户发送通知。但是,没有公共 API 可以从您自己的代码调用此功能。

相关内容

  • 没有找到相关文章