首页 > 解决方案 > 如何在 java Firestore 聊天应用程序中发送 Multible FCM 推送通知

问题描述

现在我已成功一对一发送 FCM 推送通知

问题是:

我不能从一个用户到多个用户 <==

就像群聊中的一个成员发送消息一样,我需要通过消息内容为该组中的每个成员发送通知。

我当前的代码:

private void sendNotification(String receiver, final String username, String senderImage, final String message) {
    noteListener1 = refToken.document(receiver).addSnapshotListener(new EventListener<DocumentSnapshot>() {
        @Override
        public void onEvent(@Nullable DocumentSnapshot documentSnapshot, @Nullable FirebaseFirestoreException e) {
            if (e != null) {
                Log.d(" MyFirebaseMessag", "error" + e);
                return;
            }
            if (documentSnapshot != null && documentSnapshot.exists()) {
                Token token = documentSnapshot.toObject(Token.class);
                Data data = new Data(currentUserEmail, R.mipmap.ic_launcher, username, ": " + message, "New Message",
                        OtherUsersEmail, senderImage, chatType, chatRoomId,membersCanWrite);
                assert token != null;
                Sender sender = new Sender(data, token.getToken());
                apiService.sendNotification(sender)
                        .enqueue(new Callback<MyResponse>() {
                            @Override
                            public void onResponse(@NonNull Call<MyResponse> call, @NonNull Response<MyResponse> response) {
                                if (response.code() == 200) {
                                    assert response.body() != null;
                                    if (response.body().success != 1) {
                                        Toast.makeText(MessagesActivity.this, "Failed!", Toast.LENGTH_SHORT).show();
                                    }
                                } else {
                                    Log.d(" MyFirebaseMessag", "response.code() != 200");
                                }
                            }
                            @Override
                            public void onFailure(@NonNull Call<MyResponse> call, @NonNull Throwable t) {
                            }
                        });
            } else {
                Log.d(" MyFirebaseMessag", "documentSnapshot null");
            }
        }
    });
}

标签: javapush-notificationgoogle-cloud-firestorefirebase-cloud-messagingchat

解决方案


推荐阅读