首页 > 解决方案 > FCM 发送给特定用户

问题描述

我正在使用云 Firestore。当我使用云消息向应用程序发送推送通知时,一条消息会发送给在应用程序中注册的所有用户(使用身份验证注册的用户)。该应用程序具有登录功能,所以我希望只有登录的用户会收到通知。也就是说,我怎样才能只向特定用户发送通知?

我想通过云消息设置一周中的时间和日期并将其发送到特定设备。现在我什至在 logcat 上标记了令牌,并在云消息传递中对其进行了测试,如图所示。但是,测试无法设置时间和星期几。是否可以在 Fire Store 中执行此操作?还是我必须在代码中设置时间和星期几,如链接所示? 在此处输入图像描述

//FirebaseMessagingService
@Override
public void onNewToken(String token) {
    Log.e("NEW_TOKEN", token);
}

//MainActivity
FirebaseInstanceId.getInstance().getInstanceId()
            .addOnCompleteListener(new OnCompleteListener<InstanceIdResult>() {
                @Override
                public void onComplete(@NonNull Task<InstanceIdResult> task) {
                    if (!task.isSuccessful()) {
                        Log.w(TAG, "getInstanceId failed", task.getException());
                        return;
                    }

                    // Get new Instance ID token
                    String token = task.getResult().getToken();

                    // Log and toast
                    //String msg = getString(R.string.msg_token_fmt, token);
                    Log.d("NEW_TOKEN", token);
                    Toast.makeText(MainActivity.this, token, Toast.LENGTH_SHORT).show();
                }
            });

标签: google-cloud-firestore

解决方案


我只是为了更好的跟踪而写一个答案。

正如@Doug 已经提到的,您可以尝试使用代码示例并自行尝试。

最后,展示您尝试过的内容和代码片段以更好地理解您的问题是一个很好的做法。


推荐阅读